Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^2: map vs for\foreach.

by builat (Monk)
on Mar 11, 2015 at 10:38 UTC ( #1119645=note: print w/replies, xml ) Need Help??


in reply to Re: map vs for\foreach.
in thread map vs for\foreach.

In my case:
foreach(@a){$_+=1;}; real 0m3.756s user 0m3.588s sys 0m0.120s

map{$_+= 1} @a; real 0m5.233s user 0m5.056s sys 0m0.164s

Replies are listed 'Best First'.
Re^3: map vs for\foreach.
by sn1987a (Chaplain) on Mar 11, 2015 at 11:12 UTC

    My previous timings where just from a single run of each program. Using Benchmark and repeating to verify consistent results, I find that foreach is indeed faster.

    use strict; use warnings; use Benchmark; my @a; $a[$_] = int( rand(100) ) for ( 0 .. 10000000 ); cmpthese( -30, { 'foreach' => sub { foreach (@a) { $_ += 1; } }, 'map (assign)' => sub { @a = map { $_ += 1 } @a; }, 'map (bare)' => sub { map { $_ += 1 } @a; }, } );

    Results:

    s/iter map (assign) map (bare) foreach map (assign) 2.06 -- -40% -76% map (bare) 1.23 67% -- -59% foreach 0.501 311% 146% --

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1119645]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (3)
As of 2019-07-24 02:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If you were the first to set foot on the Moon, what would be your epigram?






    Results (32 votes). Check out past polls.

    Notices?