Newsgroups: comp.parallel.mpi,comp.answers,news.answers
From: doss@ERC.MsState.Edu (Nathan Doss)
Subject: Message Passing Interface (MPI) FAQ
Summary: This posting contains a list of common questions (and their answers) about the Message Passing Interface standard (also  known as MPI).
Keywords: FAQ, MPI, Parallel & Distributed Computing
Organization: Mississippi State University NSF Engineering Research  Center for Computational Field Simulation
Date: 29 May 1996 16:38:46 GMT
Message-ID: <mpi-faq-5-1996@ERC.MsState.Edu>

Archive-Name: mpi-faq
Posting-Frequency: monthly


  Message Passing Interface (MPI) FAQ
  Nathan Doss, doss@erc.msstate.edu
  Last modified: Wed May 29 11:32:59 1996

  This is the list of Frequently Asked Questions about the MPI (Message
  Passing Interface) standard, a set of library functions for message
  passing.  For a list of the latest changes to this document, see sec-
  tion ``What's New?''.  Comments on the FAQ are welcome.  See question
  ``Formats'' for details of where to get the PostScript, Emacs Info,
  HTML, and text versions of this document.

  1.  Introduction and General Information


  This FAQ attempts to answer basic questions regarding MPI.  Pointers
  to further information on MPI are included for those wishing to know
  more.



  1.1.  What is MPI?

  MPI stands for Message Passing Interface.  The goal of MPI, simply
  stated, is to develop a widely used standard for writing message-
  passing programs. As such the interface attempts to establish a
  practical, portable, efficient, and flexible standard for message
  passing.

  In designing MPI the MPI Forum sought to make use of the most
  attractive features of a number of existing message passing systems,
  rather than selecting one of them and adopting it as the standard.
  Thus, MPI has been strongly influenced by work at the IBM T. J. Watson
  Research Center, Intel's NX/2, Express, nCUBE's Vertex, p4, and
  PARMACS. Other important contributions have come from Zipcode, Chimp,
  PVM, Chameleon, and PICL.

  The main advantages of establishing a message-passing standard are
  portability and ease-of-use. In a distributed memory communication
  environment in which the higher level routines and/or abstractions are
  build upon lower level message passing routines the benefits of
  standardization are particularly apparent.  Furthermore, the
  definition of a message passing standard provides vendors with a
  clearly defined base set of routines that they can implement
  efficiently, or in some cases provide hardware support for, thereby
  enhancing scalability.

  Source: MPI Document -  <http://www.mcs.anl.gov/mpi/mpi-
  report-1.1/mpi-report.html>.



  1.2.  What is the MPI Forum?

  Message Passing Interface Forum

  The Message Passing Interface Forum (MPIF), with participation from
  over 40 organizations, met from November 1992 to April 1994 to discuss
  and define a set of library interface standards for message passing.
  Version 1.0 of the standard was released on May 5, 1994.  Beginning in
  March, 1995, the MPIF reconvened to correct errors and make
  clarifications in the MPI document of May 5, 1994.  These discussions
  resulted in Version 1.1 (dated June, 1995) which contained only minor
  changes from Version 1.0.  MPI-2 meetings began April, 1995 and have
  been meeting every six weeks.  For more information on the MPI-2
  process, see the section on the MPI-2 effort (Section ``MPI-2'').

  The MPIF is not sanctioned or supported by any official standards
  organization.

  Source: MPI Document -  <http://www.mcs.anl.gov/mpi/mpi-
  report-1.1/mpi-report.html>.



  1.3.  A Brief History of MPI

  The MPI standardization effort involved about 60 people from 40
  organizations mainly from the United States and Europe. Most of the
  major vendors of concurrent computers were involved in MPI, along with
  researchers from universities, government laboratories, and industry.
  The standardization process began with the Workshop on Standards for
  Message Passing in a Distributed Memory Environment, sponsored by the
  Center for Research on Parallel Computing, held April 29-30, 1992, in
  Williamsburg, Virginia. At this workshop the basic features essential
  to a standard message passing interface were discussed, and a working
  group established to continue the standardization process.

  A preliminary draft proposal, known as MPI1
  <ftp://netlib2.cs.utk.edu/mpi/mpi1.ps>, was put forward by Dongarra,
  Hempel, Hey, and Walker in November 1992, and a revised version was
  completed in February 1993. MPI1 embodied the main features that were
  identified at the Williamsburg workshop as being necessary in a
  message passing standard. Since MPI1 was primarily intended to promote
  discussion and ``get the ball rolling,'' it focused mainly on point-
  to-point communications. MPI1 brought to the forefront a number of
  important standardization issues, but did not include any collective
  communication routines and was not thread-safe.

  In November 1992, a meeting of the MPI working group was held in
  Minneapolis, at which it was decided to place the standardization
  process on a more formal footing, and to generally adopt the
  procedures and organization of the High Performance Fortran Forum.
  Subcommittees were formed for the major component areas of the
  standard, and an email discussion service established for each. In
  addition, the goal of producing a draft MPI standard by the Fall of
  1993 was set. To achieve this goal the MPI working group met every 6
  weeks for two days throughout the first 9 months of 1993, and
  presented the draft MPI standard at the Supercomputing 93 conference
  in November 1993. These meetings and the email discussion together
  constituted the MPI Forum, membership of which was and continues to be
  open to all members of the high performance computing community.

  Beginning in March, 1995, the MPIF reconvened to correct errors and
  make clarifications in the MPI document of May 5, 1994.  These
  discussions resulted in Version 1.1 (dated June, 1995) which contained
  only minor changes from Version 1.0.  MPI-2 meetings began April, 1995
  and have been meeting every six weeks.  For more information on the
  MPI-2 process, see the section on the MPI-2 effort (Section
  ``MPI-2'').

  Source: MPI Document -  <http://www.mcs.anl.gov/mpi/mpi-
  report-1.1/mpi-report.html>.



  1.4.  The MPI-1 Document

  There are three versions of the MPI document:  version 1.0 (dated May
  5, 1994), version 1.1 (dated June, 1995), and version 1.1 marked to
  show the changes from version 1.0 to version 1.1.


  o  Version 1.1 (June 12, 1995)

     Version 1.1 (June 12, 1995) of the MPI Document is available on-
     line as HTML at <http://www.mcs.anl.gov/mpi/mpi-report-1.1/mpi-
     report.html>.  It is also available as postscript from the
     following locations:

  o  <ftp://ftp.mcs.anl.gov/pub/mpi/mpi-1.jun95/mpi-report.ps>

  o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report1.1.ps>


  o  Version 1.1 (June 12, 1995) with Changes Marked

     A copy of version 1.1 with changes from version 1.0 marked in the
     margins as available from:

  o  <ftp://ftp.mcs.anl.gov/pub/mpi/mpi-1.jun95/mpi-report.marked.ps>

  o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report.marked.ps>


  o  Version 1.0 (May 5, 1994)

     The official postscript version of the document can be obtained
     from netlib at ORNL by sending a mail message to netlib@ornl.gov
     with the message "send mpi-report.ps from mpi".

     It may also be obtained by anonymous ftp from the following sites:

  o  <ftp://netlib2.cs.utk.edu/mpi/mpi-report.ps>

  o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report.ps.Z>

  o  <ftp://info.mcs.anl.gov/pub/mpi/mpi-report.ps.Z>



  2.  Online Resources



  2.1.  WWW Sites




     Argonne National Laboratory <http://www.mcs.anl.gov/mpi>
        The Argonne National Laboratory MPI page is the home site of the
        MPICH implementation and holds the HTML version of the MPI
        standard document. It also has pointers to many other sources of
        MPI-related information.


     Australian National University
        <http://cap.anu.edu.au/cap/projects/mpi/mpi.html>
        The Australian National University site contains information on
        the implementation of MPI on the Fujitsu AP1000 multicomputer
        located at the Australian National University as well as various
        links to other MPI information.


     Mississippi State University <http://www.erc.msstate.edu/mpi/>
        Contains pointers to MPI resources on the Web.  Home site of the
        MPI FAQ.

     Netlib <http://www.netlib.org/mpi/>
        Netlib has a fairly large repository of MPI information. It
        contains such items as the original MPI1 proposal, minutes from
        several of the MPI Forum meetings, as well as the mail archives
        of the MPI discussion mail lists.


     Oak Ridge National Laboratory
        <http://www.epm.ornl.gov/~walker/mpi/>
        Oak Ridge maintains a well-organized resource center for MPI-
        related materials.


     Ohio Supercomputing Center <http://www.osc.edu/lam.html>
        The Ohio Supercomputing Center page is the home location for
        information about LAM, one of the public domain MPI
        implementations. They have also started a series of quick
        tutorials.




  2.2.  Newsgroup


  An MPI-specific newsgroup, comp.parallel.mpi was created by a vote of
  506 to 14.  The RFD for comp.parallel.mpi was originally posted to
  comp.parallel, comp.parallel.pvm, and news.announce.newgroups on April
  4, 1994.  The CFV was issued June 15, 1994.  The voting results, RFD,
  and CFV can be retrieved by anonymous ftp from ftp.erc.msstate.edu as
  pub/mpi/newsgroup/result, pub/mpi/newsgroup/rfd and
  pub/mpi/newsgroup/cfv.



  2.3.  Implementations


  Many of the MPI WWW pages have information about the various MPI
  implementations.  The Ohio Supercomputing Center is attempting to
  maintain a comprehensive list of implementations at
  <http://www.osc.edu/mpi/>.  Information such as the supplier, current
  version, help contact, etc. can be found there.



  3.  MPI-2



  3.1.  MPI-2 Status

  It was decided at the final MPI-1 meeting (Feb. 1994) that plans for
  extending MPI should wait until people have had some experience with
  the current version of MPI.  The MPI Forum held a BOF session at
  Supercomputing '94 to discuss the possibility of an MPI-2 effort.  A
  decision was made to begin MPI-2 meetings in April of 1995.  These
  meetings have been held approximately every six weeks since then.
  Current plans are to have a public draft ready for distribution at
  Supercomputing '96.






  3.2.  What features will be included in MPI-2?


  Currently, the MPI-2 Forum consists of eight subcommittees:

  o  Dynamic Process Management

  o  One-Sided Communication

  o  Extended Collective Operations

  o  External Interfaces

  o  Miscellaneous Topics

  o  Parallel I/O

  o  Realtime Extensions

  o  Language Bindings (C++ and Fortran-90)

     Other subcommittees may appear. The realtime and I/O subcommittees
     are additions that have been added since the MPI-2 process began.
     In MPI-1, the most specific discussions took place on the the
     subcommittee lists, where draft proposals were put together.



  3.3.  What mailing lists are being used for MPI-2?

  If you want to participate in the discussion of a particular MPI-2
  topic, send mail to majordomo@mcs.anl.gov containing:


               subscribe <list-name>  <your email address>




  The current mailing lists include:


               mpi-comm@mcs.anl.gov     MPI Forum discussion list, all comments welcome
               mpi-core@mcs.anl.gov     MPI forum meeting attendees list

               mpi-dynamic    MPI Forum discussion list for dynamic process management
               mpi-1sided     MPI Forum discussion list for one-sided communication
               mpi-coll       MPI Forum discussion list for collective operations
               mpi-external   MPI Forum discussion list for external interfaces
               mpi-bind       MPI Forum discussion list for C++ and Fortran-90 bindings
               mpi-realtime   MPI Forum discussion list for real-time extensions
               mpi-io         MPI Forum discussion list for I/O






  3.4.  Where are the MPI-2 mailing lists archived?

  The MPI-2 mailing lists are archived using hypermail.  These archived
  mailing lists can be retrieved from
  <http://parallel.nas.nasa.gov/MPI-2/>.



  3.5.  Where is the current MPI-2 draft document?

  The MPI-2 draft document is in a constant state of flux. For up-to-
  date information, it's recommended that in addition to viewing the
  draft document, you follow the discussions on the MPI-2 mailing lists
  and consult the minutes of the MPI-2 meetings.  The current draft can
  be retrieved from
  <http://www.cs.wisc.edu/~lederman/mpi2/mpi2-report.ps.Z>


  3.6.  Where can I find out more about MPI-2?


  More information on MPI-2 is available from
  <http://www.erc.msstate.edu/mpi/mpi2.html> and
  <http://www.mcs.anl.gov/Projects/mpi/mpi2/mpi2.html>.  These sites
  contain information about upcoming meetings, minutes from previous
  MPI-2 meetings, etc.




  4.  Administrative Information and Acknowledgments



  4.1.  Recent changes to the FAQ


  o  Changed the format of the FAQ.



  4.2.  Formats in which this FAQ is Available


  This document is available as ASCII text, an Emacs Info document,
  PostScript, and HTML.  It is also available on the world wide web
  (WWW) at <http://www.erc.msstate.edu/mpi/mpi-faq.html> or at
  <http://www.cis.ohio-state.edu/hypertext/faq/usenet/mpi-faq/faq.html>

  The text, Emacs Info, HTML, and Postscript versions are generated
  automatically by Linuxdoc-SGML, a text-formating package based on SGML
  used by Linux Documentation Project.  Information on Linuxdoc-SGML can
  be found at <http://www.informatik.tu-muenchen.de/~schwarz/linuxdoc-
  sgml/>.

  The output files mpi-faq.txt, mpi-faq.info, mpi-faq.html, mpi-faq.ps,
  and mpi-faq.sgml are available at
  <ftp://ftp.erc.msstate.edu/pub/mpi/faq>.  A tarfile (mpi-
  faq.source.tar.gz) also is available which contains all of these
  files.



  4.3.  Where can I get a copy of this FAQ?


  In addition to finding it in those places listed in question
  ``Formats'', the text version is posted monthly to comp.parallel.mpi,
  news.answers, and comp.answers.

  The text version is also available through anonymous ftp from
  <ftp://rtfm.mit.edu/pub/usenet/news.answers/mpi-faq> or those without
  FTP access can send e-mail to mail-server@rtfm.mit.edu with "send
  usenet/news.answers/mpi-faq" in the message body.
  4.4.  Disclaimer and Copyright


  Note that this document is provided as is.  The information in it is
  not warranted to be correct; you use it at your own risk.






























































