cmpthese(-3, {
cc => sub { 'asdfasdfXasdfasdfXsdfasdfXasdfasdf111XYZ' =~ /(?:[^X]*X)+?YZ/ },
ds => sub { 'asdfasdfXasdfasdfXsdfasdfXasdfasdf111XYZ' =~ /.*?XYZ/ },
});
####
Benchmark: running cc, ds, each for at least 3 CPU seconds...
cc: 4 wallclock secs ( 3.12 usr + 0.00 sys = 3.12 CPU) @ 101652.97/s (n=316649)
ds: 4 wallclock secs ( 3.12 usr + 0.00 sys = 3.12 CPU) @ 243115.24/s (n=759492)
Rate cc ds
cc 101653/s -- -58%
ds 243115/s 139% --
####
C:\>perl -v
This is perl, v5.6.0 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2000, Larry Wall
Binary build 620 provided by ActiveState Tool Corp. http://www.ActiveState.com
Built 18:31:05 Oct 31 2000
####
Benchmark: running cc, ds, each for at least 3 CPU seconds...
cc: 3 wallclock secs ( 3.19 usr + 0.01 sys = 3.20 CPU) @ 116044.62/s (n=371923)
ds: 3 wallclock secs ( 3.13 usr + 0.00 sys = 3.13 CPU) @ 250170.39/s (n=784034)
Rate cc ds
cc 116045/s -- -54%
ds 250170/s 116% --
####
Benchmark: running cc, ds, each for at least 3 CPU seconds...
cc: 2 wallclock secs ( 3.08 usr + 0.01 sys = 3.09 CPU) @ 319288.07/s (n=987558)
ds: 3 wallclock secs ( 3.19 usr + -0.01 sys = 3.18 CPU) @ 292251.18/s (n=930820)
Rate ds cc
ds 292251/s -- -8%
cc 319288/s 9% --