Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: perl -d:DProf (Re: HACKING-ja -> mknmz.in)



寺西です。

SATOH Fumiyasu wrote:
> 
> > この処理にかかっている時間はほんのわずかで、
> > if ($tdata =~ /$token/mg)
> > のマッチングに相当時間がかかっているようでした。
> > そのため、手を加えてもほとんど影響がありませんでした。失礼しました。
> 
> さらに "/o" モディファイアを付けると効果出ませんかね?
> 
>  if ($tdata =~ /$token/mgo)

実は付けると、数パーセント速くなることは確認しましたが、
以下の理由であきらめました。

Namazu では問題ないかもしれませんが、File::MMagic::checktype_data の
後に File::MMagic::addSpecials を呼び出して SPECIAL の内容を更新し、
File::MMagic::checktype_data を再度呼び出すようなプログラムを書いた
場合にまずいような気がします。

それ以外にも根本的に次の場合はどうなるのか理解できていません。

if ($tdata =~ /$token{$type}/mgo)

の場合、$type の値ごとにコンパイルされたものが使われるのか、
最初の $token{$type} の値が使われるのかです。後者であればもちろん
使うわけにはいきません。
# どうも、後者っぽいんですけど...。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E