Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: Bug when undefining a large hash

by aufflick (Deacon)
on Aug 23, 2008 at 09:59 UTC ( [id://706398]=note: print w/replies, xml ) Need Help??


in reply to Bug when undefining a large hash

FWIW here are my results on MacOSX 10.5 PPC using MacPort's perl 5.8.8:

s/iter With undef Without undef With undef 22.5 -- -9% Without undef 20.6 10% --

And with the system perl 5.8.8:

s/iter With undef Without undef With undef 22.5 -- -8% Without undef 20.7 9% --

So on this platform the undef time is certainly measurable, but exactly an order less than the creation time.

Here is the code I used for the benchmark comparisons:

use strict; use warnings; use Benchmark qw(:all); sub without_undef { # Create a large hash my %hash; my $count = 3_000_000; $hash{$count} = rand(10) while $count--; } sub with_undef { # Create a large hash my %hash; my $count = 3_000_000; $hash{$count} = rand(10) while $count--; # Undefine it undef %hash; } cmpthese(20, { 'Without undef' => \&without_undef, 'With undef' => \&with_undef, });

Replies are listed 'Best First'.
Re^2: Bug when undefining a large hash
by ggvaidya (Pilgrim) on Aug 25, 2008 at 04:45 UTC
    Thanks for the code, I used it to benchmark Perl 5.10.0 on Linux:
    s/iter With undef Without undef With undef 17.2 -- -26% Without undef 12.8 34% --
    which, although a bigger difference than yours, isn't as bad as what oxone reported. This was on:
    Linux 2.6.25 #6 SMP Tue Aug 5 17:42:15 SGT 2008 i686 GNU/Linux This is perl, v5.10.0 built for i486-linux-gnu-thread-multi

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others browsing the Monastery: (4)
As of 2024-06-24 04:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.