Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Re: Parallel::ForkManager Memory issue

by RichardK (Parson)
on Mar 17, 2013 at 00:24 UTC ( #1023861=note: print w/replies, xml ) Need Help??

in reply to Parallel::ForkManager Memory issue

Fork makes a copy of the current running perl program and then you make your system call. That child has to wait around for the system call to finish which is why you are seeing 16 copies, and you should also see the 16 commands running.

BUT there is no reason to panic, as fork is designed to be efficient as possible and will share pages where possible.

The help says :-

On most systems supporting fork(), great care has gone into making it +extremely efficient (for example, using copy-on-write technology on data pages), making it + the dominant paradigm for multitasking over the last few decades. )

Look at the total memory usage which is displayed on the first few lines of the top output and you'll see that there's plenty of memory really.

Replies are listed 'Best First'.
Re^2: Parallel::ForkManager Memory issue
by hotel (Beadle) on Mar 17, 2013 at 00:46 UTC


    Thanks for the answer. You're right, in addition to 16 Script.pls I also see 16 SomeBinarys running. On the other hand, I do think there's a memory issue going on as I tried to explain in my previous post. The error message I get after running the script for a while is:

    Uncaught exception from user code: Cannot fork: Cannot allocate memory at /path/to/Parallel/ForkManag line 476.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1023861]
and the rats come out to play...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (4)
As of 2018-05-20 22:38 GMT
Find Nodes?
    Voting Booth?