http://qs321.pair.com?node_id=43546
chipmunk's user image
User since: Nov 28, 2000 at 00:33 UTC (23 years ago)
Last here: Sep 13, 2005 at 20:12 UTC (19 years ago)
Experience: 8925
Level:Parson (16)
Writeups: 928
CPAN ID:CHIPMUNK
Location:Boston.pm
User's localtime: Mar 28, 2024 at 12:52 -05
Scratchpad: View
For this user:Search nodes
Watch for posts by this user

#!perl -w use strict; use Benchmark; Benchmark->import(qw/cmpthese/) if $^V; my $time = shift || 2; my $str = 'StRiNg'; my $var = 'sTrInG'; my %bms = ( reoi => sub { $str =~ /^\Q$var\E\z/oi }, rei => sub { $str =~ /^\Q$var\E\z/i }, lc => sub { lc($str) eq lc($var) }, ); if ($^V) { cmpthese(-$time, \%bms); } else { timethese(-$time, \%bms); } __END__ Benchmark: running lc, rei, reoi, each for at least 2 CPU seconds... lc: 5 wallclock secs ( 2.11 usr + -0.02 sys = 2.09 CPU) @ 56 +4093.78/s (n=1178956) rei: 5 wallclock secs ( 2.01 usr + 0.00 sys = 2.01 CPU) @ 19 +5359.20/s (n=392672) reoi: 5 wallclock secs ( 2.26 usr + 0.02 sys = 2.28 CPU) @ 61 +1101.32/s (n=1393311) Rate rei lc reoi rei 195359/s -- -65% -68% lc 564094/s 189% -- -8% reoi 611101/s 213% 8% --