Whisper.cpp 默认不支持 CUDA,如何开启 GPU 加速?
很多开发者在初次接触 whisper.cpp 时都会遇到一个问题:为什么明明有 NVIDIA 显卡,推理速度却和 CPU 差不多?
核心结论很明确:默认编译版本仅支持 CPU。若需利用 GPU 进行加速,必须在编译时显式启用 CUDA 支持,或直接下载官方提供的预编译版本。
编译选项对比
1. 默认编译(纯 CPU)
这是最基础的构建方式,无需额外依赖,但性能受限。
# Linux/Mac
make
# Windows (CMake)
cmake ..
cmake --build . --config Release
生成的可执行文件如 whisper-server.exe、main.exe 等仅能调用 CPU 资源。虽然兼容性最好,但在处理长音频或高并发场景时,延迟会明显增加。
2. 启用 CUDA 编译(GPU 加速)
通过添加特定参数,可以链接 CUDA 库,从而利用 NVIDIA 显卡的算力。
# Windows (CMake)
cmake .. -DWHISPER_CUBLAS=ON
cmake --build . --config Release
# Linux/Mac
make WHISPER_CUBLAS=1
注意:
- 需要安装完整的 CUDA Toolkit。
- 生成的二进制文件体积会显著增大(约 15-25 MB),且依赖
cublas64_12.dll等动态库。 - 支持混合模式,可通过
--no-gpu参数强制回退到 CPU。
如何验证是否成功启用 CUDA?
方法一:查看启动日志(推荐)
运行程序并尝试加载模型,观察控制台输出。
✅ 成功标志:
ggml_cuda_init: found 1 CUDA devices: Device 0: NVIDIA GeForce RTX 4060
whisper_model_load: CUDA0 total size = 487.01 MB
❌ 失败标志:
whisper_backend_init_gpu: no GPU found
whisper_model_load: CPU total

