List of Tables 2.1 Deprecated and removed constructs 的 atatypes corresponding to( Predefine 3.4 MPI datatypes corresponding to C++datatypes···· 345 Predefined 5.1 combiner values returned from MPI_TYPE_GET_ENVELOPE 159 7.1 MPI_COMM_*Function Behavior (in Inter-Communication Mode) 357 9.1 Error class s (Part 1) 9.2 Error classes (Part 2). 11.1 List of MPI Functions that can be called at any time within an MPI program. including prior to MPI initialization and following MPI finalization .... 513 12.1 C tvp es of attribute value argument to MPI_WIN_GET_ATTR and MPI_WIN_SET_ATTR 12.2 Error classes in one-sided communication routines 14.1 Data access routines 65 14.2 "external32"sizes of predefined datatypes 02 14.3 "external32"sizes of optional datatypes 14.4 "external32"sizes of C++datatypes.. l45l/0 Error Classes...·····.. 0 15.1 MPl tool information interface verbosity levels 732 15.2 Constants to identify associations of variables 15.3 MPI datatypes that can be used by the MPI tool information interface 15.4 Scopes for rol variable 15.5 Hiera nt callback routine 156 List of within a callback function m _ERR_NOT_ACCESSIBIE 76 17.1 Removed MPl-1 functions and their replacements 787 17.2 Removed MPI-1 datatypes.The indicated routine may be used for changing the lower and upper bound respectively.····.··..·. 17.3 Removed MPI-1 constants ...... 17.4 Removed MPI-1 callback prototypes and their replacements xxi
List of Tables 2.1 Deprecated and removed constructs . . . . . . . . . . . . . . . . . . . . . . 25 3.1 Predefined MPI datatypes corresponding to Fortran datatypes . . . . . . . . 33 3.2 Predefined MPI datatypes corresponding to C datatypes . . . . . . . . . . . 34 3.3 Predefined MPI datatypes corresponding to both C and Fortran datatypes . 35 3.4 Predefined MPI datatypes corresponding to C++ datatypes . . . . . . . . . 35 5.1 combiner values returned from MPI_TYPE_GET_ENVELOPE . . . . . . . . 159 7.1 MPI_COMM_* Function Behavior (in Inter-Communication Mode) . . . . . 357 9.1 Error classes (Part 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471 9.2 Error classes (Part 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 11.1 List of MPI Functions that can be called at any time within an MPI program, including prior to MPI initialization and following MPI finalization . . . . . 513 12.1 C types of attribute value argument to MPI_WIN_GET_ATTR and MPI_WIN_SET_ATTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 12.2 Error classes in one-sided communication routines . . . . . . . . . . . . . . 610 14.1 Data access routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 14.2 "external32" sizes of predefined datatypes . . . . . . . . . . . . . . . . . . . . 702 14.3 "external32" sizes of optional datatypes . . . . . . . . . . . . . . . . . . . . . 703 14.4 "external32" sizes of C++ datatypes . . . . . . . . . . . . . . . . . . . . . . . 703 14.5 I/O Error Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 15.1 MPI tool information interface verbosity levels . . . . . . . . . . . . . . . . . 732 15.2 Constants to identify associations of variables . . . . . . . . . . . . . . . . . 733 15.3 MPI datatypes that can be used by the MPI tool information interface . . . 736 15.4 Scopes for control variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 15.5 Hierarchy of safety requirement levels for event callback routines . . . . . . 760 15.6 List of MPI functions that when called from within a callback function may not return MPI_T_ERR_NOT_ACCESSIBLE . . . . . . . . . . . . . . . . . . . . 761 15.7 Return codes used in functions of the MPI tool information interface . . . . 779 17.1 Removed MPI-1 functions and their replacements . . . . . . . . . . . . . . . 787 17.2 Removed MPI-1 datatypes. The indicated routine may be used for changing the lower and upper bound respectively. . . . . . . . . . . . . . . . . . . . . 788 17.3 Removed MPI-1 constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788 17.4 Removed MPI-1 callback prototypes and their replacements . . . . . . . . . 788 xxi
12 xxii
19.1 Specific Fortran procedure names and related calling conventions . . . . . . 799 19.2 Occurrence of Fortran optimization problems . . . . . . . . . . . . . . . . . 825 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 xxii
Acknowledgments 3 n historical h MPI-1 ly parts of MPI-2,had distinct groups 10 This document represents the work of many people who have served on the MPI Forum 12 The meetings have been attended by dozens of people from many parts of the world.It is 13 the hard and dedicated work of this group that has led to the MPI standard. 14 The technical development was carried out by subgroups,whose work was reviewed 15 by the full committee.During the period of development of the Message-Passing Interface 16 (MPI),many people helped with this effort. 17 Those who served as primary coordinators in MPl-1.0 and MPI-1.1 are: 18 19 Jack Dongarra,David Walker,Conveners and Meeting Chairs 20 21 Ewing Lusk,Bob Knighten,Minutes .Marc Snir,William Gropp,Ewing Lusk,Point-to-Point Communication 23 24 .Al Geist,Marc Snir,Steve Otto,Collective Communication 25 ·Steve Otto,Editor 2 .Rolf Hempel,Process Topologies 9 Ewing Lusk,Language Binding William Gropp,Environmental Management James Cownie,Profiling Tony Skjellum,Lyndon Clarke,Marc Snir,Richard Littlefield,Mark Sears,Groups, Contexts.and Communicators Steven Huss-Lederman,Initial Implementation Subset The following list includes some of the active participants in the MPI-1.0 and MPl-1.1 process not mentioned above. 4 47 xxiii
Acknowledgments This document is the product of a number of distinct efforts in four distinct phases: one for each of MPI-1, MPI-2, MPI-3, and MPI-4. This section describes these in historical order, starting with MPI-1. Some efforts, particularly parts of MPI-2, had distinct groups of individuals associated with them, and these efforts are detailed separately. This document represents the work of many people who have served on the MPI Forum. The meetings have been attended by dozens of people from many parts of the world. It is the hard and dedicated work of this group that has led to the MPI standard. The technical development was carried out by subgroups, whose work was reviewed by the full committee. During the period of development of the Message-Passing Interface (MPI), many people helped with this effort. Those who served as primary coordinators in MPI-1.0 and MPI-1.1 are: • Jack Dongarra, David Walker, Conveners and Meeting Chairs • Ewing Lusk, Bob Knighten, Minutes • Marc Snir, William Gropp, Ewing Lusk, Point-to-Point Communication • Al Geist, Marc Snir, Steve Otto, Collective Communication • Steve Otto, Editor • Rolf Hempel, Process Topologies • Ewing Lusk, Language Binding • William Gropp, Environmental Management • James Cownie, Profiling • Tony Skjellum, Lyndon Clarke, Marc Snir, Richard Littlefield, Mark Sears, Groups, Contexts, and Communicators • Steven Huss-Lederman, Initial Implementation Subset The following list includes some of the active participants in the MPI-1.0 and MPI-1.1 process not mentioned above. xxiii 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
Ed Anderson Robert Babb Joe Baron Eric Barszcz Scott Berryman Rob Biornson Nathan Doss anne elster Jim Feeney Vince Fernando Sam Fineberg Jon Flower Daniel frye Ian Glendinning Adam Greenberg Robert Harrison Leslie hart Tom Haupt Don Heller Tom Henderson Alex Ho CT Howard Ho Gary Howell John Kapenga James Kohl Susan krauss Bob leary arthur maccabe Peter Madams Alan Mainwaring Oliver MeBryan Phil Mekinlev Charles Mosher Dan nessett Peter pacheco Howard palmer Paul pie Peter Rigsbee Arch Robison Erich Schikuta Ambuj Singh Alan Sussman Robert Tomlinson Robert G.Voigt Dennis Weeks Stephen Wheat Steve Zenith 13 The University of Tennessee and Oak Ridge National Laboratory made the draft avail able by anonymous FTP mail servers and were instrumental in distributing the document The work on the MPl-1 standard was supported in part by ARPA and NSF under grant ASC-9310330,the National Science Foundation Science and Technology Center Cooperative Agreement No.CCR-8809615,and by the Commission of the European Community through Esprit project P6643(PPPE). MPI-1.2 and MPI-2.0: Those who served as primary coordinators in MPI-1.2 and MPI-2.0 are Ewing Lusk,Convener and Meeting Chair .Steve Huss-Lederman,Editor Ewing Lusk,Miscellany .Bill Saphir,Process Creation and Management .Mare Snir,One-Sided Communications .William Gropp and Anthony Skjellum,Extended Collective Operations Steve Huss-Lederman,External Interfaces ·Bill Nitzberg,I/O .Andrew Lumsdaine,Bill Saphir,and Jeffrey M.Squyres,Language Bindings Anthony Skjellum and Arkady Kanevsky,Real-Time The following list includes some of the active participants who attended MPI-2 Forum meetings and are not mentioned above. 45 xxiv
Ed Anderson Robert Babb Joe Baron Eric Barszcz Scott Berryman Rob Bjornson Nathan Doss Anne Elster Jim Feeney Vince Fernando Sam Fineberg Jon Flower Daniel Frye Ian Glendinning Adam Greenberg Robert Harrison Leslie Hart Tom Haupt Don Heller Tom Henderson Alex Ho C.T. Howard Ho Gary Howell John Kapenga James Kohl Susan Krauss Bob Leary Arthur Maccabe Peter Madams Alan Mainwaring Oliver McBryan Phil McKinley Charles Mosher Dan Nessett Peter Pacheco Howard Palmer Paul Pierce Sanjay Ranka Peter Rigsbee Arch Robison Erich Schikuta Ambuj Singh Alan Sussman Robert Tomlinson Robert G. Voigt Dennis Weeks Stephen Wheat Steve Zenith The University of Tennessee and Oak Ridge National Laboratory made the draft available by anonymous FTP mail servers and were instrumental in distributing the document. The work on the MPI-1 standard was supported in part by ARPA and NSF under grant ASC-9310330, the National Science Foundation Science and Technology Center Cooperative Agreement No. CCR-8809615, and by the Commission of the European Community through Esprit project P6643 (PPPE). MPI-1.2 and MPI-2.0: Those who served as primary coordinators in MPI-1.2 and MPI-2.0 are: • Ewing Lusk, Convener and Meeting Chair • Steve Huss-Lederman, Editor • Ewing Lusk, Miscellany • Bill Saphir, Process Creation and Management • Marc Snir, One-Sided Communications • William Gropp and Anthony Skjellum, Extended Collective Operations • Steve Huss-Lederman, External Interfaces • Bill Nitzberg, I/O • Andrew Lumsdaine, Bill Saphir, and Jeffrey M. Squyres, Language Bindings • Anthony Skjellum and Arkady Kanevsky, Real-Time The following list includes some of the active participants who attended MPI-2 Forum meetings and are not mentioned above. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 xxiv
Greg Astfalk Robert Babb Ed Benson Rajesh Bordawekar Pete Bradley Peter Brennan Ron Brightwell Maciei Brodowicz Eric Brunner Greg Burns Margaret Cahir Pang Chen Ying Chen Albert Cheng Yong Cho Joel Clark Lyndon Clarke Laurie Costello Dennis Cottel Jim Cownie 5 Zhengian Cui Suresh Damodaran-Kamal Raia Daoud 6 Judith Devaney David DiNucci Doug doefer Jack Dongarra Terry Dontje Nathan Doss Anne Elster Mark Fallon 8 Karl Feind Sam fineberg Craig Fischberg Stephen Fleischman lan Foster Hubertus Franke Richard frost AlGeist 10 Robert George David Greenberg John Hagedorn Kei harada 11 Leslie Hart Shane Hebert Rolf Hempel Tom Henderson 12 Alex Ho Hans-Christian Hoppe Joefon Jann Terry Jones 13 Karl Kesselman Koichi Konishi Susan kraus Steve kubica 14 Steve landherr Mario Lauria Mark Law Jan leon 15 Llovd Lewins Zivang Lu Bob Madahar Peter madams 16 John May Oliver McBryan Brian mccandless Tyce McLarty 17 Thom memahon Harish Nag Nick nevin Jarek Nieplocha 18 Ron Oldfield Peter Ossadnik Steve Otto Peter Pacheco 19 Yoonho Park Perry partow Pratap Pattnaik Elsie pierce 20 Paul pierce Heidi Poxon Jean-Pierre Prost 21 James Pruyve Peter rigs Tom Robey Anna rounbehler Nobutoshi Sagawa Arindam Saba Eric Salo Darren Sanders Eric sharakan Andrew Sherman 24 Fred Shirle Lance shule A.Gordon Smith Ian stockdale 25 David Tavlo Greg Tensa Marydell Tholburn Dick Treumann Simon Tean Manuel Ujaldon 2 David Walker Jerrell Watts Klaus Wolf Dave Wright 30 The MPI Forum also acknowledges and appreciates the valuable input from people via e-mail and in person The following institutions supported the MPl-2 effort through time and travel support for the people listed above. and N California Institute of Technology Center f or Computi ng Sciences Convex Computer Corporation Cray Research Digital Equipment Corporation Dolphin Interconnect Solutions,Inc Edinburgh Parallel Computing Centre General Electric Company German National Research Center for Information Technology Hewlett-Packard Hitachi Hughes Aircraft Company XXV
Greg Astfalk Robert Babb Ed Benson Rajesh Bordawekar Pete Bradley Peter Brennan Ron Brightwell Maciej Brodowicz Eric Brunner Greg Burns Margaret Cahir Pang Chen Ying Chen Albert Cheng Yong Cho Joel Clark Lyndon Clarke Laurie Costello Dennis Cottel Jim Cownie Zhenqian Cui Suresh Damodaran-Kamal Raja Daoud Judith Devaney David DiNucci Doug Doefler Jack Dongarra Terry Dontje Nathan Doss Anne Elster Mark Fallon Karl Feind Sam Fineberg Craig Fischberg Stephen Fleischman Ian Foster Hubertus Franke Richard Frost Al Geist Robert George David Greenberg John Hagedorn Kei Harada Leslie Hart Shane Hebert Rolf Hempel Tom Henderson Alex Ho Hans-Christian Hoppe Joefon Jann Terry Jones Karl Kesselman Koichi Konishi Susan Kraus Steve Kubica Steve Landherr Mario Lauria Mark Law Juan Leon Lloyd Lewins Ziyang Lu Bob Madahar Peter Madams John May Oliver McBryan Brian McCandless Tyce McLarty Thom McMahon Harish Nag Nick Nevin Jarek Nieplocha Ron Oldfield Peter Ossadnik Steve Otto Peter Pacheco Yoonho Park Perry Partow Pratap Pattnaik Elsie Pierce Paul Pierce Heidi Poxon Jean-Pierre Prost Boris Protopopov James Pruyve Rolf Rabenseifner Joe Rieken Peter Rigsbee Tom Robey Anna Rounbehler Nobutoshi Sagawa Arindam Saha Eric Salo Darren Sanders Eric Sharakan Andrew Sherman Fred Shirley Lance Shuler A. Gordon Smith Ian Stockdale David Taylor Stephen Taylor Greg Tensa Rajeev Thakur Marydell Tholburn Dick Treumann Simon Tsang Manuel Ujaldon David Walker Jerrell Watts Klaus Wolf Parkson Wong Dave Wright The MPI Forum also acknowledges and appreciates the valuable input from people via e-mail and in person. The following institutions supported the MPI-2 effort through time and travel support for the people listed above. Argonne National Laboratory Bolt, Beranek, and Newman California Institute of Technology Center for Computing Sciences Convex Computer Corporation Cray Research Digital Equipment Corporation Dolphin Interconnect Solutions, Inc. Edinburgh Parallel Computing Centre General Electric Company German National Research Center for Information Technology Hewlett-Packard Hitachi Hughes Aircraft Company xxv 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48