Thanks Hui. I will use MPI_Iprobe + MPI_Test.
Kurt
From: Zhou, Hui <zhouh@anl.gov>
Sent: Thursday, June 4, 2020 10:27 AM
To: discuss@mpich.org
Cc: Mccall, Kurt E. (MSFC-EV41) <kurt.e.mccall@nasa.gov>
Subject: [EXTERNAL] Re: [mpich-discuss] Controlling MPICH busy-wait behavior
There is no such option for MPICH. If you configure with ch3:sock, which waits for the progress with blocking `poll`, I think it will not hog the CPU by default, for other configurations, it always busy waits.
Is using MPI_Iprobe + MPI_Test an option for you? If your process can afford latency, then you can control your own sleep cycles between MPI_Test. If MPICH will implement such non-busy-wait option, internally it will just do the same test-sleep cycles.
--
Hui Zhou
From: "Mccall, Kurt E. (MSFC-EV41) via discuss" <discuss@mpich.org>
Reply-To: "discuss@mpich.org" <discuss@mpich.org>
Date: Wednesday, June 3, 2020 at 3:57 PM
To: "discuss@mpich.org" <discuss@mpich.org>
Cc: "Mccall, Kurt E. (MSFC-EV41)" <kurt.e.mccall@nasa.gov>
Subject: [mpich-discuss] Controlling MPICH busy-wait behavior
Is there a means to tell MPICH to yield to other processes when performing a busy-wait for incoming messages? The page below distinguishes between “aggressive busy-wait” and “degraded busy-wait”, where the latter is what I’d like to try.
https://stackoverflow.com/questions/14560714/probe-seems-to-consume-the-cpu/14562840#14562840
Thanks,
Kurt