Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^3: RE on lines read from in-memory scalar is very slow

by Danny (Chaplain)
on Feb 20, 2024 at 10:30 UTC ( [id://11157805]=note: print w/replies, xml ) Need Help??


in reply to Re^2: RE on lines read from in-memory scalar is very slow
in thread RE on lines read from in-memory scalar is very slow

"(I've noticed on other occasions that making one of my APIs handle-friendly by wrapping optional plain scalars with a file handle and then writing the body of the code to read from handles has introduced a performance hit vs. writing the code to split /\n/ and process the strings directly. It would be really cool if they performed equally)"
Can you make a new thread explaining this? I don't understand.
  • Comment on Re^3: RE on lines read from in-memory scalar is very slow

Replies are listed 'Best First'.
Re^4: RE on lines read from in-memory scalar is very slow
by NERDVANA (Priest) on Feb 20, 2024 at 22:03 UTC
    I'm just saying that I've run into cases where
    for (split /\n/, $longstring) { ... }

    ran faster than

    open my $fh, '<', \$longstring; while (<$fh>) { .... }

    In a perfect world, they would run the same speed (or at least really close). The second one is preferred any time there's a case that you want to run it on a huge file and don't want to load $longstring all into memory at once. The second code solves both cases, but if a majority of your cases are to have it already loaded in memory, then maybe you want to write it the first way for performance.

    (If I made a top-level post out of this I'd want to do all the benchmarks and different perl versions, and I'd end up researching the Perl source code and all that, which I don't have time for right now)

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (3)
As of 2025-07-12 07:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.