http://www.perlmonks.org?node_id=1025622


in reply to Re: Curious find while comparing grep, map, and smart match...
in thread Curious find while comparing grep, map, and smart match...

Wow, that, and using word boundaries from tye's hint, made a significant difference!

before:

Benchmark: timing 2500 iterations of grepGen, mapGen, smartGen... grepGen: 23 wallclock secs (22.51 usr + 0.00 sys = 22.51 CPU) @ 11 +1.06/s (n=2500) mapGen: 11 wallclock secs (11.42 usr + 0.00 sys = 11.42 CPU) @ 21 +8.93/s (n=2500) smartGen: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @ 23 +92.34/s (n=2500)

after:

Benchmark: timing 2500 iterations of grepGen, mapGen, smartGen... grepGen: 14 wallclock secs (13.70 usr + 0.00 sys = 13.70 CPU) @ 18 +2.52/s (n=2500) mapGen: 13 wallclock secs (13.57 usr + 0.00 sys = 13.57 CPU) @ 18 +4.20/s (n=2500) smartGen: 2 wallclock secs ( 1.19 usr + 0.00 sys = 1.19 CPU) @ 21 +07.93/s (n=2500)

That really narrowed the gap between grep and map.