Aside from pre-sizing your hashes as mentioned by
derby above, there really isn't much you can do in perl to make hash-access faster. That's different in C++ and Java because those languages implement hashes in C++ and Java respectively. Perl hashes are implemented in (already pretty efficient) C.
You could - maybe - implement a more efficient hashing algorithm in C that's tailored to your application, but I would be very surprised if it made any significant dent in your application run time.
In my experience, if you want serious speed ups, and your program speed is really limited by CPU time (instead of IO speed) and your algorithm is already efficient (see also What is "Schwarzian Transform" (aka Schwartzian), for example), you can gain a lot from porting your heavy lifting inner loops over to C. And you probably still will use perl's hashes then.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.