From dded27dcfa753d3198469ad8e52bde794d0c43a8 Mon Sep 17 00:00:00 2001 From: jmorganca Date: Wed, 12 Jun 2024 12:18:40 -0700 Subject: [PATCH] fix metal --- llama/ggml-metal-darwin_arm64.m | 4 ++-- llama/llama.go | 4 ++-- llama/metal.c | 4 ++-- llama/patches/04-ggml-metal.diff | 15 +++++++++++++++ 4 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 llama/patches/04-ggml-metal.diff diff --git a/llama/ggml-metal-darwin_arm64.m b/llama/ggml-metal-darwin_arm64.m index b56c3604..400d43f4 100644 --- a/llama/ggml-metal-darwin_arm64.m +++ b/llama/ggml-metal-darwin_arm64.m @@ -377,8 +377,8 @@ static struct ggml_metal_context * ggml_metal_init(int n_cb) { #if GGML_METAL_EMBED_LIBRARY GGML_METAL_LOG_INFO("%s: using embedded metal library\n", __func__); - extern const char ggml_metallib_start[]; - extern const char ggml_metallib_end[]; + extern const char *ggml_metallib_start; + extern const char *ggml_metallib_end; NSString * src = [[NSString alloc] initWithBytes:ggml_metallib_start length:(ggml_metallib_end-ggml_metallib_start) encoding:NSUTF8StringEncoding]; #else diff --git a/llama/llama.go b/llama/llama.go index d840de9d..55501598 100644 --- a/llama/llama.go +++ b/llama/llama.go @@ -37,8 +37,8 @@ package llama #include "sampling_ext.h" bool llamaProgressCallback(float progress, void *user_data); -extern const char* ggml_metallib_start; -extern const char* ggml_metallib_end; +extern const char *ggml_metallib_start; +extern const char *ggml_metallib_end; */ import "C" import ( diff --git a/llama/metal.c b/llama/metal.c index c466c342..3d41a75d 100644 --- a/llama/metal.c +++ b/llama/metal.c @@ -1,2 +1,2 @@ -const char* ggml_metallib_start = 0; -const char* ggml_metallib_end = 0; +const char *ggml_metallib_start; +const char *ggml_metallib_end; diff --git a/llama/patches/04-ggml-metal.diff b/llama/patches/04-ggml-metal.diff new file mode 100644 index 00000000..7ee48cf5 --- /dev/null +++ b/llama/patches/04-ggml-metal.diff @@ -0,0 +1,15 @@ +diff --git a/llama/ggml-metal-darwin_arm64.m b/llama/ggml-metal-darwin_arm64.m +index b56c3604..400d43f4 100644 +--- a/llama/ggml-metal-darwin_arm64.m ++++ b/llama/ggml-metal-darwin_arm64.m +@@ -377,8 +377,8 @@ static void ggml_metal_log(enum ggml_log_level level, const char * format, ...){ + #if GGML_METAL_EMBED_LIBRARY + GGML_METAL_LOG_INFO("%s: using embedded metal library\n", __func__); + +- extern const char ggml_metallib_start[]; +- extern const char ggml_metallib_end[]; ++ extern const char *ggml_metallib_start; ++ extern const char *ggml_metallib_end; + + NSString * src = [[NSString alloc] initWithBytes:ggml_metallib_start length:(ggml_metallib_end-ggml_metallib_start) encoding:NSUTF8StringEncoding]; + #else