in reply to Re^3: Parallel::ForkManager How to wait when 1st 10 Child processe are over out of 100
in thread Parallel::ForkManager How to wait when 1st 10 Child processe are over out of 100

I see it. He is looking at the case where each "job" is identical overall, but the processes in it are unique across the job.

Each job has 10 processes each and the time they process is the starting order (as procX) times 1 second. So the first process in the job takes 1 second and the last process takes 10 seconds. When you run 10 of these jobs at the same time you get more or less process procX of all jobs dropping at the same time. Since new jobs are not launched until a previous job is completely emptied then the process count drops real low until a job is finished.

I think the requirements the OP could could use some improvement, but it does say that "first 10 processes" needs to finish before 10 new are launched.

PS. If this didn't make it clear, just draw out a timeline on paper and track when something starts and ends while keeping track of # concurrent processes.

  • Comment on Re^4: Parallel::ForkManager How to wait when 1st 10 Child processe are over out of 100