This is a critical change, with a significant impact on the code base. Basically by moving the binding later in the code after the modex was completed, all memory allocated before (which is all memory allocated during the registration of all OMPI modules) will endue being on the wrong NUMA node (at least by default on Linux). This can have tremendous impact on performance!
On Jan 19, 2012, at 13:38 , rhc_at_[hidden] wrote:
> Author: rhc
> Date: 2012-01-19 13:38:58 EST (Thu, 19 Jan 2012)
> New Revision: 25742
> URL: https://svn.open-mpi.org/trac/ompi/changeset/25742
> Correct ordering in MPI_Init so that we do the modex prior to attempting to bind ourselves in the direct launch case as the modex contains info required for self-binding.
> Text files modified:
> trunk/ompi/runtime/ompi_mpi_init.c | 238 ++++++++++++++++++++--------------------
> 1 files changed, 119 insertions(+), 119 deletions(-)