You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've recently been profiling some OpenMPI-based code and I've noticed that every call to a test function (e.g. MPI_Testsome) executes a memory fence via opal_atomic_mb.
I understand why you might want this in multi-threaded code (either via progress threads or multi-threaded user code), or even in light of the new partitioned collectives in MPI-4.0.
However, OpenMPI issues this instruction even if MPI is initialised with MPI_THREAD_SINGLE or if progress threads are disabled (i.e. OPAL_ENABLE_PROGRESS_THREADS == 0).