[Mpi-forum] Merged Nonblocking Collectives into MPI-3 - Please Review!

Torsten Hoefler htor at cs.indiana.edu
Mon Feb 15 14:15:39 CST 2010

Hello Forum,

I finished my merger of NBC into MPI-3 as we discussed at the last
meeting. I did the merge in the following order:

1) I merged all MPI-2.2 changes into NBC rev. 6 (the version that we
   voted into MPI-3, attached to #109). This was a relatively
   straightforward manual process. 

2) I merged the combined document into the MPI-3 tree. This was much
   more complex than anticipated because the MPI-3 tree is "cleaned up"
   (i.e., many change-macros are gone) and after discussion with Jeff,
   we realized that the script could not be applied to separate
   chapters. This, I performed a manual cleanup and removed the change
   macros in this process. This was not as simple as 1) and seems more

3) I re-read and compared the colored MPI-2.2 document and the MPI-3
   document and committed it as rev. 524.

The ability to highlight the changes between the revisions (particularly
the MPI-2.2 changes) were important for the merger. Bill did a great job
making those extremely helpful for my review. I would suggest that we
use the same or a similar mechanism for MPI-3. Right now, I left all my
(b/w) change-macros (\htorchange, defined at the bottom of mpi-macs.tex)
in the source so that we can see what changed after MPI-2.2. I would
volunteer to transition them to a new mechanism based on whatever we

Please review the document carefully, the changes that I made were not
minor and much more intrusive then all MPI-2.2 changes to the
collectives chapter. It would be good to have some designated careful
reviewers, any volunteers? 

I think we strived to have reviews at the March meeting and I was
supposed to deliver a draft two weeks in advance. Now we have three
weeks left. That is not very long imho, so we might consider to move the
review deadline.

Here are some things that I added which we did not explicitly vote on
(however, they are minor and straight-forward from our past votes):

1) fixed some typos (missing ")" and removed some spaces where 
   appropriate (see svn diff)

2) added MPI_Reduce_scatter to various lists in the introduction of
   Chapter 5 (this is a bug in MPI-2.2)

3) added MPI_Ireduce_scatter_block to the listing of nonblocking
   collectives. Please review the function interface carefully! This was
   not voted on or reviewed yet.

4) added a \label{} in the p2p Chapter 3 to reference nonblocking
   progression semantics (they're referenced nowhere else ;-)).

I put two versions of the document online for easier reviewing. Both
versions have the MPI-2.2 changes highlighted (purple for removals, red
for additions plus the ticket number at the margin) and also the MPI-3
changes (striked out for removals, underlined for additions, limited to
Chapter 5).

MPI-2.2: http://www.unixer.de/sec/mpi-2.2.pdf
MPI-3.0: http://www.unixer.de/sec/mpi-3.0.pdf

It should be sufficient to review Chapter 5 only. Please let me know if
you have any questions or find any problems.

All the Best,

 bash$ :(){ :|:&};: --------------------- http://www.unixer.de/ -----
Torsten Hoefler         | Research Associate
Blue Waters Directorate | University of Illinois
1205 W Clark Street     | Urbana, IL, 61801
NCSA Building           | +01 (217) 244-7736

More information about the mpi-forum mailing list