Support for NVIDIA GPU on parakeet models #494
Replies: 3 comments 7 replies
|
Hi @hubertkirch check out the library cjpais/transcribe-rs, if we get it working there as a first step it'll be helpful to bundle here |
|
Just wanted to say that I came here specifically to see whether more people are experiencing this. I have a MacBook Air M1 for personal use and a fairly beefy HP EliteBook for work, with a 12th gen Intel i7-12850HX and an RTX A3000. On my MacBook Air it is almost instant, and I genuinely enjoy showing Handy to people because of how fast it is, it almost feels like a party trick. But when I want to use it for actual work on my HP EliteBook, it is so slow that it really takes me out of my flow. I still really prefer Handy because I like that it provides these open-source models for ASR, and it is such a nice and simple open-source free package, so thank you for that. In the README and elsewhere in the repo it is mentioned that running on the CPU should be enough, which is why this difference is so surprising. On my laptop, the transcription speed is maybe around 2x real time, while on my MacBook it is almost instant. |
Building Handy with CUDA Support: 3x Faster Transcription (Non-Developer Guide)A Little ContextI'm not a developer. My background is in IT and software testing — mostly Microsoft technologies — and I'd never touched C++, Rust, React, Tauri, etc before this. I now work at a medical practice where fast, accurate transcription matters, so I spent time evaluating about half a dozen open-source speech-to-text programs. Handy stood out immediately for its clean, simple UI and the fact that it just works. It quickly became my daily driver. Thank you cjpais for building such a nice piece of software! The one thing I wanted was better GPU utilization. My RTX 4060 Ti 16GB was barely being tapped during transcription. So with the help of Claude, I worked through building Handy from source with CUDA support over the course of about 3.5 hours. We hit six separate build errors along the way — each one a different layer of the toolchain — and solved them all. I have zero C++ or Rust experience, so this was entirely an exercise in persistence and good AI-assisted troubleshooting. In full disclosure, Claude even generated this preface and build guide. Credit where credit is due. The results speak for themselves. I'm hoping the developer might consider making CUDA a supported build option so other NVIDIA GPU users can benefit without going through this process. I also plan to upgrade to an RTX 5070 Ti soon and will post updated benchmarks when that happens. Benchmark ResultsTest setup: A 3-minute, 10-second audio clip of a physician reading a surgical operative report — roughly 570 words of dense medical terminology. Audio was played back through a speaker to simulate real-world dictation conditions. The same clip was used across all tests to eliminate variables.
From over a minute down to under 20 seconds — a 3.2x speedup with the GPU fully engaged. My Setup
Note: This is a bleeding-edge toolchain. Some of the issues below (particularly VS 2026 and CUDA 13.1 compatibility) may not apply if you're on VS 2022 + CUDA 12.x. What I Changed1. Swap Vulkan for CUDA in transcribe-rsClone transcribe-rs locally and change the whisper feature flag in Then point Handy's 2. Set Environment VariablesThese must be set before every build (in every new terminal session): Adjust
3. BuildFirst build takes 10–15 minutes (79 CUDA kernels). Subsequent builds use the cache and are much faster. The release build produces a standalone exe at Note: The release build may fail at the code-signing/bundling step with
Build Errors and SolutionsI hit six issues during the build. Here's each one and how we solved it. 1. libclang.dll Not FoundError: Why: The Fix: Set 2. CMake Generator Incompatibility (VS 2026)Error: Why: The Rust Fix: Force Ninja as the generator: Ninja must be installed and on PATH. It's often bundled with CMake, or install via 3. VS 2026 Unrecognized by nvccError: Why: CUDA 13.1's nvcc doesn't recognize the VS 2026 compiler version and misidentifies it as ancient. Fix: 4. Deprecated CUDA ArchitecturesError: Why: CUDA 13.1 dropped support for Maxwell (sm_52) and Pascal (sm_61), but whisper.cpp defaults to those older architectures. Fix: Set your specific GPU architecture: This also cuts compile time ~50% by only targeting your GPU. Forward compatibility note: The binary embeds both native code (SASS) and intermediate code (PTX). Future GPUs can JIT-compile the PTX at first launch, so the binary is forward-compatible with a small one-time startup delay. 5. C++17 Required by CCCL/CUBError: Why: CUDA 13.1's CCCL libraries enforce C++17 as a minimum standard, but whisper.cpp doesn't set Fix: 6. Missing Feature FlagsError: Why: When switching to the local path dependency, it's easy to accidentally drop feature flags from the dependency line. Fix: Make sure all original features are listed in Complete Build Steps (Copy-Paste Ready)Suggestions for the Project
Built on March 1, 2026. I'll update this post with RTX 5070 Ti benchmarks when I have the card. |
Uh oh!
There was an error while loading. Please reload this page.
First of all, the application is truly brilliant, and thank you for creating, maintaining and improving. Excellent job!
In terms of a new feature: support parakeet with GPU acceleration. The application works wonderfully on my Macbook Air M4, however, my development desktop with a 5090 still runs parakeet on the CPU, which (of course) is notably slower.
If you point me in the right direction on how to do the implementation, I would be happy to create the PR myself.
All reactions