Merge pull request #7102 from edgargabriel/pr/v4.0.x-romio321-status-set-elements-fix
MPIR_Status_set_bytes: fix for large count sizes
Этот коммит содержится в:
Коммит
608502ff85
@ -33,7 +33,7 @@
|
|||||||
* because ROMIO just expects these functions to exist.
|
* because ROMIO just expects these functions to exist.
|
||||||
*/
|
*/
|
||||||
int MPIR_Status_set_bytes(ompi_status_public_t *status,
|
int MPIR_Status_set_bytes(ompi_status_public_t *status,
|
||||||
struct ompi_datatype_t *datatype, int size);
|
struct ompi_datatype_t *datatype, MPI_Count size);
|
||||||
void ADIOI_Datatype_iscontig(MPI_Datatype datatype, int *flag);
|
void ADIOI_Datatype_iscontig(MPI_Datatype datatype, int *flag);
|
||||||
|
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ mca_io_base_module_2_0_0_t mca_io_romio321_module = {
|
|||||||
* MPI_Status_set_elements (almost like they planned that... hmmm...).
|
* MPI_Status_set_elements (almost like they planned that... hmmm...).
|
||||||
*/
|
*/
|
||||||
int MPIR_Status_set_bytes(ompi_status_public_t *status,
|
int MPIR_Status_set_bytes(ompi_status_public_t *status,
|
||||||
struct ompi_datatype_t *datatype, int nbytes)
|
struct ompi_datatype_t *datatype, MPI_Count nbytes)
|
||||||
{
|
{
|
||||||
/* Note that ROMIO is going to give a number of *bytes* here, but
|
/* Note that ROMIO is going to give a number of *bytes* here, but
|
||||||
MPI_STATUS_SET_ELEMENTS requires a number of *elements*. So
|
MPI_STATUS_SET_ELEMENTS requires a number of *elements*. So
|
||||||
@ -125,7 +125,7 @@ int MPIR_Status_set_bytes(ompi_status_public_t *status,
|
|||||||
we do the right calculations there. This prevents roundoff
|
we do the right calculations there. This prevents roundoff
|
||||||
errors here, potentially "losing" bytes in the process. */
|
errors here, potentially "losing" bytes in the process. */
|
||||||
|
|
||||||
MPI_Status_set_elements(status, MPI_CHAR, nbytes);
|
MPI_Status_set_elements_x(status, MPI_CHAR, nbytes);
|
||||||
return MPI_SUCCESS;
|
return MPI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user