Unverified Commit 9ec17d7d authored by gilbertlee-amd's avatar gilbertlee-amd Committed by GitHub
Browse files

Fixing some Makefile issues, Null memory parsing (#231)

parent fb07c307
......@@ -3,6 +3,14 @@
Documentation for TransferBench is available at
[https://rocm.docs.amd.com/projects/TransferBench](https://rocm.docs.amd.com/projects/TransferBench).
## v1.66.01
## Fixed
- Adding support for TheRock
- Fixing parsing issue when using NULL memory type
- Fixing CUAD compilation flags when enabling NIC/MPI
## Modified
- TransferBenchCuda must now be explicitly built with via 'make TransferBenchCuda'
## v1.66.00
### Added
- Adding multi-node support
......
......@@ -9,7 +9,7 @@ if (NOT CMAKE_TOOLCHAIN_FILE)
message(STATUS "CMAKE_TOOLCHAIN_FILE: ${CMAKE_TOOLCHAIN_FILE}")
endif()
set(VERSION_STRING "1.66.00")
set(VERSION_STRING "1.66.01")
project(TransferBench VERSION ${VERSION_STRING} LANGUAGES CXX)
## Load CMake modules
......
......@@ -26,15 +26,21 @@ SINGLE_KERNEL ?= 0
# Default is the native GPU target
GPU_TARGETS ?= native
EXE=TransferBench
DEBUG ?= 0
# Only perform this check if 'make clean' is not the target
ifeq ($(filter clean,$(MAKECMDGOALS)),)
# Compile TransferBenchCuda if nvidia-smi returns successfully and nvcc detected
ifeq ("$(shell nvidia-smi > /dev/null 2>&1 && test -e $(NVCC) && echo found)", "found")
EXE=TransferBenchCuda
CXX=$(NVCC)
ifeq ($(MAKECMDGOALS),TransferBenchCuda)
# Check for nvcc
ifneq ($(shell test -e $(NVCC) && echo found), found)
$(error "Could not find $(NVCC). Please set CUDA_PATH appropriately")
else
EXE=TransferBench
$(info Compiling TransferBenchCuda using $(NVCC))
endif
NVFLAGS = -x cu -lnuma -arch=native
else
# Check for HIP compiler
ifeq ("$(shell test -e $(HIPCC) && echo found)", "found")
CXX=$(HIPCC)
else ifeq ("$(shell test -e $(ROCM_PATH)/bin/hipcc && echo found)", "found")
......@@ -44,7 +50,6 @@ ifeq ($(filter clean,$(MAKECMDGOALS)),)
$(error "Could not find $(HIPCC) or $(ROCM_PATH)/bin/hipcc. Check if the path is correct if you want to build $(EXE)")
endif
GPU_TARGETS_FLAGS = $(foreach target,$(GPU_TARGETS),"--offload-arch=$(target)")
endif
CXXFLAGS = -I$(ROCM_PATH)/include -I$(ROCM_PATH)/include/hip -I$(ROCM_PATH)/include/hsa
HIPLDFLAGS= -lnuma -L$(ROCM_PATH)/lib -lhsa-runtime64 -lamdhip64
......@@ -52,10 +57,10 @@ ifeq ($(filter clean,$(MAKECMDGOALS)),)
ifneq ($(strip $(ROCM_DEVICE_LIB_PATH)),)
HIPFLAGS += --rocm-device-lib-path=$(ROCM_DEVICE_LIB_PATH)
endif
NVFLAGS = -x cu -lnuma -arch=native
endif
ifeq ($(SINGLE_KERNEL), 1)
CXXFLAGS += -DSINGLE_KERNEL
COMMON_FLAGS += -DSINGLE_KERNEL
endif
ifeq ($(DEBUG), 0)
......@@ -79,7 +84,7 @@ ifeq ($(filter clean,$(MAKECMDGOALS)),)
else ifeq ("$(shell echo '#include <infiniband/verbs.h>' | $(CXX) -E - 2>/dev/null | grep -c 'infiniband/verbs.h')", "0")
$(info infiniband/verbs.h not found)
else
CXXFLAGS += -DNIC_EXEC_ENABLED
COMMON_FLAGS += -DNIC_EXEC_ENABLED
LDFLAGS += -libverbs
NIC_ENABLED = 1
endif
......@@ -101,7 +106,7 @@ ifeq ($(filter clean,$(MAKECMDGOALS)),)
$(info Unable to find mpi.h at $(MPI_PATH)/include. Please specify appropriate MPI_PATH)
else
MPI_ENABLED = 1
CXXFLAGS += -DMPI_COMM_ENABLED -I$(MPI_PATH)/include
COMMON_FLAGS += -DMPI_COMM_ENABLED -I$(MPI_PATH)/include
LDFLAGS += -L/$(MPI_PATH)/lib -lmpi
ifeq ($(DEBUG), 1)
LDFLAGS += -lmpi_cxx
......
......@@ -40,7 +40,7 @@ THE SOFTWARE.
#include <random>
#include <time.h>
#define CLIENT_VERSION "00"
#define CLIENT_VERSION "01"
#include "TransferBench.hpp"
using namespace TransferBench;
......
......@@ -1176,7 +1176,10 @@ namespace {
}
// Parse memory type
ERR_CHECK(CharToMemType(*ptr, w.memType));
ErrResult err = CharToMemType(*ptr, w.memType);
if (err.errType != ERR_NONE) {
return {err.errType, "Error parsing token [%s]: %s\n", token.c_str(), err.errMsg.c_str()};
}
ptr++; // Skip memory type
// Parse memory index
......@@ -1184,6 +1187,8 @@ namespace {
ptr = ParseRange(ptr, -1, w.memIndices);
if (!ptr) return {ERR_FATAL, "Unable to parse device index in memory token %s", token.c_str()};
memDevices.push_back(w);
} else {
break;
}
}
return ERR_NONE;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment