Removing redundant LOAD and STORE on primitives plus adding some atomics (#585)

[ROCm/rccl commit: 451c287aa6]
This commit is contained in:
akolliasAMD
2022-07-21 13:04:57 -06:00
committed by GitHub
parent 088d62ff58
commit 18d9fd1b8f
5 changed files with 22 additions and 21 deletions
+10
View File
@@ -14,6 +14,16 @@
//#include "clique/CliqueManager.h"
// [/RCCL]
// Convert volatile access to atomic
#if defined(__HIP_PLATFORM_HCC__) || defined(__HCC__) || defined(__HIPCC__)
#define LOAD(VAR) __atomic_load_n((VAR), __ATOMIC_SEQ_CST)
#define STORE(DST, SRC) __atomic_store_n((DST), (SRC), __ATOMIC_SEQ_CST)
#else
#define LOAD(VAR) *(VAR)
#define STORE(DST, SRC) *(DST) = (SRC)
#endif
#if defined(__HIP_PLATFORM_HCC__) || defined(__HCC__) || defined(__HIPCC__)
#define HIPRT_CB
#else