|
|
Linux » Books » Developer »
Message Passing Toolkit (MPT) User's Guide
(document number: 007-3773-012 / published: 2009-10-22)
table of contents | additional info | download find in page
Message Passing
Toolkit (MPT) is a software package that supports interprocess data exchange
for applications that use concurrent, cooperating processes on a single
host or on multiple hosts. Data exchange is done through message passing,
which is the use of library calls to request data delivery from one process
to another or between groups of processes.
The MPT package contains the following components and the appropriate
accompanying documentation: Message Passing Interface (MPI). MPI is a standard specification
for a message passing interface, allowing portable message passing programs
in Fortran and C languages.
The SHMEM programming model. The SHMEM programming model
is a distributed, shared-memory model that consists of a set of SGI proprietary
message-passing library routines. These routines help distributed applications
efficiently transfer data between cooperating processes. The model is
based on multiple processes having separate address spaces, with the ability
for one process to access data in another process' address space without
interrupting the other process. The SHMEM programming model is not a standard
like MPI, so SHMEM applications developed on other vendors' hardware might
or might not work with the SGI SHMEM implementation.
SGI MPT is highly optimized for SGI Altix XE and SGI Altix ICE systems,
as well as, InfiniBand-based Altix 4700 and Altix 450 clusters. SGI hardware
manuals for these systems contain descriptions of their unique architectures.
The SGI ProPack 6 for Linux Service Pack 5 Start Here
lists all current SGI hardware manuals and can be found on the SGI Technical
Publications Library at: http://docs.sgi.com
.
This chapter provides an overview of the MPI software that is included
in the toolkit. This overview includes a description of the MPI-2 Standard
features that are provided, a description of the basic components of MPI,
and a description of the basic features of MPI. Subsequent chapters address
the following topics:
MPI was created by the Message Passing Interface Forum (MPIF). MPIF
is not sanctioned or supported by any official standards organization.
Its goal was to develop a widely used standard for writing message passing
programs.
SGI supports implementations of MPI that are released as part of
the Message Passing Toolkit. The MPI Standard is documented online at
the following address: http://www.mcs.anl.gov/mpi |
MPI-2 Standard Compliance
The SGI
MPI implementation is compliant with the 1.0, 1.1, and 1.2 versions of
the MPI Standard specification. In addition, the following MPI-2 features
(with section numbers from the MPI-2 Standard specification) are provided: | Feature | Section
| | Generalized requests | 4.5.2
| | MPI_Alloc_mem/MPI_Free_mem | 4.11
| | Transfer of handles | 4.12.4
| | MPI-2 replacements for deprecated MPI-1 functions | 4.14.1
| | New Datatypes | 4.15
| | MPI spawn functionality | 5.3
| | MPI-2 one-sided communication routines (put/
get model) | 6
| | Extended Collectives | 7
| | New attribute caching functions | 8.8
| | MPI-2 parallel I/O | 9
| | Extended language bindings for C++ and partial Fortran 90 support
| 10.1, 10.2.4
| | |
|
The MPI library
is provided as a dynamic shared object (DSO) (a file with a name that
ends in .so). The basic components that are necessary
for using MPI are the libmpi.so library, the include
files, and the mpirun command.
Profiling support is included in the libmpi.so
library. Profiling support replaces all MPI_Xxx
prototypes and function names with
PMPI_Xxx entry points.
The SGI MPI implementation
offers a number of significant features that make it the preferred implementation
to use on SGI hardware: Data transfer optimizations for NUMAlink where available,
including single-copy data transfer
Multi-rail InfiniBand suppot to take full advantage of
the multiple InfiniBand fabrics available on SGI Altix ICE systems
Use of hardware fetch operations (fetchops), where available,
for fast synchronization and lower latency for short messages
Optimized MPI-2 one-sided commands
Interoperability with the SHMEM (LIBSMA) programming model
High performance communication support for partitioned
systems via XPMEM
Internet Wide Area RDMA Protocol (iWARP) support to take
advantage of the Remote DMA capabilities of 10-Gigabit Ethernet
Message Passing Toolkit (MPT) User's Guide
(document number: 007-3773-012 / published: 2009-10-22)
table of contents | additional info | download
Front Matter
New Features in This Manual
About This Manual
Chapter 1. Introduction
Chapter 2. Administrating MPT
Chapter 3. Getting Started
Chapter 4. Programming with SGI MPI
Chapter 5. Debugging MPI Applications
Chapter 6. Profiling MPI Applications
Chapter 7. Run-time Tuning
Chapter 8. MPI Performance Profiling
Chapter 9. Troubleshooting and Frequently Asked Questions
Index
home/search |
what's new |
help
|
|
|