Skip to content

Conversation

@kawashima-fj
Copy link
Member

Array sizes of array_of_gsizes, array_of_distribs, array_of_dargs, and array_of_psizes parameters of the ompi_datatype_create_darray function (and MPI_TYPE_CREATE_DARRAY) are all ndims. ndims is i[2], not i[0]. See MPI-3.1 p.122.

Because this function __ompi_datatype_create_from_args is used by pt2pt OSC, using a datatype created by MPI_TYPE_CREATE_DARRAY for MPI_(R)(GET_)ACCUMULATE caused a segmentation fault or something on a target process.

Signed-off-by: KAWASHIMA Takahiro t-kawashima@jp.fujitsu.com
(cherry picked from commit b4599d7)

Array sizes of `array_of_gsizes`, `array_of_distribs`, `array_of_dargs`,
and `array_of_psizes` parameters of the `ompi_datatype_create_darray`
function (and `MPI_TYPE_CREATE_DARRAY`) are all `ndims`.
`ndims` are `i[2]`, not `i[0]`. See MPI-3.1 p.122.

Because this function `__ompi_datatype_create_from_args` is used by
pt2pt OSC, using a datatype created by `MPI_TYPE_CREATE_DARRAY` for
`MPI_(R)(GET_)ACCUMULATE` caused a segmentation fault or something
on a target process.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
(cherry picked from commit b4599d7)
@hppritcha hppritcha merged commit 5c47ca6 into open-mpi:v3.x Apr 12, 2017
@kawashima-fj kawashima-fj deleted the pr/v3.x/darray-accumulate-fix branch April 13, 2017 05:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants