Fixed a bug where ComputeCpp's flags is omitted

Renamed INTEL_GT -> INTEL_GPU
Only use NVCC with Kokkos if not using HIPCC
This commit is contained in:
Tom Lin 2020-08-07 11:00:16 +01:00
parent 59274d6a91
commit cdaf6cb88e
3 changed files with 13 additions and 11 deletions

View File

@ -60,16 +60,16 @@ Available targets are:
CPU (default)
GPU
Note: Use CPU or leave default if compiling with HIPCC
endef
$(info $(target_help))
TARGET=CPU
endif
ifeq ($(TARGET), GPU)
ifneq ($(COMPILER), HIPCC)
CXX = $(NVCC_WRAPPER)
endif
endif
OBJ = main.o KokkosStream.o
CXXFLAGS = -O3

View File

@ -16,7 +16,7 @@ ifndef TARGET
define target_help
Set TARGET to change device (defaulting to CPU).
Available targets are:
CPU NVIDIA AMD INTEL_GT
CPU NVIDIA AMD INTEL_GPU
endef
$(info $(target_help))
@ -62,7 +62,7 @@ OMP_GNU_NVIDIA = -DOMP_TARGET_GPU -fopenmp -foffload=nvptx-none
OMP_GNU_AMD = -DOMP_TARGET_GPU -fopenmp -foffload=amdgcn-amdhsa
OMP_INTEL_CPU = -xHOST -qopt-streaming-stores=always
OMP_INTEL_INTEL_GT = -DOMP_TARGET_GPU -qnextgen -fiopenmp -fopenmp-targets=spir64
OMP_INTEL_INTEL_GPU = -DOMP_TARGET_GPU -qnextgen -fiopenmp -fopenmp-targets=spir64
ifndef OMP_$(COMPILER)_$(TARGET)
$(error Targeting $(TARGET) with $(COMPILER) not supported)

View File

@ -42,15 +42,15 @@ endif
endif
SYCL_COMPUTECPP_SYCLFLAGS = $(shell $(SYCL_SDK_DIR)/bin/computecpp_info --dump-device-compiler-flags)
SYCL_COMPUTECPP_SYCLFLAGS_AMD = $(COMPUTECPP_FLAGS)
SYCL_COMPUTECPP_SYCLFLAGS_CPU = $(COMPUTECPP_FLAGS)
SYCL_COMPUTECPP_SYCLFLAGS_NVIDIA = $(COMPUTECPP_FLAGS) -sycl-target ptx64
SYCL_COMPUTECPP_SYCLFLAGS_AMD = $(SYCL_COMPUTECPP_SYCLFLAGS)
SYCL_COMPUTECPP_SYCLFLAGS_CPU = $(SYCL_COMPUTECPP_SYCLFLAGS)
SYCL_COMPUTECPP_SYCLFLAGS_NVIDIA = $(SYCL_COMPUTECPP_SYCLFLAGS) -sycl-target ptx64
SYCL_COMPUTECPP_SYCLCXX = $(SYCL_SDK_DIR)/bin/compute++
SYCL_COMPUTECPP_FLAGS = -O3 --std=c++17
SYCL_COMPUTECPP_LINK_FLAGS = -L$(SYCL_SDK_DIR)/lib -lComputeCpp -lOpenCL -Wl,--rpath=$(SYCL_SDK_DIR)/lib/
SYCL_COMPUTECPP_INCLUDE = -I$(SYCL_SDK_DIR)/include
SYCL_COMPUTECPP_CXX = g++
SYCL_COMPUTECPP_DEPS = SYCLStream.sycl
SYCL_HIPSYCL_SYCLFLAGS_CPU = -O3 --std=c++17 --hipsycl-platform=cpu
SYCL_HIPSYCL_SYCLFLAGS_AMD = -O3 --std=c++17 --hipsycl-platform=rocm --hipsycl-gpu-arch=$(ARCH)
@ -60,7 +60,7 @@ SYCL_HIPSYCL_FLAGS = $(SYCL_HIPSYCL_SYCLFLAGS_$(TARGET))
SYCL_HIPSYCL_LINK_FLAGS = -L$(SYCL_SDK_DIR)/lib -Wl,-rpath,$(SYCL_SDK_DIR)/lib
SYCL_HIPSYCL_INCLUDE =
SYCL_HIPSYCL_CXX = $(SYCL_HIPSYCL_SYCLCXX)
SYCL_HIPSYCL_DEPS =
SYCL_DPCPP_SYCLFLAGS_CPU = -O3 --std=c++17
SYCL_DPCPP_SYCLFLAGS_NVIDIA = -O3 --std=c++17 -fsycl -fsycl-targets=nvptx64-nvidia-cuda-sycldevice -fsycl-unnamed-lambda
@ -69,6 +69,7 @@ SYCL_DPCPP_FLAGS = $(SYCL_DPCPP_SYCLFLAGS_CPU)
SYCL_DPCPP_LINK_FLAGS =
SYCL_DPCPP_INCLUDE =
SYCL_DPCPP_CXX = dpcpp
SYCL_DPCPP_DEPS =
SYCL_SYCLFLAGS = $(SYCL_$(COMPILER)_SYCLFLAGS_$(TARGET))
@ -78,14 +79,15 @@ SYCL_FLAGS = $(SYCL_$(COMPILER)_FLAGS)
SYCL_LINK_FLAGS = $(SYCL_$(COMPILER)_LINK_FLAGS)
SYCL_INCLUDE = $(SYCL_$(COMPILER)_INCLUDE)
SYCL_CXX = $(SYCL_$(COMPILER)_CXX)
SYCL_DEPS = $(SYCL_$(COMPILER)_DEPS)
sycl-stream: main.o SYCLStream.o SYCLStream.sycl
sycl-stream: main.o SYCLStream.o $(SYCL_DEPS)
$(SYCL_CXX) $(SYCL_FLAGS) -DSYCL main.o SYCLStream.o $(EXTRA_FLAGS) $(SYCL_LINK_FLAGS) -o $@
main.o: main.cpp
$(SYCL_CXX) $(SYCL_FLAGS) -DSYCL main.cpp -c $(SYCL_INCLUDE) $(EXTRA_FLAGS) -o $@
SYCLStream.o: SYCLStream.cpp SYCLStream.sycl
SYCLStream.o: SYCLStream.cpp $(SYCL_DEPS)
$(SYCL_CXX) $(SYCL_FLAGS) -DSYCL SYCLStream.cpp -c $(SYCL_INCLUDE) $(EXTRA_FLAGS) -o $@
SYCLStream.sycl: SYCLStream.cpp