- •Contents
- •List of Figures
- •List of Tables
- •Acknowledgments
- •Introduction to MPI
- •Overview and Goals
- •Background of MPI-1.0
- •Background of MPI-1.1, MPI-1.2, and MPI-2.0
- •Background of MPI-1.3 and MPI-2.1
- •Background of MPI-2.2
- •Who Should Use This Standard?
- •What Platforms Are Targets For Implementation?
- •What Is Included In The Standard?
- •What Is Not Included In The Standard?
- •Organization of this Document
- •MPI Terms and Conventions
- •Document Notation
- •Naming Conventions
- •Semantic Terms
- •Data Types
- •Opaque Objects
- •Array Arguments
- •State
- •Named Constants
- •Choice
- •Addresses
- •Language Binding
- •Deprecated Names and Functions
- •Fortran Binding Issues
- •C Binding Issues
- •C++ Binding Issues
- •Functions and Macros
- •Processes
- •Error Handling
- •Implementation Issues
- •Independence of Basic Runtime Routines
- •Interaction with Signals
- •Examples
- •Point-to-Point Communication
- •Introduction
- •Blocking Send and Receive Operations
- •Blocking Send
- •Message Data
- •Message Envelope
- •Blocking Receive
- •Return Status
- •Passing MPI_STATUS_IGNORE for Status
- •Data Type Matching and Data Conversion
- •Type Matching Rules
- •Type MPI_CHARACTER
- •Data Conversion
- •Communication Modes
- •Semantics of Point-to-Point Communication
- •Buffer Allocation and Usage
- •Nonblocking Communication
- •Communication Request Objects
- •Communication Initiation
- •Communication Completion
- •Semantics of Nonblocking Communications
- •Multiple Completions
- •Non-destructive Test of status
- •Probe and Cancel
- •Persistent Communication Requests
- •Send-Receive
- •Null Processes
- •Datatypes
- •Derived Datatypes
- •Type Constructors with Explicit Addresses
- •Datatype Constructors
- •Subarray Datatype Constructor
- •Distributed Array Datatype Constructor
- •Address and Size Functions
- •Lower-Bound and Upper-Bound Markers
- •Extent and Bounds of Datatypes
- •True Extent of Datatypes
- •Commit and Free
- •Duplicating a Datatype
- •Use of General Datatypes in Communication
- •Correct Use of Addresses
- •Decoding a Datatype
- •Examples
- •Pack and Unpack
- •Canonical MPI_PACK and MPI_UNPACK
- •Collective Communication
- •Introduction and Overview
- •Communicator Argument
- •Applying Collective Operations to Intercommunicators
- •Barrier Synchronization
- •Broadcast
- •Example using MPI_BCAST
- •Gather
- •Examples using MPI_GATHER, MPI_GATHERV
- •Scatter
- •Examples using MPI_SCATTER, MPI_SCATTERV
- •Example using MPI_ALLGATHER
- •All-to-All Scatter/Gather
- •Global Reduction Operations
- •Reduce
- •Signed Characters and Reductions
- •MINLOC and MAXLOC
- •All-Reduce
- •Process-local reduction
- •Reduce-Scatter
- •MPI_REDUCE_SCATTER_BLOCK
- •MPI_REDUCE_SCATTER
- •Scan
- •Inclusive Scan
- •Exclusive Scan
- •Example using MPI_SCAN
- •Correctness
- •Introduction
- •Features Needed to Support Libraries
- •MPI's Support for Libraries
- •Basic Concepts
- •Groups
- •Contexts
- •Intra-Communicators
- •Group Management
- •Group Accessors
- •Group Constructors
- •Group Destructors
- •Communicator Management
- •Communicator Accessors
- •Communicator Constructors
- •Communicator Destructors
- •Motivating Examples
- •Current Practice #1
- •Current Practice #2
- •(Approximate) Current Practice #3
- •Example #4
- •Library Example #1
- •Library Example #2
- •Inter-Communication
- •Inter-communicator Accessors
- •Inter-communicator Operations
- •Inter-Communication Examples
- •Caching
- •Functionality
- •Communicators
- •Windows
- •Datatypes
- •Error Class for Invalid Keyval
- •Attributes Example
- •Naming Objects
- •Formalizing the Loosely Synchronous Model
- •Basic Statements
- •Models of Execution
- •Static communicator allocation
- •Dynamic communicator allocation
- •The General case
- •Process Topologies
- •Introduction
- •Virtual Topologies
- •Embedding in MPI
- •Overview of the Functions
- •Topology Constructors
- •Cartesian Constructor
- •Cartesian Convenience Function: MPI_DIMS_CREATE
- •General (Graph) Constructor
- •Distributed (Graph) Constructor
- •Topology Inquiry Functions
- •Cartesian Shift Coordinates
- •Partitioning of Cartesian structures
- •Low-Level Topology Functions
- •An Application Example
- •MPI Environmental Management
- •Implementation Information
- •Version Inquiries
- •Environmental Inquiries
- •Tag Values
- •Host Rank
- •IO Rank
- •Clock Synchronization
- •Memory Allocation
- •Error Handling
- •Error Handlers for Communicators
- •Error Handlers for Windows
- •Error Handlers for Files
- •Freeing Errorhandlers and Retrieving Error Strings
- •Error Codes and Classes
- •Error Classes, Error Codes, and Error Handlers
- •Timers and Synchronization
- •Startup
- •Allowing User Functions at Process Termination
- •Determining Whether MPI Has Finished
- •Portable MPI Process Startup
- •The Info Object
- •Process Creation and Management
- •Introduction
- •The Dynamic Process Model
- •Starting Processes
- •The Runtime Environment
- •Process Manager Interface
- •Processes in MPI
- •Starting Processes and Establishing Communication
- •Reserved Keys
- •Spawn Example
- •Manager-worker Example, Using MPI_COMM_SPAWN.
- •Establishing Communication
- •Names, Addresses, Ports, and All That
- •Server Routines
- •Client Routines
- •Name Publishing
- •Reserved Key Values
- •Client/Server Examples
- •Ocean/Atmosphere - Relies on Name Publishing
- •Simple Client-Server Example.
- •Other Functionality
- •Universe Size
- •Singleton MPI_INIT
- •MPI_APPNUM
- •Releasing Connections
- •Another Way to Establish MPI Communication
- •One-Sided Communications
- •Introduction
- •Initialization
- •Window Creation
- •Window Attributes
- •Communication Calls
- •Examples
- •Accumulate Functions
- •Synchronization Calls
- •Fence
- •General Active Target Synchronization
- •Lock
- •Assertions
- •Examples
- •Error Handling
- •Error Handlers
- •Error Classes
- •Semantics and Correctness
- •Atomicity
- •Progress
- •Registers and Compiler Optimizations
- •External Interfaces
- •Introduction
- •Generalized Requests
- •Examples
- •Associating Information with Status
- •MPI and Threads
- •General
- •Initialization
- •Introduction
- •File Manipulation
- •Opening a File
- •Closing a File
- •Deleting a File
- •Resizing a File
- •Preallocating Space for a File
- •Querying the Size of a File
- •Querying File Parameters
- •File Info
- •Reserved File Hints
- •File Views
- •Data Access
- •Data Access Routines
- •Positioning
- •Synchronism
- •Coordination
- •Data Access Conventions
- •Data Access with Individual File Pointers
- •Data Access with Shared File Pointers
- •Noncollective Operations
- •Collective Operations
- •Seek
- •Split Collective Data Access Routines
- •File Interoperability
- •Datatypes for File Interoperability
- •Extent Callback
- •Datarep Conversion Functions
- •Matching Data Representations
- •Consistency and Semantics
- •File Consistency
- •Random Access vs. Sequential Files
- •Progress
- •Collective File Operations
- •Type Matching
- •Logical vs. Physical File Layout
- •File Size
- •Examples
- •Asynchronous I/O
- •I/O Error Handling
- •I/O Error Classes
- •Examples
- •Subarray Filetype Constructor
- •Requirements
- •Discussion
- •Logic of the Design
- •Examples
- •MPI Library Implementation
- •Systems with Weak Symbols
- •Systems Without Weak Symbols
- •Complications
- •Multiple Counting
- •Linker Oddities
- •Multiple Levels of Interception
- •Deprecated Functions
- •Deprecated since MPI-2.0
- •Deprecated since MPI-2.2
- •Language Bindings
- •Overview
- •Design
- •C++ Classes for MPI
- •Class Member Functions for MPI
- •Semantics
- •C++ Datatypes
- •Communicators
- •Exceptions
- •Mixed-Language Operability
- •Problems With Fortran Bindings for MPI
- •Problems Due to Strong Typing
- •Problems Due to Data Copying and Sequence Association
- •Special Constants
- •Fortran 90 Derived Types
- •A Problem with Register Optimization
- •Basic Fortran Support
- •Extended Fortran Support
- •The mpi Module
- •No Type Mismatch Problems for Subroutines with Choice Arguments
- •Additional Support for Fortran Numeric Intrinsic Types
- •Language Interoperability
- •Introduction
- •Assumptions
- •Initialization
- •Transfer of Handles
- •Status
- •MPI Opaque Objects
- •Datatypes
- •Callback Functions
- •Error Handlers
- •Reduce Operations
- •Addresses
- •Attributes
- •Extra State
- •Constants
- •Interlanguage Communication
- •Language Bindings Summary
- •Groups, Contexts, Communicators, and Caching Fortran Bindings
- •External Interfaces C++ Bindings
- •Change-Log
- •Bibliography
- •Examples Index
- •MPI Declarations Index
- •MPI Function Index
Acknowledgments
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 e ort.
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, Pro ling
Tony Skjellum, Lyndon Clarke, Marc Snir, Richard Little eld, 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.
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 |
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
xvii
1The University of Tennessee and Oak Ridge National Laboratory made the draft avail-
2able by anonymous FTP mail servers and were instrumental in distributing the document.
3The work on the MPI-1 standard was supported in part by ARPA and NSF under grant
4ASC-9310330, the National Science Foundation Science and Technology Center Cooperative
5Agreement No. CCR-8809615, and by the Commission of the European Community through
6
7
8
9
10
11
12
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:
13
14
15
16
17
Ewing Lusk, Convener and Meeting Chair
Steve Huss-Lederman, Editor
Ewing Lusk, Miscellany
18
19
20
21
22
Bill Saphir, Process Creation and Management
Marc Snir, One-Sided Communications
Bill Gropp and Anthony Skjellum, Extended Collective Operations
23
24
25
26
27
Steve Huss-Lederman, External Interfaces
Bill Nitzberg, I/O
Andrew Lumsdaine, Bill Saphir, and Je Squyres, Language Bindings
28
29
Anthony Skjellum and Arkady Kanevsky, Real-Time
The following list includes some of the active participants who attended MPI-2 Forum
30
meetings and are not mentioned above.
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
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 Doe er |
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 |
xviii
John May |
Oliver McBryan |
Brian McCandless |
Tyce McLarty |
Thom McMahon |
Harish Nag |
Nick Nevin |
Jarek Nieplocha |
Ron Old eld |
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 e ort 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
Intel Corporation
International Business Machines
Khoral Research
Lawrence Livermore National Laboratory
Los Alamos National Laboratory
MPI Software Techology, Inc.
Mississippi State University
NEC Corporation
National Aeronautics and Space Administration
National Energy Research Scienti c Computing Center
National Institute of Standards and Technology
National Oceanic and Atmospheric Adminstration
Oak Ridge National Laboratory
Ohio State University
PALLAS GmbH
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
xix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Paci c Northwest National Laboratory
Pratt & Whitney
San Diego Supercomputer Center
Sanders, A Lockheed-Martin Company
Sandia National Laboratories
Schlumberger
Scienti c Computing Associates, Inc.
Silicon Graphics Incorporated
Sky Computers
Sun Microsystems Computer Corporation
Syracuse University
The MITRE Corporation
Thinking Machines Corporation
United States Navy
University of Colorado
University of Denver
University of Houston
University of Illinois
University of Maryland
University of Notre Dame
University of San Fransisco
University of Stuttgart Computing Center
University of Wisconsin
25MPI-2 operated on a very tight budget (in reality, it had no budget when the rst
26meeting was announced). Many institutions helped the MPI-2 e ort by supporting the
27e orts and travel of the members of the MPI Forum. Direct support was given by NSF and
28DARPA under NSF contract CDA-9115428 for travel by U.S. academic participants and
29Esprit under project HPC Standards (21111) for European participants.
30
31
32
MPI-1.3 and MPI-2.1:
33
34 The editors and organizers of the combined documents have been:
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Richard Graham, Convener and Meeting Chair
Jack Dongarra, Steering Committee
Al Geist, Steering Committee
Bill Gropp, Steering Committee
Rainer Keller, Merge of MPI-1.3
Andrew Lumsdaine, Steering Committee
Ewing Lusk, Steering Committee, MPI-1.1-Errata (Oct. 12, 1998) MPI-2.1-Errata Ballots 1, 2 (May 15, 2002)
xx
Rolf Rabenseifner, Steering Committee, Merge of MPI-2.1 and MPI-2.1-Errata Ballots 3, 4 (2008)
All chapters have been revisited to achieve a consistent MPI-2.1 text. Those who served as authors for the necessary modi cations are:
Bill Gropp, Frontmatter, Introduction, and Bibliography
Richard Graham, Point-to-Point Communication
Adam Moody, Collective Communication
Richard Treumann, Groups, Contexts, and Communicators
Jesper Larsson Tr•a , Process Topologies, Info-Object, and One-Sided Communications
George Bosilca, Environmental Management
David Solt, Process Creation and Management
Bronis R. de Supinski, External Interfaces, and Pro ling
Rajeev Thakur, I/O
Je rey M. Squyres, Language Bindings and MPI 2.1 Secretary
Rolf Rabenseifner, Deprecated Functions and Annex Change-Log
Alexander Supalov and Denis Nagorny, Annex Language Bindings
The following list includes some of the active participants who attended MPI-2 Forum meetings and in the e-mail discussions of the errata items and are not mentioned above.
Pavan Balaji |
Purushotham V. Bangalore |
Brian Barrett |
Richard Barrett |
Christian Bell |
Robert Blackmore |
Gil Bloch |
Ron Brightwell |
Je rey Brown |
Darius Buntinas |
Jonathan Carter |
Nathan DeBardeleben |
Terry Dontje |
Gabor Dozsa |
Edric Ellis |
Karl Feind |
Edgar Gabriel |
Patrick Geo ray |
David Gingold |
Dave Goodell |
Erez Haba |
Robert Harrison |
Thomas Herault |
Steve Hodson |
Torsten Hoe er |
Joshua Hursey |
Yann Kalemkarian |
Matthew Koop |
Quincey Koziol |
Sameer Kumar |
Miron Livny |
Kannan Narasimhan |
Mark Pagel |
Avneesh Pant |
Steve Poole |
Howard Pritchard |
Craig Rasmussen |
Hubert Ritzdorf |
Rob Ross |
Tony Skjellum |
Brian Smith |
Vinod Tipparaju |
Jesper Larsson Tr•a |
Keith Underwood |
|
The MPI Forum also acknowledges and appreciates the valuable input from people via e-mail and in person.
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
xxi
1The following institutions supported the MPI-2 e ort through time and travel support
2
3
for the people listed above.
4
5
6
7
8
9
Argonne National Laboratory
Bull
Cisco Systems, Inc.
Cray Inc.
The HDF Group
Hewlett-Packard
10IBM T.J. Watson Research
11Indiana University
12Institut National de Recherche en Informatique et Automatique (INRIA)
13Intel Corporation
14Lawrence Berkeley National Laboratory
15Lawrence Livermore National Laboratory
16Los Alamos National Laboratory
17Mathworks
18Mellanox Technologies
19Microsoft
20Myricom
21NEC Laboratories Europe, NEC Europe Ltd.
22Oak Ridge National Laboratory
23Ohio State University
24Paci c Northwest National Laboratory
25QLogic Corporation
26Sandia National Laboratories
27SiCortex
28Silicon Graphics Incorporated
29Sun Microsystems, Inc.
30University of Alabama at Birmingham
31University of Houston
32University of Illinois at Urbana-Champaign
33University of Stuttgart, High Performance Computing Center Stuttgart (HLRS)
34University of Tennessee, Knoxville
35University of Wisconsin
36
37Funding for the MPI Forum meetings was partially supported by award #CCF-0816909
38from the National Science Foundation.
39In addition, the HDF Group provided travel support for one U.S. academic.
40
41
42
MPI-2.2:
43
44All chapters have been revisited to achieve a consistent MPI-2.2 text. Those who served as
45authors for the necessary modi cations are:
46
47
48
William Gropp, Frontmatter, Introduction, and Bibliography; MPI 2.2 chair.
Richard Graham, Point-to-Point Communication and Datatypes
xxii
Adam Moody, Collective Communication
Torsten Hoe er, Collective Communication and Process Topologies
Richard Treumann, Groups, Contexts, and Communicators
Jesper Larsson Tr•a , Process Topologies, Info-Object and One-Sided Communications
George Bosilca, Datatypes and Environmental Management
David Solt, Process Creation and Management
Bronis R. de Supinski, External Interfaces, and Pro ling
Rajeev Thakur, I/O
Je rey M. Squyres, Language Bindings and MPI 2.2 Secretary
Rolf Rabenseifner, Deprecated Functions, Annex Change-Log, and Annex Language Bindings
Alexander Supalov, Annex Language Bindings
The following list includes some of the active participants who attended MPI-2 Forum meetings and in the e-mail discussions of the errata items and are not mentioned above.
Pavan Balaji |
Purushotham V. Bangalore |
Brian Barrett |
Richard Barrett |
Christian Bell |
Robert Blackmore |
Gil Bloch |
Ron Brightwell |
Greg Bronevetsky |
Je Brown |
Darius Buntinas |
Jonathan Carter |
Nathan DeBardeleben |
Terry Dontje |
Gabor Dozsa |
Edric Ellis |
Karl Feind |
Edgar Gabriel |
Patrick Geo ray |
Johann George |
David Gingold |
David Goodell |
Erez Haba |
Robert Harrison |
Thomas Herault |
Marc-Andre Hermanns |
Steve Hodson |
Joshua Hursey |
Yutaka Ishikawa |
Bin Jia |
Hideyuki Jitsumoto |
Terry Jones |
Yann Kalemkarian |
Ranier Keller |
Matthew Koop |
Quincey Koziol |
Manojkumar Krishnan |
Sameer Kumar |
Miron Livny |
Andrew Lumsdaine |
Miao Luo |
Ewing Lusk |
Timothy I. Mattox |
Kannan Narasimhan |
Mark Pagel |
Avneesh Pant |
Steve Poole |
Howard Pritchard |
Craig Rasmussen |
Hubert Ritzdorf |
Rob Ross |
Martin Schulz |
Pavel Shamis |
Galen Shipman |
Christian Siebert |
Anthony Skjellum |
Brian Smith |
Naoki Sueyasu |
Vinod Tipparaju |
Keith Underwood |
Rolf Vandevaart |
Abhinav Vishnu |
Weikuan Yu |
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.2 e ort through time and travel support for the people listed 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
xxiii
1
2
3
4
5
6
7
8
9
Argonne National Laboratory
Auburn University
Bull
Cisco Systems, Inc.
Cray Inc.
Forschungszentrum J•ulich
Fujitsu
The HDF Group
Hewlett-Packard
10International Business Machines
11Indiana University
12Institut National de Recherche en Informatique et Automatique (INRIA)
13Institute for Advanced Science & Engineering Corporation
14Lawrence Berkeley National Laboratory
15Lawrence Livermore National Laboratory
16Los Alamos National Laboratory
17Mathworks
18Mellanox Technologies
19Microsoft
20Myricom
21NEC Corporation
22Oak Ridge National Laboratory
23Ohio State University
24Paci c Northwest National Laboratory
25QLogic Corporation
26RunTime Computing Solutions, LLC
27Sandia National Laboratories
28SiCortex, Inc.
29Silicon Graphics Inc.
30Sun Microsystems, Inc.
31Tokyo Institute of Technology
32University of Alabama at Birmingham
33University of Houston
34University of Illinois at Urbana-Champaign
35University of Stuttgart, High Performance Computing Center Stuttgart (HLRS)
36University of Tennessee, Knoxville
37University of Tokyo
38University of Wisconsin
39
40Funding for the MPI Forum meetings was partially supported by award #CCF-0816909
41from the National Science Foundation.
42In addition, the HDF Group provided travel support for one U.S. academic.
43
44
45
46
47
48
xxiv