Chapter 13: Page 492 line 47: "8th" should be "eighth". done Page 492 line 48: Although "formal parameter" is the correct term normally, MPI typically uses "argument" to mean that. done Page 494 lines 11-21: Some of the example text in here might be worth putting in code font. done Page 494 line 31: Is MPI_MODE_RDWR intended to be equal to MPI_MODE_RDONLY | MPI_MODE_WRONLY? If so, that will require changes in some of the nearby text. No Page 495 lines 11-12: Are there any guarantees about the behavior of MPI_MODE_DELETE_ON_CLOSE if the program exits (normally or abnormally) without explicitly closing the file? No Page 499 lines 44-45: Wouldn't using log on the bit to test and then mod and integer division on the amode be simpler than the loop? Floating-point errors might cause trouble there, however, or if one of the masks was not a single bit. Maybe, but it is more than a ticket 0 change Page 500 line 36: "Section" should be "Chapter". done Page 501 line 20: There is an unnecessary line break at the end of the line. done Page 501 line 47: "pair" should be "pairs". done Page 502 line 3: The "and" might need to be changed to "or". done Page 502 line 12: "Section" should be "Chapter". done Page 502 line 34: Is there a reason that "CYCLIC" is all-uppercase? done Page 503 lines 22-23: Is this hint intended to say how many devices to use, not how many are in the system? No, it is correct. The next hint "striping_factor" says how many devices to use. Page 505 lines 15, 25-28, and 32: "etype" and "filetype" should be in text font when they are not referring to specific argument names. done Page 505 line 30: There should be a comma after "etype". done Page 506 lines 30-33: Is there an easy way to tell that a datatype is derived? Is the datatype returned, if derived, guaranteed to be new (and not, for example, one passed into MPI_FILE_SET_VIEW by the user)? Yes, using MPI_Type_get_envelope. If derived, the text says, the function returns a datatype that the user is responsible for freeing. It doesn't talk in terms of new or not. Page 506 lines 40-42: There is extra space after "vs." here (probably needs to be 'vs.\ ' in LaTeX). I don't remember whether vs is italicized elsewhere in the standard. done Page 506 line 44: The POSIX function names might need to be in code font. done Page 507 line 25: The em-dash should have spaces around it to match the rest of the standard. This issue may occur elsewhere in the chapter as well. done Page 508 line 3: "in to" should be "into". done Page 508 lines 9-11: Does that mean a buffer being written to a file can't be concurrently sent? It seems like that restriction may be too strong, especially when you can use a datatype to write the same data to a file more than once in a single operation. It would be more than a ticket 0 change. Page 509 lines 8-12: The section titles should be in the normal text font, the commas and final period should be inside the quotes, and there needs to be a comma after "Temporary Data Movements". done Page 509 line 18: The fields in MPI_Status are referred to in sans-serif on page 30 where they are introduced. done Page 520 lines 30-31: Do all processes need to use equivalent views of the file to use the shared file pointer? If not, what is the file pointer relative to (i.e., if I read using it in a process with one view, then read using it in a process with a different view, what happens)? Yes. See 520:25 Pages 524-525: Are MPI_FILE_SEEK_SHARED and/or MPI_FILE_GET_POSITION_SHARED collective? Former is (525:9), latter isn't. Page 534 line 24: "of the MPI-1 document" should be removed, and "page" should be "pages". Good catch. The hardwired reference to a section and page of the MPI-1 document had to be replaced with a LaTeX link. Page 536 line 26: There should be a comma after "8". done Page 536 line 30: This list should also include the C++ bool type now that there is an MPI datatype for it. Hmm... This was removed by ticket 281. Maybe it should be put back in. Page 536 line 31: There should be a comma after "double _Complex". This list should include the C++ complex types. In what order do the real and imaginary components appear in the file? done Page 536 lines 34-35: Unicode has several encoding formats; which one are you intending (UTF-7, UTF-8, UTF-16, UCS-16, UCS-32, or something else)? Don't know. Page 537 line 5: "size" should be "sizes". done Page 537 line 10: "less" should be "least". done Page 537 lines 9-12: Some of this information (what happens on overflows from down-converting number formats, for example) is normative and should be in the main text. Also, taking the least-significant bytes of a larger number does not always preserve the sign bit in case of overflows (converting the MPI_INT 32768 to an MPI_INTEGER2 leads to -32768, for example). Is making sure to preserve the sign bit always the intended behavior? Not changed. Page 538 line 9: Defining wchar as two bytes prevents it from representing all valid Unicode code points (some of them are above 2^16). If such code points are forbidden (even on platforms where wchar_t is 32 bits), be sure to say that explicitly. Not changed. Page 538 line 40: Why is MPI_LOGICAL defined as 4 bytes instead of 1? That's what it is in Fortran. Does the MPI standard say anywhere that a byte is assumed to be 8 bits? Don't know. Page 540 line 17: There is extra whitespace at the end of the line. done Page 541 lines 29 and 44: What does "equivalent" mean? That they have the same typemap and displacements, or that they are exactly the handles that the user passed in (allowing caching)? The former. Could be a duped version, for example. Page 541 lines 47-48: Does that mean that point-to-point operations are OK? Non-collective file I/O? Sounds like it. Page 542 line 14: The first quotation mark is backwards. done Page 542 lines 17-25: The first item in this list appears to be a superset of the third one, and it seems like all of them might be required to be satisfied when applicable (not just "at least one"). The first one refers to a program using only basic datatypes. The 3rd one refers to a program using derived datatypes. Page 542 lines 47-: "FH", "fh", and "FOO" in math mode might need to be in \mathit (I can't tell for sure). Maybe, but too much to change. Page 543 lines 4-5: How do you get multiple file handles out of the same collective open of a file? Accesses from different processes only? Or can file descriptors be sent between processes? Multiple means the return values on different processes. Page 545 line 32: There need to be spaces around the em dash. done Page 546 line 27: "dup" should be "duplicate", there should be spaces around the em dash. done Page 547 line 10: Is MPI_Offset required to be signed? Yes. you can seek backwards from the current location. Page 547 line 16: "KIND" might need to be in another font and/or lowercase. done Page 547 line 26: "info" (and maybe "hints") should be in text font. done for info Page 550 line 31: "myfile" might need to be in code font. done Page 552 line 11: The em dash needs spaces around it. done Page 552 line 27: The comma should be a period. done Page 552 line 34: The line has extra space at the end. done Page 555 line 40: The ranges here appear to have hyphens in them, rather than the correct en dashes. done