Hello dear all,
we would like to raise an issue that has been discussed sometime before:
would the community make use of one single MPI-1.2 standards document?
We have found this to be worthwhile for our students, but also, to give a
single position (page&Line) in the MPI-Standard, in case an error related to
MPI-1.2 is reported in Error-checking tools (and not "MPI1, but with
clarification in the MPI2-specification on page X").
Being at it, it would be nice to move to an official PDF-document with links
to the calls, sections and references (using latex2e and hyperref).
As a start, I would like to suggest the following document (changes are marked
with macros for \CHANGE, \INTO, \ADD and \DELETE, the latter text being \it}
Please, as *many* eyes as possible should check the correctness of the
how&where in the attached changes-file and the mpi-report.pdf and send
updates.
I would volunteer to document and include updates as suggested and do the
final cleanup.
With best regards,
Rainer
PS:
There are still some open issues with:
- Fig4.1, which does not have Boundary Boxes (and is not included in the PDF)
- The links (of the index) are off by 9 pages at the moment...
------------------------------------------------------------------------
- 3.1: Integrated MPI_Get_version into Environmental Section, Inquiries.
(changes to appLang.tex and inquiry.tex)
- 3.2.1: MPI_INITIALIZED:
Changed: "is the only function that may be called before" to
"It is one of the few routines that "
- 3.2.2: Include clarification of MPI_FINALIZE
Replaced first sentence, added examples
- 3.2.3 Clarification of status after MPI_WAIT and MPI_TEST
Position in standard not completely obvious.
Fits best after the definition of empty statuses in MPI-1, 3.7.3
- 3.2.4 Clarification of MPI_INTERCOMM_CREATE
Added to the section on Inter-Communication.
- 3.2.5 Clarification of MPI_INTERCOMM_MERGE
Added paragraph on errorhandlers to MPI_INTERCOMM_MERGE
- 3.2.6 Clarification of MPI_TYPE_SIZE
Added advice to users
- 3.2.7 Clarification of MPI_REDUCE
Required extensive modification:
Is the following text correct?
"Note that it is possible for users to supply different user-defined operations
to \mpifunc{MPI\_REDUCE} in each process"
In MPI-1, p115, line one, it is stated that all processes must provide the smae
op-argument. Possibly in this above text, the user-defined *function* is ment?
- 3.2.8 Clarification of Error Behaviour of Attribute Callback Function
Added to section 5.7.1, right after definition of delete_fn
- 3.2.9 Clarification of MPI_PROBE and MPI_IPROBE
Replaced text, left out rationale...
Minor Clarifications:
1. p11, l36, MPI_ADDRESS: done
2. p19, l1-2, 64-bit longlong int: done
3. p40, l48: Add Advice to users: done
4. p41, l16-18: Ammend empty status: done
5. p52, l46-48: communicator left out: done
6. p53, l18-23: communicator left out: done
7. p59, l3: Add Advice to users: done
8. p59, l42-45: MPI_Sendrecv, int tag: done
9. p60, l3: NOT DONE AS NOT FOUND?
10. p70, l16: Add Advice to users: done
11. p71, l10: Delete superfluous article: done
12. p74, l39-45: Delete second part, which overlaps: done
13: p75, l24: Add the datatype description: done
14: p85, l36: change outcount->outsize: done
15: p90, l3: add communicator in example: done
16: p90, l10: Get rid of address-operator: done
17: p97, l41: RATHER p98, change disp->displs: done
18: p109, l26-27 and p110, l28-29: AGAIN p110 / p111: change each->jth: done
19: p117, l22-23: change seven -> nine: done
20: p121, l1: fix fortan function declaration: done
21: p122, l35-36: IN op -> INOUT op: done
22: p125, l1: add argument before comm: NOT NECESSARY, ALREADY IN
23: p141, l27: add "one-dimensional": done
24: p142, l10, again p143, ranks -> ranges: done
25: p194, l30-31: delete COMMA....: done
26: p195, l15: Add Fortran definition and Advice to users: Done right after C definition
27: p196, l1-2. IN -> INOUT: done
28: p197, l25: Added right before "The error codes satisfy": done
29: p201, l28: get rid of 2nd is: done
30: p203, l1: level -> LEVEL: done
31: p210, l44: PENDING -> ERR_PENDING: done
32: p211, l44: MPI_DOUBLE_COMPLEX move to opt. Fortran: done
33: p212, l22 and l25: add etc. to optional datatype sections: done
34: p213, l28: Predefined functions in C and Fortran: ADDED TO THE VERY END
35: p213, l41: Adds MPI_Errhandler to handles to assorted structures (C)??????: DONE
36: p214, l9: FUNCTION -> SUBROUTINE and arguments: done
37: p214, l14/15: PROCEDURE -> SUBROUTINE: done
38: p214, l21: PROCEDURE -> SUBROUTINE: done
39: p214, l23: Add Fortran HANDLER_FUNCTION, right after {COPY_,DELETE}_FUNCTION
40: p216, l4-7: Change recvtag-argument of MPI_Sendrecv: done
41: p220, l19-20: get rid of int double, by redefining mpibind: done
42: p222, l34: delete REQUEST: done
43: p222, l38: delete REQUEST: done
44: p227, l19-20: rename INTRACOMM -> NEWINTRACOMM: done
45: p228, l46: rename HANDLER -> ERRHANDLER: done
46: p229, l33: capitalize level: done