additional check for fine grain support in p2pCanConnect (#146)

[ROCm/rccl commit: 5a502955c9]
这个提交包含在:
Jeff Daily
2019-10-31 08:58:38 -07:00
提交者 GitHub
父节点 a99accb2cb
当前提交 e43e1f1b3d
修改 2 个文件,包含 8 行新增2 行删除
+5 -2
查看文件
@@ -171,12 +171,15 @@ void parseHsaForceFineGrainVramPcie() {
errno = 0;
int64_t v = strtoll(str, NULL, 0);
if (errno || (v != 0 && v != 1)) {
INFO(NCCL_ALL,"Invalid value %s for %s, using default %u.", str, "HSA_FORCE_FINE_GRAIN_PCIE", useFineGrainVramPcie); \
INFO(NCCL_ALL,"Invalid value %s for %s, using default %u.", str, "HSA_FORCE_FINE_GRAIN_PCIE", useFineGrainVramPcie);
} else {
useFineGrainVramPcie = v;
INFO(NCCL_ALL,"%s set by environment to %u.", "HSA_FORCE_FINE_GRAIN_PCIE", useFineGrainVramPcie); \
INFO(NCCL_ALL,"%s set by environment to %u.", "HSA_FORCE_FINE_GRAIN_PCIE", useFineGrainVramPcie);
}
}
else {
INFO(NCCL_ALL,"%s not set by environment.", "HSA_FORCE_FINE_GRAIN_PCIE");
}
}
pthread_mutex_t initLock = PTHREAD_MUTEX_INITIALIZER;
+3
查看文件
@@ -112,6 +112,9 @@ ncclResult_t p2pCanConnect(ncclTvalue_t* ret, struct ncclPeerInfo* myInfo, struc
// Do not detect topology if we're on the same GPU. Note this is not really supported.
if (myInfo->cudaDev == peerCudaDev) {
#if defined(__HIP_PLATFORM_HCC__) || defined(__HCC__) || defined(__HIPCC__)
if (!useFineGrainVramPcie) return ncclSuccess;
#endif
*ret = 1 + PATH_SYS;
return ncclSuccess;
}