-
-
Notifications
You must be signed in to change notification settings - Fork 15k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
whisper-cpp: 1.7.2 -> 1.7.4 #382394
base: master
Are you sure you want to change the base?
whisper-cpp: 1.7.2 -> 1.7.4 #382394
Conversation
85c4b79
to
81ad620
Compare
|
try removing
I bisected the issue to ggerganov/whisper.cpp@746bf25 but that commit is Tolstoy-esque. |
81ad620
to
366dd5d
Compare
On Darwin seems to be working, so I will only remove it for Linux |
366dd5d
to
bd482fc
Compare
|
It seems to default to true. I forced it off like this ++ optionals (effectiveStdenv.hostPlatform.isx86 && !effectiveStdenv.hostPlatform.isStatic) [
(cmakeBool "GGML_BACKEND_DL" true)
(cmakeBool "GGML_CPU_ALL_VARIANTS" true)
(cmakeBool "WHISPER_BUILD_EXAMPLES" false)
] But then we run afoul of assumptions about the
I think this is moot anyway since the I've spent a silly amount of time trying to track down this issue, and my best understanding is that Nix is invoking
int ggml_cpu_has_ssse3(void) {
#if defined(__SSSE3__)
return 1;
#else
return 0;
#endif
} Which I would expect to be exported, and can only conclude that the CMake complexity is somehow preventing that. Perhaps @aviallon might have some more knowledge. |
@hughobrien yes, I did try to upgrade to 1.7.4 |
@@ -126,6 +123,7 @@ effectiveStdenv.mkDerivation (finalAttrs: { | |||
(cmakeBool "GGML_NATIVE" false) | |||
(cmakeBool "BUILD_SHARED_LIBS" (!effectiveStdenv.hostPlatform.isStatic)) | |||
] | |||
++ optional effectiveStdenv.hostPlatform.isDarwin (cmakeBool "WHISPER_BUILD_EXAMPLES" true) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
++ optional effectiveStdenv.hostPlatform.isDarwin (cmakeBool "WHISPER_BUILD_EXAMPLES" true) | |
++ [ (cmakeBool "WHISPER_BUILD_EXAMPLES" effectiveStdenv.hostPlatform.isDarwin) ] |
If we build without the examples then unfortunately we don't get the core utility. However we do get a couple of pre-defined CPU libraries (presumably for dynamic backend selection). The missing exports are present in these /data/whisper.cpp/build/bin master
❯ ll
.rwxr-xr-x 386k hugh 18 Feb 20:12 libggml-cpu-alderlake.so
.rwxr-xr-x 386k hugh 18 Feb 20:12 libggml-cpu-haswell.so
.rwxr-xr-x 407k hugh 18 Feb 20:12 libggml-cpu-icelake.so
.rwxr-xr-x 398k hugh 18 Feb 20:12 libggml-cpu-sandybridge.so
.rwxr-xr-x 657k hugh 18 Feb 20:12 libggml-cpu-sapphirerapids.so
.rwxr-xr-x 407k hugh 18 Feb 20:12 libggml-cpu-skylakex.so Note no useful CLI utils. /data/whisper.cpp/build/bin master
❯ nm -D libggml-cpu-sapphirerapids.so | grep ggml_cp
000000000004f8b0 T ggml_cpu_extra_compute_forward
000000000004f930 T ggml_cpu_extra_work_size
00000000000311e0 T ggml_cpu_get_sve_cnt
00000000000310f0 T ggml_cpu_has_amx_int8
0000000000031110 T ggml_cpu_has_arm_fma
0000000000031080 T ggml_cpu_has_avx
00000000000310a0 T ggml_cpu_has_avx2
00000000000310b0 T ggml_cpu_has_avx512
00000000000310e0 T ggml_cpu_has_avx512_bf16
00000000000310c0 T ggml_cpu_has_avx512_vbmi
00000000000310d0 T ggml_cpu_has_avx512_vnni
0000000000031090 T ggml_cpu_has_avx_vnni
00000000000311b0 T ggml_cpu_has_dotprod
0000000000031130 T ggml_cpu_has_f16c
0000000000031100 T ggml_cpu_has_fma
0000000000031140 T ggml_cpu_has_fp16_va
0000000000031160 T ggml_cpu_has_llamafile
00000000000311d0 T ggml_cpu_has_matmul_int8
00000000000311a0 T ggml_cpu_has_neon
0000000000031120 T ggml_cpu_has_riscv_v
0000000000031170 T ggml_cpu_has_sse3
0000000000031180 T ggml_cpu_has_ssse3
00000000000311c0 T ggml_cpu_has_sve
0000000000031190 T ggml_cpu_has_vsx
0000000000031150 T ggml_cpu_has_wasm_simd
00000000000313b0 T ggml_cpu_init |
Breaking changes:
whisper-*
overwhisper-cpp-*
naming convention; the reasonbeing: whisper : rename binaries + fix install ggerganov/whisper.cpp#2648
whisper-cli
Notes:
the Linux side
Things done:
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.