home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / mpi-faq < prev    next >
Internet Message Format  |  1999-05-02  |  19KB

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!news.kodak.com!news-nysernet-16.sprintlink.net!news-east1.sprintlink.net!news-peer1.sprintlink.net!news.sprintlink.net!netnews.com!news.idt.net!peerfeed.news.psi.net!uunet!ffx.uu.net!in5.uu.net!finch!nntp.msstate.edu!shane
  2. From: shane@ERC.MsState.Edu (Shane Hebert)
  3. Newsgroups: comp.parallel.mpi,comp.answers,news.answers
  4. Subject: Message Passing Interface (MPI) FAQ
  5. Supersedes: <mpi-faq-4-1999@ERC.MsState.Edu>
  6. Followup-To: poster
  7. Date: 02 May 1999 06:00:36 GMT
  8. Organization: Mississippi State University NSF Engineering Research 
  9.               Center for Computational Field Simulation
  10. Lines: 532
  11. Approved: news-answers-request@MIT.EDU
  12. Expires: 06 Jun 1999 06:00:36 GMT
  13. Message-ID: <mpi-faq-5-1999@ERC.MsState.Edu>
  14. NNTP-Posting-Host: titan.erc.msstate.edu
  15. Summary: This posting contains a list of common questions (and their
  16.          answers) about the Message Passing Interface standard (also 
  17.          known as MPI).
  18. Keywords: FAQ, MPI, Parallel & Distributed Computing
  19. Originator: shane@ERC.MsState.Edu
  20. Xref: senator-bedfellow.mit.edu comp.parallel.mpi:5315 comp.answers:36016 news.answers:157054
  21.  
  22. Archive-Name: mpi-faq
  23. Posting-Frequency: monthly
  24.  
  25.   Message Passing Interface (MPI) FAQ
  26.   Shane Hebert, shane@erc.msstate.edu
  27.   Last modified: Tues Jan 13 13:58:32 1997
  28.  
  29.   This is the list of Frequently Asked Questions about the MPI (Message
  30.   Passing Interface) standard, a set of library functions for message
  31.   passing.  For a list of the latest changes to this document, see sec-
  32.   tion ``What's New?''.  Comments on the FAQ are welcome.  See question
  33.   ``Formats'' for details of where to get the PostScript, Emacs Info,
  34.   HTML, and text versions of this document.
  35.  
  36.   1.  Introduction and General Information
  37.  
  38.  
  39.   This FAQ attempts to answer basic questions regarding MPI.  Pointers
  40.   to further information on MPI are included for those wishing to know
  41.   more.
  42.  
  43.  
  44.  
  45.   1.1.  What is MPI?
  46.  
  47.   MPI stands for Message Passing Interface.  The goal of MPI, simply
  48.   stated, is to develop a widely used standard for writing message-
  49.   passing programs. As such the interface attempts to establish a
  50.   practical, portable, efficient, and flexible standard for message
  51.   passing.
  52.  
  53.   In designing MPI the MPI Forum sought to make use of the most
  54.   attractive features of a number of existing message passing systems,
  55.   rather than selecting one of them and adopting it as the standard.
  56.   Thus, MPI has been strongly influenced by work at the IBM T. J. Watson
  57.   Research Center, Intel's NX/2, Express, nCUBE's Vertex, p4, and
  58.   PARMACS. Other important contributions have come from Zipcode, Chimp,
  59.   PVM, Chameleon, and PICL.
  60.  
  61.   The main advantages of establishing a message-passing standard are
  62.   portability and ease-of-use. In a distributed memory communication
  63.   environment in which the higher level routines and/or abstractions are
  64.   build upon lower level message passing routines the benefits of
  65.   standardization are particularly apparent.  Furthermore, the
  66.   definition of a message passing standard provides vendors with a
  67.   clearly defined base set of routines that they can implement
  68.   efficiently, or in some cases provide hardware support for, thereby
  69.   enhancing scalability.
  70.  
  71.   Source: MPI Document -  <http://www.mpi-
  72.   forum.org/docs/mpi-11-html/mpi-report.html>.
  73.  
  74.  
  75.  
  76.   1.2.  What is the MPI Forum?
  77.  
  78.   Message Passing Interface Forum
  79.  
  80.   The Message Passing Interface Forum (MPIF), with participation from
  81.   over 40 organizations, met from November 1992 to April 1994 to discuss
  82.   and define a set of library interface standards for message passing.
  83.   Version 1.0 of the standard was released on May 5, 1994.  Beginning in
  84.   March, 1995, the MPIF reconvened to correct errors and make
  85.   clarifications in the MPI document of May 5, 1994.  These discussions
  86.   resulted in Version 1.1 (dated June, 1995) which contained only minor
  87.   changes from Version 1.0.  MPI-2 meetings began April, 1995 and met
  88.   every six weeks until April 25, 1997.  At the end of that meeting, the
  89.   entire MPI-2 Document was unanimously accepted by all voting
  90.   institutions.  For more information on the MPI-2 process, see the
  91.   section on the MPI-2 effort (Section ``MPI-2'').
  92.  
  93.   The MPIF is not sanctioned or supported by any official standards
  94.   organization.
  95.  
  96.   Source: MPI Document -  <http://www.mpi-
  97.   forum.org/docs/mpi-11-html/mpi-report.html>.
  98.  
  99.  
  100.  
  101.   1.3.  A Brief History of MPI
  102.  
  103.   The MPI standardization effort involved about 60 people from 40
  104.   organizations mainly from the United States and Europe. Most of the
  105.   major vendors of concurrent computers were involved in MPI, along with
  106.   researchers from universities, government laboratories, and industry.
  107.   The standardization process began with the Workshop on Standards for
  108.   Message Passing in a Distributed Memory Environment, sponsored by the
  109.   Center for Research on Parallel Computing, held April 29-30, 1992, in
  110.   Williamsburg, Virginia. At this workshop the basic features essential
  111.   to a standard message passing interface were discussed, and a working
  112.   group established to continue the standardization process.
  113.  
  114.   A preliminary draft proposal, known as MPI1
  115.   <ftp://netlib2.cs.utk.edu/mpi/mpi1.ps>, was put forward by Dongarra,
  116.   Hempel, Hey, and Walker in November 1992, and a revised version was
  117.   completed in February 1993. MPI1 embodied the main features that were
  118.   identified at the Williamsburg workshop as being necessary in a
  119.   message passing standard. Since MPI1 was primarily intended to promote
  120.   discussion and ``get the ball rolling,'' it focused mainly on point-
  121.   to-point communications. MPI1 brought to the forefront a number of
  122.   important standardization issues, but did not include any collective
  123.   communication routines and was not thread-safe.
  124.  
  125.   In November 1992, a meeting of the MPI working group was held in
  126.   Minneapolis, at which it was decided to place the standardization
  127.   process on a more formal footing, and to generally adopt the
  128.   procedures and organization of the High Performance Fortran Forum.
  129.   Subcommittees were formed for the major component areas of the
  130.   standard, and an email discussion service established for each. In
  131.   addition, the goal of producing a draft MPI standard by the Fall of
  132.   1993 was set. To achieve this goal the MPI working group met every 6
  133.   weeks for two days throughout the first 9 months of 1993, and
  134.   presented the draft MPI standard at the Supercomputing 93 conference
  135.   in November 1993. These meetings and the email discussion together
  136.   constituted the MPI Forum, membership of which was and continues to be
  137.   open to all members of the high performance computing community.
  138.  
  139.   Beginning in March, 1995, the MPIF reconvened to correct errors and
  140.   make clarifications in the MPI document of May 5, 1994.  These
  141.   discussions resulted in Version 1.1 (dated June, 1995) which contained
  142.   only minor changes from Version 1.0.  MPI-2 meetings began April, 1995
  143.   and met every six weeks until April 25, 1997.  At this meeting, the
  144.   MPI-2 Document was unanimously accepted.  For more information on the
  145.   MPI-2 process, see the section on the MPI-2 effort (Section
  146.   ``MPI-2'').
  147.  
  148.   Source: MPI Document -  <http://www.mpi-
  149.   forum.org/docs/mpi-11-html/mpi-report.html>.
  150.  
  151.  
  152.  
  153.   1.4.  The MPI-1 Document
  154.  
  155.   There are two versions of the MPI document:  version 1.0 (dated May 5,
  156.   1994) and version 1.1 (dated June, 1995).
  157.   o  Version 1.1 (June 12, 1995)
  158.  
  159.      Version 1.1 (June 12, 1995) of the MPI Document is available on-
  160.      line as HTML at <http://www.mpi-forum.org/docs/mpi-11-html/mpi-
  161.      report.html>.  It is also available as postscript from the
  162.      following locations:
  163.  
  164.   o  <http://www.mpi-forum.org/docs/mpi-11.ps>
  165.  
  166.   o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report1.1.ps>
  167.  
  168.      A compressed version of the postscript document is available from
  169.  
  170.   o  <http://www.mpi-forum.org/docs/mpi-11.ps.Z>
  171.  
  172.   o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report1.1.ps.Z>
  173.  
  174.  
  175.   o  Version 1.0 (May 5, 1994)
  176.  
  177.      The official postscript version of the document can be obtained
  178.      from netlib at ORNL by sending a mail message to netlib@ornl.gov
  179.      with the message "send mpi-report.ps from mpi".
  180.  
  181.      It may also be obtained by anonymous ftp from the following sites:
  182.  
  183.   o  <ftp://netlib2.cs.utk.edu/mpi/mpi-report.ps>
  184.  
  185.   o  <ftp://ftp.erc.msstate.edu/pub/mpi/docs/mpi-report.ps.Z>
  186.  
  187.   o  <http://www.mpi-forum.org/docs/mpi-10.ps>
  188.  
  189.   o  <http://www.mpi-forum.org/docs/mpi-10.ps.Z>
  190.  
  191.  
  192.  
  193.   2.  Online Resources
  194.  
  195.  
  196.  
  197.   2.1.  WWW Sites
  198.  
  199.  
  200.  
  201.  
  202.      Official Message Passing Interface (MPI) Homepage <http://www.mpi-
  203.         forum.org>
  204.         MPI-Forum.Org is the official homesite of the MPI Forum and
  205.         contains official Forum documents and the MPI Standard documents
  206.         in a variety of formats.
  207.  
  208.  
  209.      Argonne MPI Homepage <http://www.mcs.anl.gov/mpi>
  210.         The Argonne National Lab MPI Homepage has a large collection of
  211.         accumulated information about MPI, including pointers to
  212.         implementations and tutorials by the site maintainers and
  213.         others.
  214.  
  215.  
  216.      Official MPICH Homepage <http://www.mcs.anl.gov/mpich>
  217.         The Official MPICH Homepage has buttons for downloading MPICH in
  218.         various forms, buglists, patchfiles, and other MPICH-related
  219.         stuff.
  220.  
  221.  
  222.  
  223.      Australian National University
  224.         <http://cap.anu.edu.au/cap/projects/mpi/mpi.html>
  225.         The Australian National University site contains information on
  226.         the implementation of MPI on the Fujitsu AP1000 multicomputer
  227.         located at the Australian National University as well as various
  228.         links to other MPI information.
  229.  
  230.  
  231.      Mississippi State University <http://www.erc.msstate.edu/mpi/>
  232.         Contains pointers to MPI resources on the Web, pointers to
  233.         implementations, pointers to tutorials, pointers to libraries,
  234.         and other things.  Home site of the MPI FAQ.
  235.  
  236.  
  237.      MPI-2 Mailing List Archives <http://www.mpi-
  238.         forum.org/archives/mail/mail.html>
  239.         The MPI-Forum web page now contains the mail archive of the
  240.         MPI-2 Forum mailing lists.
  241.  
  242.  
  243.      Netlib <http://www.netlib.org/mpi/>
  244.         Netlib has a fairly large repository of MPI information. It
  245.         contains such items as the original MPI1 proposal and minutes
  246.         from several of the MPI Forum meetings.
  247.  
  248.  
  249.      Oak Ridge National Laboratory
  250.         <http://www.epm.ornl.gov/~walker/mpi/>
  251.         Oak Ridge maintains a well-organized resource center for MPI-
  252.         related materials.
  253.  
  254.  
  255.      Notre Dame LAM <http://www.mpi.nd.edu/lam>
  256.         Notre Dame is now the home location for information about LAM,
  257.         one of the public domain MPI implementations.
  258.  
  259.  
  260.      MPI Validation Suite <http://www.ssd.intel.com/mpi.html>
  261.         Intel's "MPI Validation Suite" is now available to the public.
  262.         To download a copy, please visit the site above.
  263.  
  264.  
  265.  
  266.  
  267.   2.2.  Newsgroup
  268.  
  269.  
  270.   An MPI-specific newsgroup, comp.parallel.mpi was created by a vote of
  271.   506 to 14.  The RFD for comp.parallel.mpi was originally posted to
  272.   comp.parallel, comp.parallel.pvm, and news.announce.newgroups on April
  273.   4, 1994.  The CFV was issued June 15, 1994.  The voting results, RFD,
  274.   and CFV can be retrieved by anonymous ftp from ftp.erc.msstate.edu as
  275.   pub/mpi/newsgroup/result, pub/mpi/newsgroup/rfd and
  276.   pub/mpi/newsgroup/cfv.
  277.  
  278.  
  279.  
  280.   2.3.  Implementations
  281.  
  282.  
  283.   Many of the MPI WWW pages have information about the various MPI
  284.   implementations.  The Ohio Supercomputing Center is attempting to
  285.   maintain a comprehensive list of implementations at
  286.   <http://www.lsc.nd.edu/MPI/>.  Information such as the supplier,
  287.   current version, help contact, etc. can be found there.
  288.  
  289.   3.  MPI-2
  290.  
  291.  
  292.  
  293.   3.1.  MPI-2 Status
  294.  
  295.   It was decided at the final MPI-1 meeting (Feb. 1994) that plans for
  296.   extending MPI should wait until people have had some experience with
  297.   the current version of MPI.  The MPI Forum held a BOF session at
  298.   Supercomputing '94 to discuss the possibility of an MPI-2 effort.  A
  299.   decision was made to begin MPI-2 meetings in April of 1995.  These
  300.   meetings were held approximately every six weeks until October 11,
  301.   1997.  After that meeting, the customary two month public comment
  302.   period was initiated.  At SuperComputing'96 (held in Pittsburgh, PA),
  303.   the document was 'unveiled'.  Meetings began again in January, 1997
  304.   and continued approximately every six weeks until April 25, 1997.  At
  305.   this meeting, the MPI-2 Document was unanimously accepted by the
  306.   voting institutions.  The MPI-2 Document is viewable as HTML
  307.   <http://www.mpi-forum.org/docs/mpi-20-html/mpi2-report.html> or
  308.   downloadable as compressed postscript <http://www.mpi-
  309.   forum.org/docs/mpi-20.ps.Z> or downloadable as uncompressed postscript
  310.   <http://www.mpi-forum.org/docs/mpi-20.ps>.
  311.  
  312.  
  313.  
  314.   3.2.  What features are included in MPI-2?
  315.  
  316.  
  317.   There are several major subsections of functionality addressed in the
  318.   MPI-2 Standard.
  319.  
  320.   o  Miscellaneous Topics
  321.  
  322.   o  Dynamic Process Management
  323.  
  324.   o  One-Sided Communication
  325.  
  326.   o  Extended Collective Operations
  327.  
  328.   o  External Interfaces
  329.  
  330.   o  Parallel I/O
  331.  
  332.   o  Language Bindings (C++ and Fortran-90)
  333.  
  334.      The I/O subcommittee was added after the MPI-2 process began. There
  335.      were several other sections of the MPI-2 Document that were present
  336.      during some form of the process that were removed from the document
  337.      and placed in the Journal of Development (JOD).  This document,
  338.      which is also downloadable from the web site  <http://www.mpi-
  339.      forum.org/docs/mpi-20-jod.ps> was created so that ideas that were
  340.      interesting but either were either of unknown value or weren't
  341.      mature would not be lost and would be documented.  One chapter on
  342.      Real-Time MPI which was placed in the JOD but developed into a
  343.      standards body of its own.  This body has a web page located at
  344.      <http://www.mpirt.org>.
  345.  
  346.  
  347.  
  348.   3.3.  What mailing lists were being used for MPI-2?
  349.  
  350.   If you wanted to participate in the discussion of a particular MPI-2
  351.   topic, send mail to majordomo@mcs.anl.gov containing:
  352.  
  353.  
  354.  
  355.           subscribe <list-name>  <your email address>
  356.  
  357.  
  358.  
  359.  
  360.   The current mailing lists include:
  361.  
  362.  
  363.                mpi-comm@mcs.anl.gov     MPI Forum discussion list, all comments welcome
  364.                mpi-core@mcs.anl.gov     MPI forum meeting attendees list
  365.  
  366.                mpi-dynamic    MPI Forum discussion list for dynamic process management
  367.                mpi-1sided     MPI Forum discussion list for one-sided communication
  368.                mpi-coll       MPI Forum discussion list for collective operations
  369.                mpi-external   MPI Forum discussion list for external interfaces
  370.                mpi-bind       MPI Forum discussion list for C++ and Fortran-90 bindings
  371.                mpi-realtime   MPI Forum discussion list for real-time extensions
  372.                mpi-io         MPI Forum discussion list for I/O
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.   3.4.  Where are the MPI-2 mailing lists archived?
  380.  
  381.   The MPI-2 mailing lists are archived using hypermail.  These archived
  382.   mailing lists can be retrieved from <http://www.mpi-
  383.   forum.org/archives/mail/mail.html>.
  384.  
  385.  
  386.  
  387.   3.5.  Where is the current MPI-2 document?
  388.  
  389.   The MPI-2 Document can be viewed as HTML as <http://www.mpi-
  390.   forum.org/docs/mpi-20-html/mpi2-report.html> or can be downloaded in
  391.   compressed postscript form as <http://www.mpi-
  392.   forum.org/docs/mpi-20.ps.Z> or as uncompressed postscript form as
  393.   <http://www.mpi-forum.org/docs/mpi-20.ps>.
  394.  
  395.  
  396.   3.6.  Where can I find out more about MPI-2?
  397.  
  398.  
  399.   More information on MPI-2 is available from
  400.   <http://www.erc.msstate.edu/mpi/mpi2.html> and <http://www.mpi-
  401.   forum.org>.  These sites contain information about minutes from MPI-2
  402.   meetings, votes, etc.
  403.  
  404.  
  405.  
  406.   3.7.  What is MPI/RT?
  407.  
  408.  
  409.   In the form of the MPI Forums, MPI/RT is a standards effort to design
  410.   an MPI for Real-Time programming.  This Forum meets approximately
  411.   every six weeks to:
  412.  
  413.   o  Create integrated messaging, scheduling, and parallel programming
  414.      API together with syntax and semantics to support the emerging
  415.      computational hierarchies of node architectures and gigabit/s
  416.      networks efficiently.
  417.  
  418.   o  Expand the horizons of performance-portable real-time programming
  419.  
  420.  
  421.   o  Support multiple real-time paradigms
  422.  
  423.   o  Enhance the performance of Messaging over MPI-1 and MPI-2
  424.  
  425.   o  Catalyze a new generation of portable parallel applications that
  426.      require or benefit from the explicit use of time
  427.  
  428.  
  429.   3.8.  Where can I find out more about MPI/RT?
  430.  
  431.   The MPI/RT Forum has a web site  <http://www.mpirt.org>.
  432.  
  433.  
  434.  
  435.   4.  Administrative Information and Acknowledgments
  436.  
  437.  
  438.  
  439.   4.1.  Recent changes to the FAQ
  440.  
  441.  
  442.   o  Added references to MPI/RT.
  443.  
  444.   o  Changed the content of the FAQ to reflect the current status of
  445.      MPI.
  446.  
  447.   o  Changed the format of the FAQ.
  448.  
  449.  
  450.  
  451.   4.2.  Formats in which this FAQ is Available
  452.  
  453.  
  454.   This document is available as ASCII text, an Emacs Info document,
  455.   PostScript, and HTML.  It is also available on the world wide web
  456.   (WWW) at <http://www.erc.msstate.edu/mpi/mpi-faq.html> or at
  457.   <http://www.cis.ohio-state.edu/hypertext/faq/usenet/mpi-faq/faq.html>
  458.  
  459.   The text, Emacs Info, HTML, and Postscript versions are generated
  460.   automatically by Linuxdoc-SGML, a text-formating package based on SGML
  461.   used by Linux Documentation Project.  Information on Linuxdoc-SGML can
  462.   be found at <http://www.informatik.tu-muenchen.de/~schwarz/linuxdoc-
  463.   sgml/>.
  464.  
  465.   The output files mpi-faq.txt, mpi-faq.info, mpi-faq.html, mpi-faq.ps,
  466.   and mpi-faq.sgml are available at
  467.   <ftp://ftp.erc.msstate.edu/pub/mpi/faq>.  A tarfile (mpi-
  468.   faq.source.tar.gz) also is available which contains all of these
  469.   files.
  470.  
  471.  
  472.  
  473.   4.3.  Where can I get a copy of this FAQ?
  474.  
  475.  
  476.   In addition to finding it in those places listed in question
  477.   ``Formats'', the text version is posted monthly to comp.parallel.mpi,
  478.   news.answers, and comp.answers.
  479.  
  480.   The text version is also available through anonymous ftp from
  481.   <ftp://rtfm.mit.edu/pub/usenet/news.answers/mpi-faq> and
  482.   <ftp://ftp.erc.msstate.edu/pub/mpi/faq/mpi-faq.txt> or those without
  483.   FTP access can send e-mail to mail-server@rtfm.mit.edu with "send
  484.   usenet/news.answers/mpi-faq" in the message body.  You can also get a
  485.   postscript verion from <ftp://ftp.erc.msstate.edu/pub/mpi/faq/mpi-
  486.   faq.ps>
  487.   4.4.  Disclaimer and Copyright
  488.  
  489.  
  490.   Note that this document is provided as is.  The information in it is
  491.   not warranted to be correct; you use it at your own risk.
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.