We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Hello!
I'm getting "invalid hardware instruction" on my laptop when running the example code: cargo run --example audio_transcription.
cargo run --example audio_transcription
But when I just run make in the whisper.cpp folder, then main -m models/ggml-tiny-q5_1.bin -f sample/jfk.wav without errors.
make
whisper.cpp
main -m models/ggml-tiny-q5_1.bin -f sample/jfk.wav
So my initial assumption that the problem was the lack of AVX instructions was wrong.
I tried changing build.rs but don't know how to deal with it.
build.rs
How can I correctly change build.rs so that the final result of the compilation matches the launch of the make with which everything works?
cargo run output:
Finished dev [unoptimized + debuginfo] target(s) in 0.04s Running `target/debug/examples/audio_transcription` whisper_init_from_file_with_params_no_state: loading model from './models/ggml-tiny-q5_1.bin' whisper_model_load: loading model whisper_model_load: n_vocab = 51865 whisper_model_load: n_audio_ctx = 1500 whisper_model_load: n_audio_state = 384 whisper_model_load: n_audio_head = 6 whisper_model_load: n_audio_layer = 4 whisper_model_load: n_text_ctx = 448 whisper_model_load: n_text_state = 384 whisper_model_load: n_text_head = 6 whisper_model_load: n_text_layer = 4 whisper_model_load: n_mels = 80 whisper_model_load: ftype = 9 whisper_model_load: qntvr = 1 whisper_model_load: type = 1 (tiny) whisper_model_load: adding 1608 extra tokens whisper_model_load: n_langs = 99 zsh: illegal hardware instruction (core dumped) cargo run --example audio_transcription
lscpu output:
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 36 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Vendor ID: GenuineIntel Model name: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz CPU family: 6 Model: 58 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 Stepping: 9 CPU(s) scaling MHz: 77% CPU max MHz: 3100,0000 CPU min MHz: 1200,0000 BogoMIPS: 4990,23 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts a cpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon peb s bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monit or ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadl ine_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti ssbd ibrs ibpb stibp tpr_shadow flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts vnmi md_clear flush_l1d Virtualization features: Virtualization: VT-x Caches (sum of all): L1d: 64 KiB (2 instances) L1i: 64 KiB (2 instances) L2: 512 KiB (2 instances) L3: 3 MiB (1 instance) NUMA: NUMA node(s): 1 NUMA node0 CPU(s): 0-3 Vulnerabilities: Gather data sampling: Not affected Itlb multihit: KVM: Mitigation: VMX disabled L1tf: Mitigation; PTE Inversion; VMX conditional cache flushes, SMT vulnerable Mds: Mitigation; Clear CPU buffers; SMT vulnerable Meltdown: Mitigation; PTI Mmio stale data: Unknown: No mitigations Retbleed: Not affected Spec rstack overflow: Not affected Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Spectre v2: Mitigation; Retpolines, IBPB conditional, IBRS_FW, STIBP conditional, RSB filling, PB RSB-eIBRS Not affected Srbds: Vulnerable: No microcode Tsx async abort: Not affected
coredump info output:
PID: 88609 (audio_transcrip) UID: 1000 (archuser) GID: 1000 (archuser) Signal: 4 (ILL) Command Line: target/debug/examples/audio_transcription Executable: /home/archuser/dev/neural/whisper-rs/target/debug/examples/audio_transcription Control Group: /user.slice/user-1000.slice/user@1000.service/app.slice/app-org.gnome.Terminal.slice/vte-spaw> Unit: user@1000.service User Unit: vte-spawn-f981b1ed-138a-4196-9cee-394b85ee46b1.scope Slice: user-1000.slice Owner UID: 1000 (archuser) Boot ID: 3886a41920f5474083fa75f5dc85672f Machine ID: 81f62c4c3a13459294c861aa7fe0b8f9 Storage: /var/lib/systemd/coredump/core.audio_transcrip.1000.3886a41920f5474083fa75f5dc85672f.88609.17> Size on Disk: 1.8M Message: Process 88609 (audio_transcrip) of user 1000 dumped core. Stack trace of thread 88609: #0 0x0000558a062e97fd n/a (/home/archuser/dev/neural/whisper-rs/target/debug/examples/audio_tran> ELF object binary architecture: AMD x86-64
coredump debug output:
(gdb) bt #0 ggml_gelu_f32 (x=0) at /home/archuser/dev/neural/whisper-rs/target/debug/build/whisper-rs-sys-c98bdf987d2301ff/out/whisper.cpp/ggml.c:1405 #1 ggml_init (params=...) at /home/archuser/dev/neural/whisper-rs/target/debug/build/whisper-rs-sys-c98bdf987d2301ff/out/whisper.cpp/ggml.c:2231 #2 0x0000558a0630e1e1 in whisper_model_load (loader=loader@entry=0x7ffd27ae4220, wctx=...) at /home/archuser/dev/neural/whisper-rs/target/debug/build/whisper-rs-sys-c98bdf987d2301ff/out/whisper.cpp/whisper.cpp:1312 #3 0x0000558a06314be4 in whisper_init_with_params_no_state (loader=loader@entry=0x7ffd27ae4220, params=params@entry=...) at /home/archuser/dev/neural/whisper-rs/target/debug/build/whisper-rs-sys-c98bdf987d2301ff/out/whisper.cpp/whisper.cpp:3259 #4 0x0000558a06314e53 in whisper_init_from_file_with_params_no_state ( path_model=0x558a06927f60 "./models/ggml-tiny-q5_1.bin", params=...) at /home/archuser/dev/neural/whisper-rs/target/debug/build/whisper-rs-sys-c98bdf987d2301ff/out/whisper.cpp/whisper.cpp:3207 #5 0x0000558a062d4d3f in whisper_rs::whisper_ctx::WhisperContext::new_with_params (path=..., parameters=...) at src/whisper_ctx.rs:33 #6 0x0000558a062cdeb8 in audio_transcription::main () at examples/audio_transcription.rs:12 #7 0x0000558a062cbe9b in core::ops::function::FnOnce::call_once<fn() -> core::result::Result<(), &str>, ()> () at /rustc/a57770440f1ebe5b992551d3bcc489ae211908d4/library/core/src/ops/function.rs:250 #8 0x0000558a062d020e in std::sys_common::backtrace::__rust_begin_short_backtrace<fn() -> core::result::Result<(), &str>, core::result::Result<(), &str>> (f=0x558a062cde70 <audio_transcription::main>) at /rustc/a57770440f1ebe5b992551d3bcc489ae211908d4/library/std/src/sys_common/backtrace.rs:154 #9 0x0000558a062d0001 in std::rt::lang_start::{closure#0}<core::result::Result<(), &str>> () at /rustc/a57770440f1ebe5b992551d3bcc489ae211908d4/library/std/src/rt.rs:167 #10 0x0000558a063485d7 in core::ops::function::impls::{impl#2}::call_once<(), (dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe)> () at library/core/src/ops/function.rs:284 #11 std::panicking::try::do_call<&(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::pa--Type <RET> for more, q to quit, c to continue without paging-- nic::unwind_safe::RefUnwindSafe), i32> () at library/std/src/panicking.rs:552 #12 std::panicking::try<i32, &(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe)> () at library/std/src/panicking.rs:516 #13 std::panic::catch_unwind<&(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe), i32> () at library/std/src/panic.rs:142 #14 std::rt::lang_start_internal::{closure#2} () at library/std/src/rt.rs:148 #15 std::panicking::try::do_call<std::rt::lang_start_internal::{closure_env#2}, isize> () at library/std/src/panicking.rs:552 #16 std::panicking::try<isize, std::rt::lang_start_internal::{closure_env#2}> () at library/std/src/panicking.rs:516 #17 std::panic::catch_unwind<std::rt::lang_start_internal::{closure_env#2}, isize> () at library/std/src/panic.rs:142 #18 std::rt::lang_start_internal () at library/std/src/rt.rs:148 #19 0x0000558a062cffda in std::rt::lang_start<core::result::Result<(), &str>> ( main=0x558a062cde70 <audio_transcription::main>, argc=1, argv=0x7ffd27ae5158, sigpipe=0) at /rustc/a57770440f1ebe5b992551d3bcc489ae211908d4/library/std/src/rt.rs:166 #20 0x0000558a062ced5e in main () #21 0x00007f80c8933cd0 in ?? () from /usr/lib/libc.so.6 #22 0x00007f80c8933d8a in __libc_start_main () from /usr/lib/libc.so.6 #23 0x0000558a062c4c05 in _start ()
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Hello!
I'm getting "invalid hardware instruction" on my laptop when running the example code:
cargo run --example audio_transcription
.But when I just run
make
in thewhisper.cpp
folder, thenmain -m models/ggml-tiny-q5_1.bin -f sample/jfk.wav
without errors.So my initial assumption that the problem was the lack of AVX instructions was wrong.
I tried changing
build.rs
but don't know how to deal with it.How can I correctly change
build.rs
so that the final result of the compilation matches the launch of themake
with which everything works?cargo run output:
lscpu output:
coredump info output:
coredump debug output:
The text was updated successfully, but these errors were encountered: