From 7f61d397d575b34b2dcdb4911ffe42deda6491ba Mon Sep 17 00:00:00 2001 From: Richard Palethorpe Date: Thu, 24 Apr 2025 09:27:17 +0100 Subject: [PATCH] fix(stablediffusion-ggml): Build with DSD CUDA, HIP and Metal flags (#5236) Signed-off-by: Richard Palethorpe --- Makefile | 4 ++-- backend/go/image/stablediffusion-ggml/Makefile | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 93b5de2c..7917b119 100644 --- a/Makefile +++ b/Makefile @@ -126,9 +126,9 @@ ifeq ($(BUILD_TYPE),openblas) endif ifeq ($(BUILD_TYPE),cublas) - CGO_LDFLAGS+=-lcublas -lcudart -L$(CUDA_LIBPATH) + CGO_LDFLAGS+=-lcublas -lcudart -L$(CUDA_LIBPATH) -L$(CUDA_LIBPATH)/stubs/ -lcuda export GGML_CUDA=1 - CGO_LDFLAGS_WHISPER+=-L$(CUDA_LIBPATH)/stubs/ -lcuda -lcufft + CGO_LDFLAGS_WHISPER+=-lcufft endif ifeq ($(BUILD_TYPE),vulkan) diff --git a/backend/go/image/stablediffusion-ggml/Makefile b/backend/go/image/stablediffusion-ggml/Makefile index a59037b7..07818f7a 100644 --- a/backend/go/image/stablediffusion-ggml/Makefile +++ b/backend/go/image/stablediffusion-ggml/Makefile @@ -20,7 +20,7 @@ CMAKE_ARGS+=-DBUILD_SHARED_LIBS=OFF # If build type is cublas, then we set -DGGML_CUDA=ON to CMAKE_ARGS automatically ifeq ($(BUILD_TYPE),cublas) - CMAKE_ARGS+=-DGGML_CUDA=ON + CMAKE_ARGS+=-DSD_CUDA=ON # If build type is openblas then we set -DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS # to CMAKE_ARGS automatically else ifeq ($(BUILD_TYPE),openblas) @@ -30,14 +30,14 @@ else ifeq ($(BUILD_TYPE),clblas) CMAKE_ARGS+=-DGGML_CLBLAST=ON -DCLBlast_DIR=/some/path # If it's hipblas we do have also to set CC=/opt/rocm/llvm/bin/clang CXX=/opt/rocm/llvm/bin/clang++ else ifeq ($(BUILD_TYPE),hipblas) - CMAKE_ARGS+=-DGGML_HIP=ON + CMAKE_ARGS+=-DSD_HIPBLAS=ON # If it's OSX, DO NOT embed the metal library - -DGGML_METAL_EMBED_LIBRARY=ON requires further investigation # But if it's OSX without metal, disable it here else ifeq ($(OS),Darwin) ifneq ($(BUILD_TYPE),metal) - CMAKE_ARGS+=-DGGML_METAL=OFF + CMAKE_ARGS+=-DSD_METAL=OFF else - CMAKE_ARGS+=-DGGML_METAL=ON + CMAKE_ARGS+=-DSD_METAL=ON CMAKE_ARGS+=-DGGML_METAL_EMBED_LIBRARY=ON TARGET+=--target ggml-metal endif