Merge remote-tracking branch 'nccl/master' into develop

[ROCm/rccl commit: 3f94267f21]
Bu işleme şunda yer alıyor:
BertanDogancay
2025-10-06 15:03:19 -05:00
işlemeyi yapan: Corey Derochie
işleme 2a4e4308b0
51 değiştirilmiş dosya ile 3682 ekleme ve 461 silme
+2 -3
Dosyayı Görüntüle
@@ -36,9 +36,8 @@ define COMPILE
$(call COMPILE$(or $3,$(suffix $2)),$1,$2)
endef
ifeq ($(shell echo "$$((1000*$(CUDA_MAJOR) + 10*$(CUDA_MINOR) >= 12080))"),1)
NVCC_GENCODE_LDMC_FP8 = -gencode=arch=compute_100a,code=sm_100a \
-gencode=arch=compute_120a,code=sm_120a
ifeq ($(shell echo "$$((1000*$(CUDA_MAJOR) + 10*$(CUDA_MINOR) >= 12090))"),1)
NVCC_GENCODE_LDMC_FP8 = -gencode=arch=compute_100f,code=sm_100f
else ifeq ($(shell echo "$$((1000*$(CUDA_MAJOR) + 10*$(CUDA_MINOR) >= 12070))"),1)
NVCC_GENCODE_LDMC_FP8 = -gencode=arch=compute_100a,code=sm_100a
else
+1
Dosyayı Görüntüle
@@ -636,6 +636,7 @@ __device__ __forceinline__ void ncclKernelMain(struct ncclDevKernelArgs const* a
__syncthreads();
if (COLLTRACE && tid%WARP_SIZE == 0) traceKernelLaunch(ncclCollTraceCollLaunchType, batchIx);
}
profiler(FINI);
if (COLLTRACE && tid%WARP_SIZE == 0) traceKernelEnd(ncclCollTraceKernelEndType);
#ifdef ENABLE_PROFILING
+1 -1
Dosyayı Görüntüle
@@ -1073,7 +1073,7 @@ struct Apply_LoadMultimem {
#endif
#if defined(RCCL_BFLOAT16)
#if NCCL_CUDA_ARCH_FAMILY_SPECIFIC == 1000 || NCCL_CUDA_ARCH_FAMILY_SPECIFIC == 1010 || NCCL_CUDA_ARCH_SPECIFIC == 1200 || NCCL_CUDA_ARCH_SPECIFIC == 1210
#if NCCL_CUDA_ARCH_SPECIFIC == 1000 || NCCL_CUDA_ARCH_SPECIFIC == 1010 || NCCL_CUDA_ARCH_FAMILY_SPECIFIC == 1000 || NCCL_CUDA_ARCH_FAMILY_SPECIFIC == 1010 || NCCL_CUDA_ARCH_SPECIFIC == 1200 || NCCL_CUDA_ARCH_SPECIFIC == 1210
DEFINE_Apply_LoadMultimem_sum_v4_and_xparts(__nv_fp8_e4m3, e4m3x4, 4)
DEFINE_Apply_LoadMultimem_minmax_v4_and_xparts(__nv_fp8_e4m3, e4m3x4, 4)
DEFINE_Apply_LoadMultimem_sum_v4_and_xparts(__nv_fp8_e5m2, e5m2x4, 4)
+2 -2
Dosyayı Görüntüle
@@ -108,7 +108,7 @@ def required_cuda(k):
if k.algo in ldmc_algos:
cudart = 12070
arch = None
specific_sms = [100, 120]
specific_sms = ["100a", "101a", "100f", "101f", "120a", "121a"]
return (cudart, arch, specific_sms)
################################################################################
@@ -145,7 +145,7 @@ def kernel_conds(k):
if not specific_sms:
arch_cond = "__CUDA_ARCH__ >= %d"%arch
else:
arch_cond = " || ".join(["0"] + ["NCCL_CUDA_ARCH_SPECIFIC==%d"%(10*sm) for sm in specific_sms])
arch_cond = " || ".join(["0"] + ["NCCL_CUDA_ARCH_%sSPECIFIC==%d"%("FAMILY_" if sm[-1] == "f" else "", 10*int(sm.replace('a', '').replace('f', ''))) for sm in specific_sms])
return cudart_cond, arch_cond
def instantiate(k):