I completely neglected to mention that you could also use hwloc (Hardware
Locality), a small utility library for learning topology-kinds of things
(including if you're bound, where you're bound, etc.). Hwloc is a sub-project
of Open MPI:
http://www.open-mpi.org/projects/hwloc/
Open MPI
On the OMPI SVN trunk, we have an "Open MPI extension" call named
OMPI_Affinity_str(). Below is an excerpt from the man page. If this is
desirable, we can probably get it into 1.5.1.
-
NAME
OMPI_Affinity_str - Obtain prettyprint strings of processor affinity
information
You mean via an API of some kind? Not through an MPI call, but you can do it
(though your code will wind up OMPI-specific). Look at the OMPI source code
in opal/mca/paffinity/paffinity.h and you'll see the necessary calls as well
as some macros to help parse the results.
Depending upon what