On Fri, Dec 4, 2009 at 08:21, Ralph Castain <r...@open-mpi.org> wrote:
> You used it correctly. Remember, all that cpu number is telling you is the > percentage of use by that process. So bottom line is: we are releasing it as > much as we possibly can, but no other process wants to use the cpu, so we go > ahead and use it. > > If any other process wanted it, then the percentage would drop and the > other proc would take some. > > > I have a quadcore CPU, so when I run with "-np 4" I get this nbock 25699 0.0 0.0 53980 2312 pts/2 S+ 08:23 0:00 /usr/local/openmpi-1.3.4-gcc-4.4.2/bin/mpirun -np 4 --mca mpi_yield_when_idle 1 ./master nbock 25700 71.0 0.0 158964 3876 pts/2 R+ 08:23 0:45 ./master nbock 25701 0.0 0.0 158960 3804 pts/2 S+ 08:23 0:00 ./master nbock 25702 0.0 0.0 158960 3804 pts/2 S+ 08:23 0:00 ./master nbock 25703 0.0 0.0 158960 3804 pts/2 S+ 08:23 0:00 ./master nbock 25704 76.1 0.0 158964 3900 pts/2 R+ 08:23 0:47 ./slave arg1 arg2 nbock 25705 81.3 0.0 158964 3904 pts/2 R+ 08:23 0:51 ./slave arg1 arg2 nbock 25706 79.2 0.0 158964 3904 pts/2 R+ 08:23 0:49 ./slave arg1 arg2 nbock 25707 77.4 0.0 158964 3908 pts/2 R+ 08:23 0:48 ./slave arg1 arg2 When you say "the other proc would take some", how much do you expect it to take? In my case above, the master process does not appear to yield a whole lot. Can I reduce the polling frequency? I know that my slave processes typically run several minutes to hours. nick