Skip to content

Commit b088184

Browse files
authored
attempt adding ROCM hipblas
1 parent b08b371 commit b088184

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

Makefile

+20-2
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ ifneq ($(shell grep -e "Arch Linux" -e "ID_LIKE=arch" /etc/os-release 2>/dev/nul
2020
ARCH_ADD = -lcblas
2121
endif
2222

23-
CCV := $(shell $(CC) --version | head -n 1)
24-
CXXV := $(shell $(CXX) --version | head -n 1)
23+
CCV = $(shell $(CC) --version | head -n 1)
24+
CXXV = $(shell $(CXX) --version | head -n 1)
2525

2626
# Mac OS + Arm can report x86_64
2727
# ref: https://github.com/ggerganov/whisper.cpp/issues/66#issuecomment-1282546789
@@ -155,6 +155,24 @@ ggml_v2-cuda.o: otherarch/ggml_v2-cuda.cu otherarch/ggml_v2-cuda.h
155155
$(NVCC) $(NVCCFLAGS) $(CXXFLAGS) $(CUBLAS_CXXFLAGS) -Wno-pedantic -c $< -o $@
156156
endif # LLAMA_CUBLAS
157157

158+
ifdef LLAMA_HIPBLAS
159+
ROCM_PATH ?= /opt/rocm
160+
CC := $(ROCM_PATH)/llvm/bin/clang
161+
CXX := $(ROCM_PATH)/llvm/bin/clang++
162+
GPU_TARGETS = gfx900 gfx906 gfx908 gfx90a gfx1030
163+
LLAMA_CUDA_DMMV_X ?= 32
164+
LLAMA_CUDA_DMMV_Y ?= 1
165+
CFLAGS += -DGGML_USE_HIPBLAS -DGGML_USE_CUBLAS $(shell $(ROCM_PATH)/bin/hipconfig -C)
166+
CXXFLAGS += -DGGML_USE_HIPBLAS -DGGML_USE_CUBLAS $(shell $(ROCM_PATH)/bin/hipconfig -C)
167+
LDFLAGS += -L/opt/rocm/lib -Wl,-rpath=$(ROCM_PATH)/lib -lhipblas -lamdhip64
168+
OBJS += ggml-cuda.o
169+
ggml-cuda.o: CXXFLAGS += $(addprefix --offload-arch=,$(GPU_TARGETS))
170+
ggml-cuda.o: CXXFLAGS += -DGGML_CUDA_DMMV_X=$(LLAMA_CUDA_DMMV_X)
171+
ggml-cuda.o: CXXFLAGS += -DGGML_CUDA_DMMV_Y=$(LLAMA_CUDA_DMMV_Y)
172+
ggml-cuda.o: ggml-cuda.cu ggml-cuda.h
173+
$(CXX) $(CXXFLAGS) -x hip -c -o $@ $<
174+
endif # LLAMA_HIPBLAS
175+
158176
ifdef LLAMA_METAL
159177
CFLAGS += -DGGML_USE_METAL -DGGML_METAL_NDEBUG
160178
CXXFLAGS += -DGGML_USE_METAL

0 commit comments

Comments
 (0)