Hi, I've written a Perl program that creates 10 threads (ithreads) and each thread operates on a different part of a large array. The large array is just a file read in before the threads are started. Each thread processes a chunk of the array and then prints the processed output to a shared text file.
I run different instances of this Perl program so I can process multiple files, but oddly all instances of this program go to sleep at the same time and then come back at the same time. At least this is what I see with the 'top' command in Linux. Now, this could be a process management problem on my Linux, but I was wondering if anyone would know any other reason? I'm 99% sure it's not deadlock when the threads for each program write to output files because each program writes to a different output file and yet all the programs go to sleep at the same time. I thought it could be a CPU limit issue on my box, but 'limit's says CPU is unlimited and I also am now running under root with each program reniced to -20. Any ideas would be appreciated.