]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commitdiff
ggml : add F16C CPU flag check
authorGeorgi Gerganov <redacted>
Tue, 6 Dec 2022 19:56:56 +0000 (21:56 +0200)
committerGeorgi Gerganov <redacted>
Tue, 6 Dec 2022 19:56:56 +0000 (21:56 +0200)
ggml.c
ggml.h
whisper.cpp

diff --git a/ggml.c b/ggml.c
index 67e1977b1680125e2ade58bbd9200e0f786b2a7b..7d9a38fa7490bdffb2d13c4d76e8b3da48d69fb3 100644 (file)
--- a/ggml.c
+++ b/ggml.c
@@ -8289,6 +8289,14 @@ int ggml_cpu_has_neon(void) {
 #endif
 }
 
+int ggml_cpu_has_f16c(void) {
+#if defined(__F16C__)
+    return 1;
+#else
+    return 0;
+#endif
+}
+
 int ggml_cpu_has_fp16_va(void) {
 #if defined(__ARM_FEATURE_FP16_VECTOR_ARITHMETIC)
     return 1;
diff --git a/ggml.h b/ggml.h
index 3e4e962a69ec166538a817876f2cbe0c391a89f3..6dd5d04462e5d406704fb20804bd4111a7158a47 100644 (file)
--- a/ggml.h
+++ b/ggml.h
@@ -727,6 +727,7 @@ int ggml_cpu_has_avx(void);
 int ggml_cpu_has_avx2(void);
 int ggml_cpu_has_avx512(void);
 int ggml_cpu_has_neon(void);
+int ggml_cpu_has_f16c(void);
 int ggml_cpu_has_fp16_va(void);
 int ggml_cpu_has_wasm_simd(void);
 int ggml_cpu_has_blas(void);
index 42467efe693fa62e2c420e438ceba8a6eed56966..abfc44fee916b059b51c9381fbe226987e978eb4 100644 (file)
@@ -2372,6 +2372,7 @@ const char * whisper_print_system_info(void) {
     s += "AVX2 = "      + std::to_string(ggml_cpu_has_avx2())      + " | ";
     s += "AVX512 = "    + std::to_string(ggml_cpu_has_avx512())    + " | ";
     s += "NEON = "      + std::to_string(ggml_cpu_has_neon())      + " | ";
+    s += "F16C = "      + std::to_string(ggml_cpu_has_f16c())      + " | ";
     s += "FP16_VA = "   + std::to_string(ggml_cpu_has_fp16_va())   + " | ";
     s += "WASM_SIMD = " + std::to_string(ggml_cpu_has_wasm_simd()) + " | ";
     s += "BLAS = "      + std::to_string(ggml_cpu_has_blas())      + " | ";