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