Benchmarks: Build Pipeline - add rccl-tests as a submodule with building logic (#139)

**Description**
Support rocm in third_party/makefile and add rccl-tests as a submodule with building logic.

**Major Revision**
- Support rocm in third_party/makefile
- Add rccl-tests as a submodule 
- Add build logic in third_party/Makefile for rccl-tests
This commit is contained in:
Yuting Jiang 2021-07-30 07:27:08 +08:00 коммит произвёл GitHub
Родитель 69b2c631fc
Коммит a532eee414
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
3 изменённых файлов: 18 добавлений и 5 удалений

3
.gitmodules поставляемый
Просмотреть файл

@ -12,3 +12,6 @@
path = third_party/fio path = third_party/fio
url = https://github.com/axboe/fio.git url = https://github.com/axboe/fio.git
branch = master branch = master
[submodule "third_party/rccl-tests"]
path = third_party/rccl-tests
url = https://github.com/ROCmSoftwarePlatform/rccl-tests.git

19
third_party/Makefile поставляемый
Просмотреть файл

@ -3,15 +3,17 @@
# Licensed under the MIT License # Licensed under the MIT License
SB_MICRO_PATH ?= "/usr/local" SB_MICRO_PATH ?= /usr/local
MPI_HOME_PATH ?= "/usr/local/mpi" MPI_HOME ?= /usr/local/mpi
HIP_HOME ?= /opt/rocm/hip
RCCL_HOME ?= /opt/rocm/rccl
.PHONY: all cuda rocm common cuda_cutlass cuda_bandwidthTest cuda_nccl_tests cuda_perftest rocm_perftest fio .PHONY: all cuda rocm common cuda_cutlass cuda_bandwidthTest cuda_nccl_tests cuda_perftest rocm_perftest fio rocm_rccl_tests
# Build all targets. # Build all targets.
all: cuda rocm all: cuda rocm
cuda: common cuda_cutlass cuda_bandwidthTest cuda_nccl_tests cuda_perftest cuda: common cuda_cutlass cuda_bandwidthTest cuda_nccl_tests cuda_perftest
rocm: common rocm_perftest rocm: common rocm_perftest rocm_rccl_tests
common: fio common: fio
# Create $(SB_MICRO_PATH)/bin and $(SB_MICRO_PATH)/lib, no error if existing, make parent directories as needed. # Create $(SB_MICRO_PATH)/bin and $(SB_MICRO_PATH)/lib, no error if existing, make parent directories as needed.
@ -41,7 +43,7 @@ cuda_bandwidthTest: sb_micro_path
# The version we use is commit 44df0bf from master branch, since it didn't update release tag for long time. # The version we use is commit 44df0bf from master branch, since it didn't update release tag for long time.
cuda_nccl_tests: sb_micro_path cuda_nccl_tests: sb_micro_path
ifneq (,$(wildcard nccl-tests/Makefile)) ifneq (,$(wildcard nccl-tests/Makefile))
cd ./nccl-tests && make MPI=1 MPI_HOME=$(MPI_HOME_PATH) -j cd ./nccl-tests && make MPI=1 MPI_HOME=$(MPI_HOME) -j
cp -v ./nccl-tests/build/* $(SB_MICRO_PATH)/bin/ cp -v ./nccl-tests/build/* $(SB_MICRO_PATH)/bin/
endif endif
@ -61,3 +63,10 @@ fio:
ifneq (,$(wildcard fio/Makefile)) ifneq (,$(wildcard fio/Makefile))
cd ./fio && ./configure --prefix=$(SB_MICRO_PATH) && make -j && make install cd ./fio && ./configure --prefix=$(SB_MICRO_PATH) && make -j && make install
endif endif
# Build rccl-tests from commit cc34c5 of develop branch (default branch).
rocm_rccl_tests: sb_micro_path
ifneq (, $(wildcard rccl-tests/Makefile))
cd ./rccl-tests && make MPI=1 MPI_HOME=$(MPI_HOME) HIP_HOME=$(HIP_HOME) RCCL_HOME=$(RCCL_HOME) -j
cp -v ./rccl-tests/build/* $(SB_MICRO_PATH)/bin/
endif

1
third_party/rccl-tests поставляемый Submodule

@ -0,0 +1 @@
Subproject commit cc34c545098145bc148e5035e4c8e767b4d71ece