Skip to content

Commit c1f7776

Browse files
committed
OSC UCX: make sure no-op fetch in rget/rput is properly aligned
Signed-off-by: Joseph Schuchart <schuchart@hlrs.de>
1 parent 90c9a0a commit c1f7776

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

ompi/mca/osc/ucx/osc_ucx_comm.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -814,9 +814,10 @@ int ompi_osc_ucx_rput(const void *origin_addr, int origin_count,
814814
}
815815

816816
mca_osc_ucx_component.num_incomplete_req_ops++;
817+
/* TODO: investigate whether ucp_worker_flush_nb is a better choice here */
817818
ret = opal_common_ucx_wpmem_fetch_nb(module->mem, UCP_ATOMIC_FETCH_OP_FADD,
818819
0, target, &(module->req_result),
819-
sizeof(uint64_t), remote_addr,
820+
sizeof(uint64_t), remote_addr & (~0x7),
820821
req_completion, ucx_req);
821822
if (ret != OMPI_SUCCESS) {
822823
return ret;
@@ -865,9 +866,10 @@ int ompi_osc_ucx_rget(void *origin_addr, int origin_count,
865866
}
866867

867868
mca_osc_ucx_component.num_incomplete_req_ops++;
869+
/* TODO: investigate whether ucp_worker_flush_nb is a better choice here */
868870
ret = opal_common_ucx_wpmem_fetch_nb(module->mem, UCP_ATOMIC_FETCH_OP_FADD,
869871
0, target, &(module->req_result),
870-
sizeof(uint64_t), remote_addr,
872+
sizeof(uint64_t), remote_addr & (~0x7),
871873
req_completion, ucx_req);
872874
if (ret != OMPI_SUCCESS) {
873875
return ret;

0 commit comments

Comments
 (0)