42ec26e640
This commit was SVN r7999.
97 строки
3.9 KiB
TeX
97 строки
3.9 KiB
TeX
% -*- latex -*-
|
|
%
|
|
% Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
% University Research and Technology
|
|
% Corporation. All rights reserved.
|
|
% Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
% of Tennessee Research Foundation. All rights
|
|
% reserved.
|
|
% Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
% University of Stuttgart. All rights reserved.
|
|
% Copyright (c) 2004-2005 The Regents of the University of California.
|
|
% All rights reserved.
|
|
% $COPYRIGHT$
|
|
%
|
|
% Additional copyrights may follow
|
|
%
|
|
% $HEADER$
|
|
%
|
|
|
|
\chapter{Introduction to Open MPI}
|
|
\label{sec:introduction}
|
|
|
|
This chapter provides a summary of the MPI standard and the
|
|
Open MPI implementation of that standard.
|
|
|
|
\section{About MPI}
|
|
|
|
The Message Passing Interface
|
|
(MPI)~\cite{geist96:_mpi2_lyon,mpi_forum93:_mpi}, is a set of API
|
|
functions enabling programmers to write high-performance parallel
|
|
programs that pass messages between processes to make up an
|
|
overall parallel job. MPI is the culmination of decades of research
|
|
in parallel computing, and was created by the MPI Forum~-- an open
|
|
group representing a wide cross-section of industry and academic
|
|
interests. More information, including the both volumes of the
|
|
official MPI standard, can be found at the MPI Forum web
|
|
site.\footnote{\url{http://www.mpi-forum.org/}}
|
|
|
|
MPI is suitable for ``big iron'' parallel machines such as the IBM SP,
|
|
SGI Origin, etc., but it also works in smaller environments such as a
|
|
group of workstations. Since clusters of workstations are readily
|
|
available at many institutions, it has become common to use them as a
|
|
single parallel computing resource running MPI programs.
|
|
%
|
|
The MPI standard was designed to support portability and platform
|
|
independence. As a result, users can enjoy cross-platform development
|
|
capability as well as transparent heterogenous communication. For
|
|
example, MPI codes which have been written on the RS-6000 architecture
|
|
running AIX can be ported to a SPARC architecture running Solaris with
|
|
little or no modifications.
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\section{About Open MPI}
|
|
|
|
Open MPI is a project combining technologies and resources from
|
|
several other projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in
|
|
order to build the best MPI library available. A completely new MPI-2
|
|
compliant implementation, Open MPI offers advantages for system and
|
|
software vendors, application developers, and computer science
|
|
researchers.
|
|
|
|
Features implemented or in short-term development for Open MPI
|
|
include:
|
|
|
|
\begin{itemize}
|
|
\item Full MPI-2 standards conformance
|
|
\item Thread safety and concurrency
|
|
\item Dynamic process spawning
|
|
\item High performance on all platforms
|
|
\item Reliable and fast job management
|
|
\item Network and process fault tolerance
|
|
\item Support data and network heterogeneity
|
|
\item Single library supports all networks
|
|
\item Run-time instrumentation
|
|
\item Many job schedulers supported
|
|
\item Many OS's supported (32 and 64 bit)
|
|
\item Production quality software
|
|
\item Portable and maintainable
|
|
\item Tunable by installers and end-users
|
|
\item Extensive user and installer guides
|
|
\item Internationalized error messages
|
|
\item Component-based design, documented APIs
|
|
\item CPAN-like tool for component management
|
|
\item Active, responsive mailing list
|
|
\item Open source license based on the BSD license
|
|
\end{itemize}
|
|
|
|
The organizations (and newly-combined projects) contributing to Open
|
|
MPI are Indiana University (LAM/MPI), the University of Tennessee
|
|
(FT-MPI), and Los Alamos National Laboratory (LA-MPI). Additional
|
|
collaborators are at Sandia National Laboratories and the University
|
|
of Stuttgart. These developers bring many years of combined experience
|
|
to the project.
|
|
|