You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ucg_collective_type_ttype; /**< type and root of the collective */
/* only in "recv" (see @ref UCG_PARAM_OP , @ref UCG_PARAM_DISPLS ) */
void*op; /**< external reduce operation handle */
constint*displs; /**< item displacement array */
};
The comment says that displs is only used in "recv". However, collective communications, such as scatterv, alltoallw, and neighbor_alltoallw defined in ucg_mpi.h, require both type and displs fields.
Simple solution would be putting displs outside of union:
union {
ucg_collective_type_t type;
void *op;
};
const int *displs;
xucg/api/ucg.h
Lines 326 to 333 in 9aa43b4
The comment says that
displs
is only used in "recv". However, collective communications, such asscatterv
,alltoallw
, andneighbor_alltoallw
defined inucg_mpi.h
, require bothtype
anddispls
fields.Simple solution would be putting
displs
outside of union:which unfortunately triggers assert
due to struct size change.
Any suggestion?
The text was updated successfully, but these errors were encountered: