Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: Lies, Damn Lies and Benchmarks

by Aristotle (Chancellor)
on Mar 24, 2004 at 20:08 UTC ( #339534=note: print w/replies, xml ) Need Help??

in reply to Lies, Damn Lies and Benchmarks

If you run your code under warnings, Perl complains about Odd number of elements in hash assignment. Nothing unexpected. But if you benchmark just one of the versions at a time, there's an interesting nugget to be found.

The list bench is predictable and boring. The screen fills with warnings emitted at a constant rate.

But the shift benchmark exhibits a rather inexplicable pattern. The fact that the warnings eventually stop is easy to understand: modifying the caller's @_ is a sideeffect that persists across iterations. What is really strange is that the warnings are emitted at progressively slower rate.

Why? I don't know. I clawed around in the bowels of briefly but didn't find it very pleasant to read, so I gave up. Maybe someone more motivated than me wants to pick up this riddle.

Makeshifts last the longest.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://339534]
NodeReaper shuffles a deck of punched cards

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (5)
As of 2018-01-18 12:13 GMT
Find Nodes?
    Voting Booth?
    How did you see in the new year?

    Results (211 votes). Check out past polls.