LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Nathan Parker (nathanp_at_[hidden])
Date: 2002-09-16 14:09:43


Hello --

I'm using MPI::Request::Waitany() in a while loop to collect data from 4
other nodes. After data from all nodes has been received, the data is
processed, and the Waitany() loop is restarted. I expected that most
this process will sit idle most of the time, waiting for data. Instead,
it appears to spin on the CPU (99% utilization). Is this a known bug?
If I do "mpirun -lamd," the problem goes away, but lamd then uses 15% of
the cpu.

I've included the gprof output below:

  % cumulative self self total
 time seconds seconds calls Ts/call Ts/call name
 27.50 0.11 0.11 _shm_advance
 22.50 0.20 0.09 _shm_proc_read_env
 22.50 0.29 0.09 sread
 10.00 0.33 0.04 _tcp_adv1
 10.00 0.37 0.04 _tcp_proc_read_env
  7.50 0.40 0.03 setsockblk
  0.00 0.40 0.00 632 0.00 0.00
MPI::Comm::Irecv(void *, int, MPI::Datatype const &, int, int) const

  I'm using LAM 6.5.6 (usysv) on Linux 2.4.18-10smp. For this
application, some data comes in via shared memory (same machine), and
some via TCP (different machine). The majority is local at the moment.

 -- Nathan Parker
    Lincoln Laboratory / MIT

_______________________________________________
This list is archived at http://www.lam-mpi.org/MailArchives/lam/