|
@@ -0,0 +1,32 @@
|
|
|
+From 1e3bc523d8053a77df3ac7126a84d0297ee97ef6 Mon Sep 17 00:00:00 2001
|
|
|
+From: Kylin <56434533+KyL0N@users.noreply.github.com>
|
|
|
+Date: Tue, 22 Aug 2023 15:14:23 +0800
|
|
|
+Subject: [PATCH] ggml : support CUDA's half type for aarch64(#1455) (#2670)
|
|
|
+
|
|
|
+* ggml: support CUDA's half type for aarch64(#1455)
|
|
|
+support CUDA's half type for aarch64 in ggml_fp16_t definition
|
|
|
+
|
|
|
+* ggml: use __CUDACC__ to recognise nvcc compiler
|
|
|
+---
|
|
|
+ ggml.h | 5 +++--
|
|
|
+ 1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
+
|
|
|
+diff --git a/ggml.h b/ggml.h
|
|
|
+index 544ad2d..0ec7ec5 100644
|
|
|
+--- a/ggml.h
|
|
|
++++ b/ggml.h
|
|
|
+@@ -259,8 +259,9 @@
|
|
|
+ extern "C" {
|
|
|
+ #endif
|
|
|
+
|
|
|
+-#ifdef __ARM_NEON
|
|
|
+- // we use the built-in 16-bit float type
|
|
|
++#if defined(__ARM_NEON) && defined(__CUDACC__)
|
|
|
++ typedef half ggml_fp16_t;
|
|
|
++#elif defined(__ARM_NEON)
|
|
|
+ typedef __fp16 ggml_fp16_t;
|
|
|
+ #else
|
|
|
+ typedef uint16_t ggml_fp16_t;
|
|
|
+--
|
|
|
+2.39.2 (Apple Git-143)
|
|
|
+
|