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

Re: Optimizing with Caching vs. Parallelizing (MCE::Map)

by Laurent_R (Canon)
on Apr 14, 2020 at 11:16 UTC ( #11115516=note: print w/replies, xml ) Need Help??


in reply to Optimizing with Caching vs. Parallelizing (MCE::Map)

Hi Nick,

for some reason, I somehow missed your very interesting post and the rest of this thread until just now.

In fact, a couple of days after I submitted my solution to the Perl Weekly Challenge and posted my blog post you refer to above, I figured out that my caching strategy was in fact quite inefficient: the program doesn't need to store in the cache the full sequence, it would be enough to just store the number of its items. And that reduces considerably the overhead of the cache.

I did not try this change in Perl so far, but I did it with the Raku solution. Changing the caching strategy made the Raku program 6 times faster. It seems the changes I made are quite similar to what vr suggested. These results are described in another blog that I haven't completed yet, but will be published hopefully soon.

Now that I see that you have brought this up, I feel compelled to implement this change in the Perl version. I don't have time right now, but will come back with my updated version and the relevant timings soon. (Update: see below.)

Thank you anyway for your very interesting post and for the just as interesting discussion it triggered.

  • Comment on Re: Optimizing with Caching vs. Parallelizing (MCE::Map)

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (3)
As of 2020-10-01 01:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If at first I donít succeed, I Ö










    Results (172 votes). Check out past polls.

    Notices?