There is an FAQ entry on this topic, but it isn't named in a way that would have made it easy for you to find.  https://wiki.mpich.org/mpich/index.php/Frequently_Asked_Questions#Q:_Why_does_my_MPI_program_run_much_slower_when_I_use_more_processes.3F

While ch3:sock is deprecated, I believe the PETSc team uses it on a regular basis, so it should work for common MPI operations.

It seems that libfabric supports efficient waiting (https://ofiwg.github.io/libfabric/v1.10.0/man/fabtests.7.html) but I have no idea if or how this would work inside of MPICH.

MPICH-derived and ABI-compatible Intel MPI supports wait backoff options, although I have never used them.  https://software.intel.com/en-us/forums/intel-clusters-and-hpc-technology/topic/806493

You can install Intel MPI with Apt for zero cost.  https://software.intel.com/content/www/us/en/develop/articles/installing-intel-parallel-studio-xe-runtime-2019-using-apt-repository.html 

Best,

Jeff (who works for Intel)

On Wed, Jun 3, 2020 at 1:57 PM Mccall, Kurt E. (MSFC-EV41) via discuss <discuss@mpich.org> wrote:

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

 

_______________________________________________
discuss mailing list     discuss@mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss


--
Jeff Hammond
jeff.science@gmail.com
http://jeffhammond.github.io/