talexb has asked for the wisdom of the Perl Monks concerning the following question:
I've just started using Parallel::ForkManager in a script, it's pretty cool. The original, serial version of the script does a whole pile of API calls to BigCommerce for some information, and takes about 90 minutes to complete. Most of that time is waiting for the API response from BigCommerce.
The parallelized version with 6 kids takes 45 minutes to run (not bad). The same version with 50 kids (whee!) takes less than 13 minutes to complete. This is great, and the only problem I see is that the load gets up to between 15 and 17. The machine is a venerable IBM box with a Core 2 Duo CPU at 3 GHz, and doesn't seem to be too fussed by all of the processes zipping around.
There's 4G of RAM, and currently I see about 1G free; swap is the same size, and about 1/2M is used -- so just about nothing. The normal load for the machine is less than 1.0 -- right now, with two scripts running, it's about .50.
Is it safe to run with that many kids, under that load?
|
---|