くだすれPerl(超初心 ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
537:530 07/12/06 14:42:47 Unix系だと、time for i in `seq 1 100 ・・・ とかで、コマンドラインから簡単に実測できるコードなんだけど、それをWinに移植したつもり。 これの結果が、This is perl, v5.8.8 built for MSWin32-x86-multi-thread(Pen4 3.4G mem2G)で、 Benchmark: timing 100 iterations of u_CGI, u_CGIL... u_CGI: 4 wallclock secs ( 0.05 usr + 0.11 sys = 0.16 CPU) @ 641.03/s (n=100) u_CGIL: 2 wallclock secs ( 0.02 usr + 0.06 sys = 0.08 CPU) @ 1282.05/s (n=100) 4.031 s 1.453 s こうなった。wallclockは正しいようだけど、詳細の内容が実態に即してないように思える。 同じコードを、以前Unix(CentOSやFedora)環境でやってみても、同じような結果になる。 (とゆうか、詳細な数値は覚えてないけど、CGIとCGI::Liteが、ほぼ同程度の速度とかレポートされた。) あと、そのLinuxで、>>533のようなベンチを取ったときも、やっぱり push(@log,$_) が最速だった。 あくまでもウチの環境で、でだけど。 @log=<IN>の倍程度は出てた。ファイルの容量、行数が多いほうが、よりpushが早かった。 (そちらのDarwinは、@log=<IN>形式がかなり早いね。) ついでに、>>533のコードに、use Time::HiRes 書き足して、自分の環境でやった結果。 (OS等は同上。ファイルは、1行約200バイト、50万行で総計約100MB。時間かかるので、n=2で測定) Benchmark: timing 2 iterations of op1, op2, op3... op1: 72 wallclock secs (70.59 usr + 1.36 sys = 71.95 CPU) @ 0.03/s (n=2) op2: 35 wallclock secs (33.95 usr + 0.66 sys = 34.61 CPU) @ 0.06/s (n=2) op3: 38 wallclock secs (37.22 usr + 0.73 sys = 37.95 CPU) @ 0.05/s (n=2) op1 = 138.750 s op2 = 49.078 s op3 = 54.547 s
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4297日前に更新/307 KB
担当:undef