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

Re^2: Re-orderable keyed access structure?

by Aristotle (Chancellor)
on Aug 15, 2004 at 01:40 UTC ( #383033=note: print w/replies, xml ) Need Help??

in reply to Re: Re-orderable keyed access structure?
in thread Re-orderable keyed access structure?

Note that anonymous arrays aren't free. Their memory consumption grows alarmingly when you have 6-digit amounts of them. Since you have a fixed amount of two elements per anonymous array, it is advisable to flatten that AoA to two parallel named arrays.

I would not normally be giving this advice; in general, it is better to keep things that belong together, together. With two arrays, you will need to maintain the code to do all operations twice, and the CPU will need to execute all operations twice, as well. It violates the DRY principle.

But as someone who's dealt with 600MB Perl processes, I know the pain of too-deep structures. When you're slinging around huge amounts of data, the extra CPU cycles spent to maintain parallel structures are easily offset by the amount of additional data you'll be able to fit into memory at once (and therefor, going to disk much less frequently (particularly if, goodness forbid, you'd otherwise end up swapping.))

Makeshifts last the longest.

  • Comment on Re^2: Re-orderable keyed access structure?

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2020-09-24 21:13 GMT
Find Nodes?
    Voting Booth?
    If at first I donít succeed, I Ö

    Results (135 votes). Check out past polls.