mirror of
https://github.com/microsoft/mscclpp.git
synced 2026-05-12 01:10:22 +00:00
- Make nccl interface extensible. Customer can register their own algo to NCCL API. User can provide customized algo selection function. - Fallback to NCCL/RCCL if no algo is selected based on algo selection function - MSCCLPP interfaces now works for any scale
23 lines
487 B
Makefile
23 lines
487 B
Makefile
CUDA_HOME ?= /usr/local/cuda
|
|
ROCM_HOME ?= /opt/rocm
|
|
|
|
# Check if nvcc exists, otherwise use hipcc
|
|
ifeq ($(shell which $(CUDA_HOME)/bin/nvcc 2>/dev/null),)
|
|
COMPILER := $(ROCM_HOME)/bin/hipcc
|
|
ARCH_FLAG := -D__HIP_PLATFORM_AMD__=1
|
|
else
|
|
COMPILER := $(CUDA_HOME)/bin/nvcc
|
|
ARCH_FLAG := -arch=native
|
|
endif
|
|
|
|
TARGET = customized_allgather
|
|
SRC = customized_allgather.cu
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(SRC)
|
|
$(COMPILER) $(ARCH_FLAG) -o $@ $< -lmscclpp -lnccl
|
|
|
|
clean:
|
|
rm -f $(TARGET)
|