From 45d520f91367e32ed0b46c5e3fef821b20c4de5e Mon Sep 17 00:00:00 2001 From: Dave Date: Thu, 14 Mar 2024 18:07:47 -0400 Subject: [PATCH] fix: OSX Build Files for llama.cpp (#1836) bot ate my changes, seperate branch --- Makefile | 4 ++-- backend/cpp/llama/Makefile | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index bd565db5..fcebcadc 100644 --- a/Makefile +++ b/Makefile @@ -463,7 +463,7 @@ backend-assets/grpc/llama: backend-assets/grpc sources/go-llama/libbinding.a $(GOCMD) build -ldflags "$(LD_FLAGS)" -tags "$(GO_TAGS)" -o backend-assets/grpc/llama ./backend/go/llm/llama/ # TODO: every binary should have its own folder instead, so can have different implementations ifeq ($(BUILD_TYPE),metal) - cp backend/cpp/llama/llama.cpp/ggml-metal.metal backend-assets/grpc/ + cp backend/cpp/llama/llama.cpp/ggml-common.h backend-assets/grpc/ endif ## BACKEND CPP LLAMA START @@ -494,7 +494,7 @@ backend-assets/grpc/llama-cpp: backend-assets/grpc backend/cpp/llama/grpc-server cp -rfv backend/cpp/llama/grpc-server backend-assets/grpc/llama-cpp # TODO: every binary should have its own folder instead, so can have different metal implementations ifeq ($(BUILD_TYPE),metal) - cp backend/cpp/llama/llama.cpp/build/bin/ggml-metal.metal backend-assets/grpc/ + cp backend/cpp/llama/llama.cpp/build/bin/ggml-common.h backend-assets/grpc/ endif backend-assets/grpc/llama-ggml: backend-assets/grpc sources/go-llama-ggml/libbinding.a diff --git a/backend/cpp/llama/Makefile b/backend/cpp/llama/Makefile index da80bf12..3fa84a4a 100644 --- a/backend/cpp/llama/Makefile +++ b/backend/cpp/llama/Makefile @@ -18,6 +18,9 @@ else ifeq ($(BUILD_TYPE),clblas) # 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+=-DLLAMA_HIPBLAS=ON +# If it's OSX, embed the metal library for fewer moving parts. +else ifeq ($(BUILD_TYPE),metal) + CMAKE_ARGS+=-DLLAMA_METAL_EMBED_LIBRARY=ON endif ifeq ($(BUILD_TYPE),sycl_f16)