
* Remove paffinity, maffinity, and carto frameworks -- they've been wholly replaced by hwloc. * Move ompi_mpi_init() affinity-setting/checking code down to ORTE. * Update sm, smcuda, wv, and openib components to no longer use carto. Instead, use hwloc data. There are still optimizations possible in the sm/smcuda BTLs (i.e., making multiple mpools). Also, the old carto-based code found out how many NUMA nodes were ''available'' -- not how many were used ''in this job''. The new hwloc-using code computes the same value -- it was not updated to calculate how many NUMA nodes are used ''by this job.'' * Note that I cannot compile the smcuda and wv BTLs -- I ''think'' they're right, but they need to be verified by their owners. * The openib component now does a bunch of stuff to figure out where "near" OpenFabrics devices are. '''THIS IS A CHANGE IN DEFAULT BEHAVIOR!!''' and still needs to be verified by OpenFabrics vendors (I do not have a NUMA machine with an OpenFabrics device that is a non-uniform distance from multiple different NUMA nodes). * Completely rewrite the OMPI_Affinity_str() routine from the "affinity" mpiext extension. This extension now understands hyperthreads; the output format of it has changed a bit to reflect this new information. * Bunches of minor changes around the code base to update names/types from maffinity/paffinity-based names to hwloc-based names. * Add some helper functions into the hwloc base, mainly having to do with the fact that we have the hwloc data reporting ''all'' topology information, but sometimes you really only want the (online | available) data. This commit was SVN r26391.
# Copyright (c) 2010-2012 Cisco Systems, Inc. All rights reserved. Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved. $COPYRIGHT$ Jeff Squyres 19 April 2010, and 16 April 2012 Terry Dontje 18 November 2010 This extension provides a single new function, OMPI_Affinity_str(), that takes a format value and then provides 3 prettyprint strings as output: fmt_type: is an enum that tells OMPI_Affinity_str() whether to use a resource description string or layout string format for ompi_bound and currently_bound output strings. ompi_bound: describes what sockets/cores Open MPI bound this process to (or indicates that Open MPI did not bind this process). currently_bound: describes what sockets/cores this process is currently bound to (or indicates that it is unbound). exists: describes what processors are available in the current host. See OMPI_Affinity_str(3) for more details.