Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

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

by Danny (Pilgrim)
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 (Curate) 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 making s'mores by the fire in the courtyard of the Monastery: (2)
As of 2024-06-12 16:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.