in reply to Re^2: Why does global match run faster than none global?
in thread Why does global match run faster than none global?

I think we (or at least I) may be chasing noise. I can't replicate the larger 20% number. Additionally I get noise in both directions on multiple runs. My guess would be over enough iterations we'd see a slightly slower /g.

use Benchmark qw[ cmpthese ];; my $str = '123456789'; cmpthese -1, { a=>q[ my ($a,$b) = $str =~ m/(23)[^8]+(8)/g; ], b=>q[ my ($a,$b) = $str =~ m/(23)[^8]+(8)/; ], c=>q[ my ($a) = $str =~ m/(23)/g ], d=>q[ my ($a) = $str =~ m/(23)/; ], }; Rate a b c d a 7047422/s -- -2% -26% -29% b 7218432/s 2% -- -25% -28% c 9578119/s 36% 33% -- -4% d 9960542/s 41% 38% 4% -- Rate a b c d a 7143583/s -- 2% -24% -24% b 7005183/s -2% -- -25% -25% c 9378794/s 31% 34% -- -0% d 9387510/s 31% 34% 0% --