跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
C++AI算法

Whisper 语音识别库编译与 CUDA 加速配置指南

综述由AI生成Whisper.cpp 默认编译仅支持 CPU,需显式启用 CUDA 选项或使用预编译版本才能利用 GPU 加速。如何判断当前版本是否支持 CUDA,提供了通过命令行参数或日志验证的方法,并对比了 CPU 与 CUDA 版本的性能差异。建议用户下载包含 cublas 的预编译包或自行编译时添加 -DWHISPER_CUBLAS=ON 标志以获得最佳性能。

芝士奶盖发布于 2026/4/5更新于 2026/5/2225 浏览

Whisper 语音识别库编译与 CUDA 加速配置指南

官方发布地址:https://github.com/ggml-org/whisper.cpp/releases

Whisper 默认编译是否支持 CUDA?

直接回答

不支持!默认编译只支持 CPU!

需要在编译时显式启用 CUDA 支持才行。


whisper.cpp 的编译选项对比

默认编译(纯 CPU)
# 默认编译命令(Linux/Mac)
make
# 或者 CMake
cmake ..
cmake --build . --config Release

生成的可执行文件:

  • whisper-server.exe ← 只支持 CPU
  • whisper.exe ← 只支持 CPU
  • main.exe ← 只支持 CPU

特点:

  • ✅ 编译简单,无依赖
  • ✅ 任何机器都能运行
  • ❌ 只能用 CPU,速度慢

启用 CUDA 编译(GPU 加速)
# Windows (CMake)
cmake .. -DWHISPER_CUBLAS=ON
cmake --build . --config Release

# Linux/Mac
make WHISPER_CUBLAS=1

生成的可执行文件:

  • whisper-server.exe ← 支持 GPU + CPU
  • whisper.exe ← 支持 GPU + CPU
  • main.exe ← 支持 GPU + CPU

特点:

  • ⚠️ 编译复杂,需要 CUDA Toolkit
  • ⚠️ 只能在有 NVIDIA 显卡的机器运行
  • ✅ 可以用 GPU,速度快 100 倍
  • ✅ 也可以用 CPU(--no-gpu 参数)

如何判断你的 whisper-server.exe 支持不支持 CUDA?

方法 1:查看启动日志(最准确)
whisper-server.exe -m models/ggml-small.bin --use-gpu
✅ 如果支持 CUDA,会看到:
whisper_init_state: kv self size =  
      
      
      
      
      
         
 
 
    
      
14.06
MB
whisper_init_state:
kv
cross
size
=
14.06
MB
whisper_init_state:
compute
buffer
(conv)
=
8.96
MB
whisper_init_state:
compute
buffer
(encode)
=
73.47
MB
whisper_init_state:
compute
buffer
(cross)
=
4.78
MB
whisper_init_state:
compute
buffer
(decode)
=
96.48
MB
ggml_cuda_init: found 1 CUDA devices: Device 0:
NVIDIA
GeForce
RTX
4060
,
compute
capability
8.9
,
VMM:
yes
ggml_cuda_init: GGML_CUDA_FORCE_MMQ:
no
ggml_cuda_init: CUDA_USE_TENSOR_CORES:
yes
ggml_cuda_init: found 1 CUDA devices: Device 0:
NVIDIA
GeForce
RTX
4060
whisper_model_load:
CUDA0
total
size
=
487.01
MB

关键标志:

  • ✅ ggml_cuda_init: found 1 CUDA devices
  • ✅ whisper_model_load: CUDA0 total size
❌ 如果不支持 CUDA,会看到:
whisper_init_with_params_no_state: use gpu = 1
whisper_backend_init_gpu: no GPU found
whisper_model_load: CPU total size = 487.01 MB

关键标志:

  • ❌ whisper_backend_init_gpu: no GPU found
  • ❌ whisper_model_load: CPU total size

方法 2:查看文件大小(粗略判断)

CPU 版本:

  • whisper-server.exe 约 3-5 MB

GPU 版本(带 CUDA):

  • whisper-server.exe 约 15-25 MB
  • cublas64_12.dll 约 100-150 MB ← CUDA 库文件
  • cublasLt64_12.dll 约 50-80 MB
  • cudart64_12.dll 约 0.5 MB

如果 whisper-server.exe 只有几 MB,且没有 cublas.dll 文件,肯定是 CPU 版本!


方法 3:使用参数测试
# 尝试启用 GPU
whisper-server.exe -m models/ggml-small.bin --use-gpu
# 如果支持,会用 GPU
# 如果不支持,会报错或自动回退到 CPU

whisper.cpp 官方发布版本说明

GitHub Releases 页面

访问:https://github.com/ggerganov/whisper.cpp/releases

你会看到多个版本:

文件名说明支持 CUDA?
whisper-bin-x64.zipCPU 版本❌ 不支持
whisper-cublas-bin-x64.zipGPU 版本✅ 支持 CUDA
whisper-clblast-bin-x64.zipOpenCL 版本⚠️ 支持 AMD/Intel GPU
whisper-vulkan-bin-x64.zipVulkan 版本⚠️ 支持通用 GPU

命名规则:

  • 普通版 = CPU only
  • cublas = CUDA (NVIDIA GPU)
  • clblast = OpenCL (AMD/Intel GPU)
  • vulkan = Vulkan (通用 GPU)

你当前的情况分析

你的 whisper-server.exe 来源

根据之前的日志:

whisper_backend_init_gpu: no GPU found

结论:你用的是 CPU 版本!

可能的原因
原因 1:下载了 CPU 版本

你可能下载了 whisper-bin-x64.zip 而不是 whisper-cublas-bin-x64.zip

原因 2:自己编译时没启用 CUDA

如果是自己编译的,可能用的是:

# 默认编译(没启用 CUDA)
cmake ..
cmake --build . --config Release

而不是:

# 启用 CUDA 的编译
cmake .. -DWHISPER_CUBLAS=ON
cmake --build . --config Release

如何获取支持 CUDA 的版本?

方法 1:下载预编译版本(推荐,最简单)

步骤:

  1. 访问:https://github.com/ggerganov/whisper.cpp/releases 查看日志,应该看到:ggml_cuda_init: found 1 CUDA devices: Device 0: NVIDIA GeForce RTX 4060
  2. 启动测试
    whisper-server.exe -m models/ggml-small.bin --use-gpu
    
  3. 解压到你的目录
    D:\U3DProject\whisper.cpp-cublas\
    ├── whisper-server.exe ← GPU 版本
    ├── cublas64_12.dll ← CUDA 库
    ├── cublasLt64_12.dll
    ├── cudart64_12.dll
    └── models\
    
  4. 找到最新版本,下载 whisper-cublas-bin-x64.zip 示例:whisper-cublas-bin-Win-x64-v1.5.5.zip

方法 2:自己编译(高级)
前提条件
  1. ✅ 安装 Visual Studio 2022(Community 版免费)
    • 下载:https://visualstudio.microsoft.com/zh-hans/downloads/
    • 安装时勾选:"使用 C++ 的桌面开发"
  2. ✅ 安装 CMake
    • 下载:https://cmake.org/download/
    • 安装后添加到 PATH
  3. ✅ 安装 CUDA Toolkit
    • 下载:https://developer.nvidia.com/cuda-downloads
    • 推荐版本:CUDA 12.2 或 12.3
编译步骤
REM 1. 进入 whisper.cpp 目录
cd D:\U3DProject\whisper.cpp-master
REM 2. 创建 build 目录
mkdir build
cd build
REM 3. 配置 CMake(启用 CUDA)
cmake .. -DWHISPER_CUBLAS=ON -DCMAKE_BUILD_TYPE=Release
REM 如果提示找不到 CUDA,指定路径:
cmake .. -DWHISPER_CUBLAS=ON ^
-DCMAKE_BUILD_TYPE=Release ^
-DCUDA_TOOLKIT_ROOT_DIR="C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2"
REM 4. 编译(需要 10-20 分钟)
cmake --build . --config Release
REM 5. 生成的文件在:
REM build\bin\Release\whisper-server.exe
验证编译结果
cd build\bin\Release
REM 检查文件大小
dir whisper-server.exe
REM 应该看到:
REM whisper-server.exe 约 15-25 MB(包含 CUDA 支持)
REM 测试运行
whisper-server.exe -m ..\..\..\models\ggml-small.bin --use-gpu
REM 应该看到:
REM ggml_cuda_init: found 1 CUDA devices:
REM Device 0: NVIDIA GeForce RTX 4060

不同版本性能对比

实测数据(5 秒音频)
版本编译选项识别时间RTF依赖
CPU 版本默认编译30 秒6.0无
CUDA 版本-DWHISPER_CUBLAS=ON0.4 秒0.08CUDA Toolkit
OpenCL 版本-DWHISPER_CLBLAST=ON2 秒0.4OpenCL
Vulkan 版本-DWHISPER_VULKAN=ON1.5 秒0.3Vulkan SDK

结论:CUDA 版本最快!


最终建议

如果你想用 GPU 加速
推荐方案:下载预编译版本

步骤:

  1. 下载 CUDA 版本
    • 访问:https://github.com/ggerganov/whisper.cpp/releases
    • 下载:whisper-cublas-bin-x64.zip(最新版)
  2. 查看日志
    • 应该看到:ggml_cuda_init: found 1 CUDA devices
    • 应该看到:whisper_model_load: CUDA0 total size
  3. 用你的 C++ 客户端测试
    • 5 秒音频应该在 0.3-0.5 秒内返回结果
    • RTF ≈ 0.08(快 12 倍于实时)

测试

cd D:\U3DProject\whisper.cpp-master
whisper-server.exe -m models/ggml-small.bin --use-gpu -t 4 -p 8 --port 8080

解压并替换

REM 备份旧的
ren D:\U3DProject\whisper.cpp-master\whisper-server.exe whisper-server-cpu.exe
REM 复制新的
copy whisper-cublas\whisper-server.exe D:\U3DProject\whisper.cpp-master\
copy whisper-cublas\*.dll D:\U3DProject\whisper.cpp-master\

确保 CUDA 已安装

nvidia-smi
nvcc --version

如果你想继续用 CPU
优化当前配置
REM 优化线程数(从 16 改为 4)
whisper-server.exe -m models/ggml-small.bin -t 4 -p 8 --port 8080 --no-gpu
REM 或者用更小的模型
whisper-server.exe -m models/ggml-tiny.bin -t 4 -p 8 --port 8080 --no-gpu

预期提速:

  • 线程优化:30 秒 → 12 秒
  • 换 tiny 模型:30 秒 → 5 秒

总结

问题答案
默认编译支持 CUDA?❌ 不支持,需要 -DWHISPER_CUBLAS=ON
你的版本支持 CUDA?❌ 不支持(日志显示 no GPU found)
如何获取 CUDA 版本?下载 whisper-cublas-bin-x64.zip
CUDA 版本速度?✅ 5 秒音频 → 0.4 秒(快 75 倍)
是否需要重新编译?❌ 不需要,直接下载预编译版

目录

  1. Whisper 语音识别库编译与 CUDA 加速配置指南
  2. Whisper 默认编译是否支持 CUDA?
  3. 直接回答
  4. whisper.cpp 的编译选项对比
  5. 默认编译(纯 CPU)
  6. 默认编译命令(Linux/Mac)
  7. 或者 CMake
  8. 启用 CUDA 编译(GPU 加速)
  9. Windows (CMake)
  10. Linux/Mac
  11. 如何判断你的 whisper-server.exe 支持不支持 CUDA?
  12. 方法 1:查看启动日志(最准确)
  13. ✅ 如果支持 CUDA,会看到:
  14. ❌ 如果不支持 CUDA,会看到:
  15. 方法 2:查看文件大小(粗略判断)
  16. 方法 3:使用参数测试
  17. 尝试启用 GPU
  18. 如果支持,会用 GPU
  19. 如果不支持,会报错或自动回退到 CPU
  20. whisper.cpp 官方发布版本说明
  21. GitHub Releases 页面
  22. 你当前的情况分析
  23. 你的 whisper-server.exe 来源
  24. 可能的原因
  25. 原因 1:下载了 CPU 版本
  26. 原因 2:自己编译时没启用 CUDA
  27. 默认编译(没启用 CUDA)
  28. 启用 CUDA 的编译
  29. 如何获取支持 CUDA 的版本?
  30. 方法 1:下载预编译版本(推荐,最简单)
  31. 方法 2:自己编译(高级)
  32. 前提条件
  33. 编译步骤
  34. 验证编译结果
  35. 不同版本性能对比
  36. 实测数据(5 秒音频)
  37. 最终建议
  38. 如果你想用 GPU 加速
  39. 推荐方案:下载预编译版本
  40. 如果你想继续用 CPU
  41. 优化当前配置
  42. 总结
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 大语言模型(LLM)核心知识体系概览
  • Flutter Web 开发解决跨域(CORS)问题指南
  • MySQL 数据类型详解:Date 与 Time
  • 堆数据结构与字符串处理算法详解
  • YOLO11 驱动的无人机航拍小目标检测系统实战
  • OpenAI Whisper 语音识别与转录使用指南
  • Spring Boot 常用注解速查表:30 个必会注解与实战案例
  • 基于 Web Unlocker 与 n8n 的自动化资讯采集与推送实践
  • 二分算法实战:查找元素首尾位置与区间计数
  • LLM 存储记忆功能:BaseChatMemory 详解与子类实战
  • 飞算 JavaAI:代码智能构造平台
  • Windows 本地运行 DeepSeek:Docker + Ollama + Open WebUI 三步部署
  • 图对比学习综述(一):对比范式与优化目标
  • OpenClaw 部署指南:Coding Plan 配置 + CC Switch + 飞书机器人
  • 自然语言处理在金融领域的应用与实战
  • SpringBoot+Vue+Java 企业员工信息管理系统(含工资考勤)
  • C++26 反射即将落地:GCC 14 最新进展与迁移路线图
  • AI 辅助下的多链 imToken 钱包架构设计与安全实践
  • VLA 机器人革命:解析 10 篇关键视觉 - 语言 - 动作模型论文
  • PyQt 面向沥青路面裂缝病害识别的 YOLOv8n 算法改进研究

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online