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

Re^3: Efficient matching with accompanying data (${^RE_TRIE_MAXBUF})

by LanX (Bishop)
on Jul 11, 2013 at 13:39 UTC ( #1043727=note: print w/replies, xml ) Need Help??

in reply to Re^2: Efficient matching with accompanying data
in thread Efficient matching with accompanying data

> Given that timing I suspect the trie optimization was not used.

Sure, see also ${^RE_TRIE_MAXBUF} in perlvar

${^RE_TRIE_MAXBUF} Controls how certain regex optimisations are applied an +d how much memory they utilize. This value by default is 6553 +6 which corresponds to a 512kB temporary cache. Set this to a h +igher value to trade memory for speed when matching large alternations. Set it to a lower value if you want the optimisations to be as conservative of memory as possib +le but still occur, and set it to a negative value to prevent +the optimisation and conserve the most memory. Under norma +l situations this variable should be of no interest to yo +u.

Disabling the buffer is also a mean to show the effect of a missing optimization.

It's also much faster to join all strings to be inspected on the LHS and to run the regex just once.

But if only word-boundaries are needed, I suppose hash-lookups can still be faster, of course depending on "density" and "distance" of the searched patterns.

Cheers Rolf

( addicted to the Perl Programming Language)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1043727]
usemodperl mourns the monastery

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (6)
As of 2018-06-19 19:23 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (114 votes). Check out past polls.