MPI-2.2 Distributed Graph Topology Page
This page serves as help for using and implementing the MPI-2.2 graph
topology. It hosts reference implementations for MPI implementors as
well as hints and helper libraries for MPI users.
Reference Implementations
This page hosts two reference implementations. The first one can be used
to collect all data to every host with low overheads. This method is
non-scalable, but can be used if an implementation requires to use the
old MPI-1 interface (for example, for optimized graph mappings). The
code is available in:
virtual_graph.c - (6.13 kb) .
The scalable interface is available in:
virtual_graph_scal.cpp - (9.07 kb) .
The MPIParMETIS Library
The MPIParMETIS library can be used to directly convert ParMETIS
partitions into MPI-2.2 remapped topologies.Using this library, the user
can achieve optimized mappings "for free" after the partitioning
step and before the data redistribution/balance phase. See
MPIParMETIS for more information and
source-code download.
References
CCPE |
[1] T. Hoefler, R. Rabenseifner, H. Ritzdorf, B. R. de Supinski, R. Thakur, J. Larsson Träff: |
| The Scalable Process Topology Interface of MPI 2.2
Concurrency and Computation: Practice and Experience. Vol 23, Nr. 4, pages 293-310, John Wiley & Sons, Ltd., ISSN: 1532-0634, Aug. 2010,
|