1
1
openmpi/opal/mca/paffinity/base
Jeff Squyres a89dc623b0 Brice Goglin noticed that mpi_paffinity_alone didn't seem to be doing
anything for non-MPI apps.  Oops!  (But before you freak out, gentle
reader, note that mpi_paffinity_alone for MPI apps still worked fine)
When we made the switchover somewhere in the 1.3 series to have the
orted's do processor binding, then stuff like:

  mpirun --mca mpi_paffinity_alone 1 hostname

should have bound hostname to processor 0.  But it didn't because of a
subtle startup ordering issue: the MCA param registration for
opal_paffinity_alone was in the paffinity base (vs. being in
opal/runtime/opal_params.c), but it didn't actually get registered
until after the global variable opal_paffinity_alone was checked to
see if we wanted old-style affinity bindings.  Oops.

However, for MPI apps, even though the orted didn't do the binding,
ompi_mpi_init() would notice that opal_paffinity_alone was set, yet
the process didn't seem to be bound.  So the MPI process would bind
itself (this was done to support the running-without-orteds
scenarios).  Hence, MPI apps still obeyed mpi_paffinity_alone
semantics.

But note that the error described above caused the new mpirun switch
--report-bindings to not work with mpi_paffinity_alone=1, meaning that
the orted would not report the bindings when mpi_paffinity_alone was
set to 1 (it ''did'' correctly report bindings if you used
--bind-to-core or one of the other binding options).

This commit separates out the paffinity base MCA param registration
into a small function that can be called at the Right place during the
startup sequence.

This commit was SVN r22602.
2010-02-10 22:32:00 +00:00
..
base.h Brice Goglin noticed that mpi_paffinity_alone didn't seem to be doing 2010-02-10 22:32:00 +00:00
Makefile.am Few updates due to RMAPS rank_file component changes 2008-03-30 11:52:11 +00:00
paffinity_base_close.c * Fix a truckload of Cisco copyrights to be the same as the rest of 2009-01-11 02:30:00 +00:00
paffinity_base_open.c Brice Goglin noticed that mpi_paffinity_alone didn't seem to be doing 2010-02-10 22:32:00 +00:00
paffinity_base_select.c ... Delayed due to notifier commits earlier this day ... 2009-04-29 01:32:14 +00:00
paffinity_base_service.c When someone specifies a rank-file slot-list of N:*, stop the loop at the proper place (we were going through the loop one too many times). 2009-07-23 17:51:15 +00:00
paffinity_base_wrappers.c The system headers are supposed to be protected by #ifdef and not by #if. 2009-07-16 18:27:33 +00:00