in reply to
Introduction to Parallel::ForkManager
One caveat that I encountered when using this module was when I was using it along with Net::SSH::Expect to connect to a list of servers and run monitoring commands (checking for failed disks, full filesystems, etc). We use LDAP for authentication, and found that when running my script during the work day when everyone was here, it would have multiple failures connecting to servers, and I could never figure out why. Finally I realized when I ran it at night, it would always have 100% success rate. It turns out (and I had this verified with our LDAP team) that the forked processes would saturate the LDAP servers for requests, and some would end up failing.
I thought it interesting that even though my maxprocs was set to something like 20 or 25, it just couldn't process them fast enough to make ssh happy.