手動ベンチ
2008/02/25 (Mon) 07:40:50
紅堂幹人

紅堂幹人Perlで色々と比較。とにかく早い方が正義よね。Perl…ElDorado Chat-NEOのフレーム部分とログ部分の2つのファイルでBenchmarkとHiResで計ってみた。

Package+global呼び出しだけでやった場合@HiResとBenchmarkだけReadonly使用 index.cgi
 ProcessTime:0.17553msec
 time: 0.130usr+0.040sys=0.170.
Readonlyモジュール+Package globalでやった場合 index.cgi
 ProcessTime:0.18050msec
 time: 0.160usr+0.020sys=0.180.
constantプラグマ+package strictでやった場合 index.cgi
 ProcessTime:0.29358msec
 time: 0.220usr+0.050sys=0.270.

Package+global呼び出しだけでやった場合@HiResとBenchmarkだけReadonly使用 log.cgi
 ProcessTime:0.01767msec
 time: 0.010usr+0.000sys=0.010.
Readonlyモジュール+Package globalでやった場合 log.cgi
 ProcessTime:0.01821msec
 time: 0.010usr+0.010sys=0.020.
constantプラグマ+package strictでやった場合 log.cgi
 ProcessTime:0.04647msec
 time: 0.030usr+0.020sys=0.050.

 こんな具合。constantは遅いし重い。myで局所化だけだとBechmarkやHiResで値がぶれたりするから、適時Readonly使いつつやる。設置設定を別ファイルでやる形式で作るなら仕方がないのかな。1ファイルだけで設定も全てやるならReadonly myできるから違う結果になるかも? PHPと比較したら、index.php@index.cgiではPHPの方が早くて、loh.php@log.cgiではPerlの方が早いスコア出てるという。どういう書き方が早く動くかってコツコツと調べていくしかないんよね。

この記事のURL
http://galle.oe-p.com/cgi-bin/diary_01.cgi?category=diary&anchor=080225
カテゴリ:日記 / この記事のURL / コメント(0)