Difference between revisions of "PMI-2"

From Mpich
Jump to: navigation, search
Line 1: Line 1:
 
[[Category:Design Documents]]
 
[[Category:Design Documents]]
 
For the formal specification of PMI-2.
 
For the formal specification of PMI-2.
 +
 +
See [[PMI v2 API]] for some discussions about possible designs and some issues.
 +
 +
 +
== Design Requirements ==
 +
(WDG - I find it valuable to list objectives and requirements first.  Here's an initial list.  They can and should be expanded, and the consequences of each understood)
 +
* Scalable - Semantics of operations must permit scalable implementation
 +
* Efficient - Must provide MPI implementation with the information that it needs without requiring potentially expensive steps.
 +
* Complete - Must support all of MPI, including dynamic processes
 +
* Robust - Must handle failures and aborts, including any resources acquired by the MPI application.
 +
* Correct - Must avoid race conditions in the design
 +
* Portable - Must not assume a particular environment such as POSIX

Revision as of 13:04, 30 August 2013

For the formal specification of PMI-2.

See PMI v2 API for some discussions about possible designs and some issues.


Design Requirements

(WDG - I find it valuable to list objectives and requirements first. Here's an initial list. They can and should be expanded, and the consequences of each understood)

  • Scalable - Semantics of operations must permit scalable implementation
  • Efficient - Must provide MPI implementation with the information that it needs without requiring potentially expensive steps.
  • Complete - Must support all of MPI, including dynamic processes
  • Robust - Must handle failures and aborts, including any resources acquired by the MPI application.
  • Correct - Must avoid race conditions in the design
  • Portable - Must not assume a particular environment such as POSIX