[Mpi-comments] Comments on MPI 3.0 draft 2
Jeremiah Willcock
jewillco at osl.iu.edu
Thu Aug 23 19:56:58 CDT 2012
On Thu, 23 Aug 2012, George Bosilca wrote:
>
> On Aug 18, 2012, at 20:13 , Jeremiah Willcock <jewillco at osl.iu.edu> wrote:
>
>> On page 84 line 42, "sizeof" should be inside \mathit.
>
> ?
"sizeof" appears to be in math mode, but since it's a multi-letter
variable name, it needs to be wrapped in \mathit so that LaTeX doesn't
think it's a multiplication. "buf" on line 16 of that page has the same
issue, while the version on line 14 doesn't.
>> On page 84 line 45, where does "i" come from? Is the extent rounded to
>> a multiple of k_i, or is the upper bound rounded (these differ when lb
>> is not aligned)? If extent is rounded, the +eps term should be moved
>> to the computation of extent, not ub, unless that definition of ub is
>> used somewhere else.
>
> Which i? The type_i or k_i?
Both -- nothing ever says what "i" means.
> The upper bound is increased in such a way that the extent is a multiple
> of the biggest k_i (to solve all alignment issues in the case multiple
> instances of the same datatype are considered).
That's for i = 0 ... n-1, right? That is the part that is never explained
in the text.
>> On page 95, why does MPI_TYPE_CREATE_SUBARRAY use zero-based indexing
>> for Fortran; I believe many other places in MPI use one-based array
>> indices when called from Fortran, even if they use zero-based indices
>> from C.
>
> I can't find any text that correspond to this remark.
See page 96 lines 7-9 -- why is the function defined that way (requiring
the n-1 modification to calls) for Fortran?
>> Also, is there a version of MPI_TYPE_CREATE_SUBARRAY that allows
>> strided indexing in the dimensions (MPI_TYPE_CREATE_DARRAY looks more
>> limited)?
>
> One can use a carefully hand-crafted datatype to achieve this.
That is a suggestion to put on the list for the future.
>> On page 115 line 44, it seems odd that adding MPI_BOTTOM to a valid
>> address gives a valid address, since that allows me to create a valid
>> address MPI_BOTTOM * n + v where n is nonnegative and v is a valid
>> address.
>
> Too late to change now. We realized this few weeks ago, and we amended
> the example 4.18.
This seems like it would be a serious problem for implementations that
have MPI_BOTTOM != 0; why is it too late to fix?
-- Jeremiah Willcock
More information about the mpi-comments
mailing list