Conversation
|
Perhaps the added bloat is not bad enough to just integrate everything? Not sure how big the cuda integration would be. So perhaps enabling by default the cuda/vulkan features in case people want to use them. |
|
I would not worry about the binary size these days. It would be great if someone could just pick the backend via env var. |
That would work, until you also want to have So I'm not actually sure what is the best way. |
- Remove CUDA backend support (Vulkan works on both AMD and NVIDIA) - Add Dockerfile.build-vulkan for CI builds using LunarG Vulkan SDK - Update release workflow to build both CPU-only and Vulkan binaries - Simplify configuration: WHISPER_BACKEND now supports cpu/vulkan only
20e7e4e to
e206f73
Compare
- Enable vulkan feature by default for GPU acceleration - Quick check CI uses --no-default-features (Vulkan tested in release) - Simplified release to single binary with GPU support
- Default features = [] (CPU-only, compiles everywhere) - Release binary built with Vulkan via Dockerfile - CI checks/tests work without Vulkan SDK
|
@sevos But vulkan should also be good enough for nvidia users. So currently the artifact created is built in a docker container with vulkan enabled. Let me know if this is something which seems right or not |
|
Just to note that I have installed @structwafel's code and its working well for me. |
Summary
This pr adds the ability to create a binary with the extra features:
whisper/vulkan.Using vulkan allows amd cards to have much faster STT, which allows for bigger models.
I tried using
hipblasbut it had to compile/preprocess the model on each run,vulkanruns instantly.Type of Change
Changes Made
Testing
cargo testcargo fmtandcargo clippy)Additional Notes
I thought it seemed unnecessary to make the cpu-only binary have the extra whisper-rs feature.
Binary becomes 28M vs 6M on my machine.
Which is why it is under the feature flag.
Then the question becomes if we should put a second binary target to
Cargo.toml? or just keep the same binary namewaysttfor the one with vulkan runtime.aur & CI/CD
Have not made any modifications for the aur and ci/cd. If feature is accepted, will make necessary changes + additions (waystt-vulkan-bin directory in /aur)
Checklist