Do not add epsilon to the data extent if there is a user set UB for the data.
This commit was SVN r8004.
Этот коммит содержится в:
родитель
dcd3450e06
Коммит
7b7aaf897c
@ -174,11 +174,15 @@ int32_t ompi_ddt_add( ompi_datatype_t* pdtBase, const ompi_datatype_t* pdtAdd,
|
|||||||
|
|
||||||
/* Now that we have the new ub and the alignment we should update the ub to match
|
/* Now that we have the new ub and the alignment we should update the ub to match
|
||||||
* the new alignement. We have to add an epsilon that is the least nonnegative increment
|
* the new alignement. We have to add an epsilon that is the least nonnegative increment
|
||||||
* needed to roung the extent to the next multiple of the alignment.
|
* needed to roung the extent to the next multiple of the alignment. This rule
|
||||||
|
* apply only if there is user specified upper bound as stated in the MPI
|
||||||
|
* standard MPI 1.2 page 71.
|
||||||
*/
|
*/
|
||||||
epsilon = (pdtBase->ub - pdtBase->lb) % pdtBase->align;
|
if( !(pdtBase->flags & DT_FLAG_USER_UB) ) {
|
||||||
if( 0 != epsilon ) {
|
epsilon = (pdtBase->ub - pdtBase->lb) % pdtBase->align;
|
||||||
pdtBase->ub += (pdtBase->align - epsilon);
|
if( 0 != epsilon ) {
|
||||||
|
pdtBase->ub += (pdtBase->align - epsilon);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user