-
Notifications
You must be signed in to change notification settings - Fork 51
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
merge main to v-yujiang/rdma and resolve conflict
- Loading branch information
Showing
4 changed files
with
24 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,51 @@ | ||
|
||
# Copyright (c) Microsoft Corporation - All rights reserved | ||
# Licensed under the MIT License | ||
|
||
|
||
SB_MICRO_PATH ?= "/usr/local" | ||
MPI_HOME_PATH ?= "/usr/local/mpi" | ||
|
||
.PHONY: all cutlass bandwidthTest perftest | ||
.PHONY: all cutlass bandwidthTest nccl_tests perftest | ||
|
||
# Build all targets. | ||
all: cutlass bandwidthTest perftest | ||
all: cutlass bandwidthTest nccl_tests perftest | ||
|
||
# Create $(SB_MICRO_PATH)/bin and $(SB_MICRO_PATH)/lib, no error if existing, make parent directories as needed. | ||
sb_micro_path: | ||
mkdir -p $(SB_MICRO_PATH)/bin | ||
mkdir -p $(SB_MICRO_PATH)/lib | ||
|
||
# Build cutlass. | ||
cutlass: | ||
ifneq (,$(wildcard cutlass/CMakeLists.txt)) | ||
cmake -DCMAKE_INSTALL_BINDIR=$(SB_MICRO_PATH)/bin -DCMAKE_INSTALL_LIBDIR=$(SB_MICRO_PATH)/lib -DCMAKE_BUILD_TYPE=Release \ | ||
-DCUTLASS_NVCC_ARCHS='70;80' -DCUTLASS_ENABLE_EXAMPLES=OFF -DCUTLASS_ENABLE_TESTS=OFF -S ./cutlass -B ./cutlass/build | ||
cmake --build ./cutlass/build -j 8 --target install | ||
endif | ||
|
||
# Build cuda-samples/Samples/bandwidthTest. | ||
# cuda-samples is released together with CUDA, they have the exact same version. Like v10.0, v11.1 and so on. | ||
# The version we use is the released tag of cuda-samples which is consistent with the cuda version in the environment or docker. | ||
# The Makefile of bandwidthTest does not have 'install' target, so need to copy bin to $(SB_MICRO_PATH)/bin/ and create $(SB_MICRO_PATH)/bin/ if not existing. | ||
bandwidthTest: sb_micro_path | ||
ifneq (,$(wildcard cuda-samples/Samples/bandwidthTest/Makefile)) | ||
cd cuda-samples && git checkout v$(shell nvcc --version | grep 'release' | awk '{print $$6}' | cut -c2- | cut -d '.' -f1-2) | ||
if [ -d cuda-samples ]; then rm -rf cuda-samples; fi | ||
git clone -b v$(shell nvcc --version | grep 'release' | awk '{print $$6}' | cut -c2- | cut -d '.' -f1-2) https://github.com/NVIDIA/cuda-samples.git ./cuda-samples | ||
cd ./cuda-samples/Samples/bandwidthTest && make clean && make TARGET_ARCH=x86_64 SMS="70 75 80 86" | ||
cp -v ./cuda-samples/Samples/bandwidthTest/bandwidthTest $(SB_MICRO_PATH)/bin/ | ||
|
||
# Build nccl-tests. | ||
# The version we use is commit 44df0bf from master branch, since it didn't update release tag for long time. | ||
nccl_tests: sb_micro_path | ||
ifneq (,$(wildcard nccl-tests/Makefile)) | ||
cd ./nccl-tests && make MPI=1 MPI_HOME=$(MPI_HOME_PATH) -j | ||
cp -v ./nccl-tests/build/* $(SB_MICRO_PATH)/bin/ | ||
endif | ||
|
||
# Build perftest. | ||
# The version we use is v4.5-0.2, which is the latest release tag of perftest | ||
# The version we use is the tag v4.5-0.2. | ||
perftest: | ||
ifneq (,$(wildcard perftest/autogen.sh)) | ||
cd perftest && ./autogen.sh && ./configure CUDA_H_PATH=/usr/local/cuda/include/cuda.h --prefix=$(SB_MICRO_PATH) && make -j && make install | ||
endif | ||
endif | ||
|
Submodule nccl-tests
added at
44df0b