[mpich-discuss] MPI polling question with MPI_Iprobe
Eric Hui
Eric.Hui at ggy.com
Wed Sep 21 15:01:08 CDT 2011
Hi Pavan,
I used "smpd -set intermode_channel sock" and then restart the "MPICH2 Process Manager" windows service. The application is still using up the entire CPU core in the MPI_Probe call.
Do I have to rebuild MPICH2 with the configuration parameters that you suggested in order to use this blocking mode?
Eric Hui
GGY AXIS
416-2503448
Eric.Hui at ggy.com
-----Original Message-----
From: Pavan Balaji [mailto:balaji at mcs.anl.gov]
Sent: September-21-11 3:25 PM
To: mpich-discuss at mcs.anl.gov
Cc: Eric Hui
Subject: Re: [mpich-discuss] MPI polling question with MPI_Iprobe
Hi Eric,
On 09/21/2011 01:56 PM, Eric Hui wrote:
> I found that there is MPI_Probe and MPI_Iprobe. It seems like both of
> these functions are doing polling instead of getting notification when
> there is message arrived, so it is taking up 100% of the CPU power
> even when it is just idling to wait for message.
Most MPI implementations are optimized for latency, so they poll frequently to ensure that. You can configure MPICH2 with --with-device=ch3:sock to get "blocking mode" (meaning MPI will sleep when there is nothing to do), but this is very implementation specific.
If you configure MPICH2 differently or use a different MPI implementation, you might go back to the "polling mode" which you are currently seeing.
-- Pavan
--
Pavan Balaji
http://www.mcs.anl.gov/~balaji
More information about the mpich-discuss
mailing list