GPU_ARCH ?= gfx936 CXX ?= hipcc CXX_FLAGS ?= -std=c++17 -O3 HIPCC_FLAGS = --offload-arch=$(GPU_ARCH) NVCC_FLAGS = -arch=$(GPU_ARCH) -x cu TARGET := gemv_bench SRC := main.cpp DEP := gemv_bf16.h gemv_utils.h hip_compat.h .PHONY: all clean all: $(TARGET) # 根据 CXX 变量判断编译器类型 ifneq (,$(findstring hipcc,$(CXX))) # HIPCC 编译 $(TARGET): $(SRC) $(DEP) $(CXX) $(CXX_FLAGS) $(HIPCC_FLAGS) $< -o $@ else # NVCC 编译 $(TARGET): $(SRC) $(DEP) $(CXX) $(CXX_FLAGS) $(NVCC_FLAGS) $< -o $@ endif clean: rm -f $(TARGET)