MSCCL: Unland PR1788 + Fix for MSCCL Data Corruption (#1960)

- Earlier fix PR1788 is no longer necessary after ROCr fix and pre-ROCr fix workaround
- Inserts an s_waitcnt vmcnt(0), which fixes a data corruption issue in MSCCL

[ROCm/rccl commit: 154350baaf]
Цей коміт міститься в:
alex-breslow-amd
2025-10-15 10:32:25 -07:00
зафіксовано GitHub
джерело bb85692891
коміт a5256e6219
5 змінених файлів з 20 додано та 72 видалено
+2 -2
Переглянути файл
@@ -194,7 +194,7 @@ __device__ __forceinline__ void mscclRunInterpreter(
}
RedOp redFn(mscclShmem.work.redOpArg);
Primitives<T, RedOp, FanAsymmetric<1,1>, 1, Proto, 0> prims
Primitives<T, RedOp, FanAsymmetric<1,1>, 1, Proto, 0, 0, RCCL_METADATA_MSCCL> prims
(tid, nthreads, &recvPeer, &sendPeer, thisInput, thisOutput, mscclShmem.work.redOpArg);
#if defined(ENABLE_NPKIT)
@@ -278,7 +278,7 @@ __device__ __forceinline__ void mscclRunInterpreter(
}
#endif
prims.mscclSend(srcOffset, thisNelem); // LL.send is the only situation where there is no barrier at the end.
prims.send(srcOffset, thisNelem); // LL.send is the only situation where there is no barrier at the end.
#if defined(ENABLE_NPKIT) && defined(ENABLE_NPKIT_EVENT_MSCCL_SEND_EXIT)
if (tid == 0) {