From 254208e7dd8a546a3ae83956026d3b61ff95c30f Mon Sep 17 00:00:00 2001 From: akolliasAMD <99202231+akolliasAMD@users.noreply.github.com> Date: Fri, 22 Jul 2022 11:32:49 -0600 Subject: [PATCH] Fixed issue with attomicEXCH creating errors on multi node runs (#587) --- src/collectives/device/prims_simple.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/collectives/device/prims_simple.h b/src/collectives/device/prims_simple.h index 33fa274531..bd58deb881 100644 --- a/src/collectives/device/prims_simple.h +++ b/src/collectives/device/prims_simple.h @@ -117,7 +117,7 @@ private: if (flags & (Recv*RoleWaitRecv | Send*RoleWaitSend)) { if (isSendNotRecv && (flags & SizesFifoEnabled)) - atomicExch_system((unsigned long long *)(connSizesFifoPtr+step%NCCL_STEPS), nelts*sizeof(T)); + __atomic_store_n((connSizesFifoPtr+step%NCCL_STEPS), nelts*sizeof(T), __ATOMIC_SEQ_CST); void **ptrs = isSendNotRecv ? (ncclShmem->groups[group].dsts + Dst) : (ncclShmem->groups[group].srcs + Src);