Perlについての質問箱 11箱目
■ このスレッドは過去ログ倉庫に格納されています
0185デフォルトの名無しさん
NGNGuse Benchmark;
@list = qw(hoge geho foo baa);
timethese(undef, {
grep => sub {
$a = (grep {/hoge/} @list)[0];
},
test => sub {
$a = &test(@list);
},
});
sub test { foreach (@_) {return $_ if(/hoge/)} }
で、結果は、
grep: 2 wallclock secs ( 3.11 usr + 0.00 sys = 3.11 CPU) @ 125654.98/s (n=390787)
test: 4 wallclock secs ( 3.09 usr + 0.01 sys = 3.10 CPU) @ 297963.87/s (n=923688)
hogeが最初は不公平すぎるので最後にしてみたがそれでも
grep: 2 wallclock secs ( 3.10 usr + 0.00 sys = 3.10 CPU) @ 126060.32/s (n=390787)
test: 4 wallclock secs ( 3.19 usr + 0.00 sys = 3.19 CPU) @ 205490.60/s (n=655515)
■ このスレッドは過去ログ倉庫に格納されています