ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Meetily 在 Linux 构建成功但 GPU 加速未生效怎么排查?

Meetily 在 Linux 构建成功但 GPU 加速未生效怎么排查? Meetily 在 Linux 构建成功但 GPU 加速未生效怎么排查【免费下载链接】meetilyPrivacy first, AI meeting assistant with 4x faster Parakeet/Whisper live transcription, speaker diarization, and Ollama summarization built on Rust. 100% local processing. no cloud required. Meetily (Meetly Ai - https://meetily.ai) is the #1 Self-hosted, Open-source Ai meeting note taker for macOS Windows. Understand How to write meeting minutes项目地址: https://gitcode.com/GitHub_Trending/me/meetilyMeetily 在 Linux 上通过./dev-gpu.sh或./build-gpu.sh构建成功并不意味着 GPU 加速真的启用了。脚本检测到任何一级条件缺失典型情况是只装了 GPU 驱动、没装 CUDA toolkit / ROCm / Vulkan SDK时都会静默回退到 CPU-only 构建而构建过程照样顺利完成最终产物照常可用——只是没有加速。本文面向在 Ubuntu/Debian、Fedora/RHEL 或 Arch Linux 上用源码构建 Meetily 的开发者说明自动检测链的判定条件、每个回退分支对应的构建输出标志以及逐项核对与强制指定后端的方法。依据是 docs/BUILDING.md、docs/building_in_linux.md 与 docs/GPU_ACCELERATION.md。先搞清楚加速是怎么被启用的dev-gpu.sh/build-gpu.sh会先构建llama-helper侧车二进制再调用 Tauri 构建pnpm tauri:dev或tauri:buildGPU 特性同时传给两边。检测由 scripts/auto-detect-gpu.js 完成检测优先级、判定条件与结果如下优先级后端判定条件结果1NVIDIA CUDAnvidia-smi存在且CUDA_PATH已设置或nvcc可用--features cuda2AMD ROCmrocm-smi存在且ROCM_PATH已设置或hipcc可用--features hipblas3Vulkanvulkaninfo存在且VULKAN_SDK与BLAS_INCLUDE_DIRS均已设置--features vulkan4OpenBLASBLAS_INCLUDE_DIRS已设置--features openblas5CPU-only以上均不满足不附加 feature两点关键边界均来自 docs/building_in_linux.md只装 GPU 驱动是不够的需要对应的开发 SDKCUDA toolkit、ROCm、Vulkan SDK检测才会通过。OpenBLAS 是 CPU 优化1.5-2x 加速不算 GPU 加速。如果机器上只设置了BLAS_INCLUDE_DIRS构建会走openblas而不是回退纯 CPU——它比纯 CPU 快但仍然不经过 GPU。检测在构建早期执行日志直接打在终端里是排查的第一现场。第一步从构建输出定位回退分支重新跑一次构建在终端里找检测阶段的消息。auto-detect-gpu.js的输出摘自 scripts/auto-detect-gpu.js NVIDIA GPU detected with CUDA - using CUDA acceleration ⚠️ NVIDIA GPU detected but CUDA not installed - falling back to CPU AMD GPU detected with ROCm - using HIPBlas acceleration ⚠️ AMD GPU detected but ROCm not installed - falling back to CPU Vulkan detected with all dependencies - using Vulkan acceleration ⚠️ Vulkan detected but missing dependencies - falling back to CPU OpenBLAS detected - using CPU with BLAS optimization No GPU acceleration available - using CPU-only mode脚本随后会打印✅ Detected GPU feature: feature命中时或⚠️ No specific GPU feature detected or forced未命中时。对照你的输出按下面的分支处理。NVIDIAGPU 被检测到但 CUDA 未安装对应⚠️ NVIDIA GPU detected but CUDA not installed - falling back to CPU。按 docs/building_in_linux.md 的排查项Checknvcc --version应该能正常执行Fix安装 CUDA toolkitUbuntu/DebianCUDA 12.xsudo apt install nvidia-driver-550 nvidia-cuda-toolkit # 验证 nvidia-smi # Shows GPU info nvcc --version # Shows CUDA version如果 toolkit 装在非标准路径也可以改为设置CUDA_PATH环境变量例如/usr/local/cuda。文档标注的前提是 NVIDIA GPU 的 compute capability 5.0可用nvidia-smi --query-gpucompute_cap --formatcsv查询。AMD ROCmGPU 被检测到但 ROCm 未安装对应⚠️ AMD GPU detected but ROCm not installed - falling back to CPU。前提是支持 ROCm 的 AMD GPURX 5000、Radeon VII 等。Ubuntu/Debiansudo apt install rocm-smi hipcc # Set environment export ROCM_PATH/opt/rocm # Verify rocm-smi # Shows GPU info hipcc --version # Shows ROCm version注意export ROCM_PATH/opt/rocm只对当前 shell 生效./build-gpu.sh要在设置了该变量的终端里运行或把export写入 shell 配置文件。Vulkan缺 SDK 或缺环境变量对应⚠️ Vulkan detected but missing dependencies - falling back to CPU。脚本还会逐行提示具体缺哪一个Missing: VULKAN_SDK environment variable Missing: BLAS_INCLUDE_DIRS environment variable只有vulkaninfo可用并不够必须同时满足VULKAN_SDK和BLAS_INCLUDE_DIRS都已设置docs/building_in_linux.md 给出的是 Ubuntu/Debian 下的示例值# Add to ~/.bashrc or ~/.zshrc export VULKAN_SDK/usr export BLAS_INCLUDE_DIRS/usr/include/x86_64-linux-gnu # Apply changes source ~/.bashrc如果 SDK 本身没装先安装Ubuntu/Debian 示例Fedora 为vulkan-devel openblas-develArch 为vulkan-devel openblassudo apt install vulkan-sdk libopenblas-dev装好后重新./build-gpu.sh脚本会自动检测并以--features vulkan构建。完全没有任何检测命中对应 No GPU acceleration available - using CPU-only mode说明连nvidia-smi、rocm-smi、vulkaninfo都不在 PATH 里。按 docs/building_in_linux.md 的处理安装对应的开发 toolkit而不是只装驱动。自动检测结果与机器实际状态不符时强制指定后端文档提供了TAURI_GPU_FEATURE环境变量用于绕过自动检测docs/building_in_linux.md Manual Feature Override# Force CUDA (ignore auto-detection) TAURI_GPU_FEATUREcuda ./build-gpu.sh # Force Vulkan TAURI_GPU_FEATUREvulkan ./build-gpu.sh # Force ROCm (HIPBlas) TAURI_GPU_FEATUREhipblas ./build-gpu.sh # Force CPU-only (for testing) TAURI_GPU_FEATURE ./build-gpu.sh # Force OpenBLAS (CPU-optimized) TAURI_GPU_FEATUREopenblas ./build-gpu.sh强制指定跳过检测环节适合确认 SDK 已装好但检测脚本没找到的场景。dev-gpu.sh同样支持该变量。另一个可选入口是 frontend/package.json 里的 npm 脚本tauri:build:cuda、tauri:build:vulkan、tauri:build:hipblas、tauri:build:openblas、tauri:build:cpu等它们直接以-- --features feature构建效果相同。后端要求与加速效果速查排查时用来核对我的机器到底该走哪条路摘自 docs/building_in_linux.md Complete Feature MatrixModeFeature FlagRequirementsAccelerationSpeed BoostCUDA--features cudanvidia-smi (CUDA_PATHornvcc)GPU5-10xROCm--features hipblasrocm-smi (ROCM_PATHorhipcc)GPU4-8xVulkan--features vulkanvulkaninfoVULKAN_SDKBLAS_INCLUDE_DIRSGPU3-6xOpenBLAS--features openblasBLAS_INCLUDE_DIRSCPU-optimized1.5-2xCPU(none)(none)CPU-only1x (baseline)需要留意两处文档差异排查时以当前仓库的实际构建脚本为准docs/GPU_ACCELERATION.md 描述的是whisper-rs后端的 feature flag含 OpenBLAS、Core ML 等与dev-gpu.sh/build-gpu.sh实际走的检测链CUDA → ROCm → Vulkan → OpenBLAS由auto-detect-gpu.js实现在细节上不完全一致。docs/BUILDING.md 提到tauri-auto.js会构建 llama-helper sidecar 并复制二进制到src-tauri/binaries而当前dev-gpu.sh/build-gpu.sh脚本本身就完成了这些步骤npm 脚本tauri:dev/tauri:build只是最后一步的 Tauri 构建入口。构建 CUDA 时按实际 GPU 调整架构参数NVIDIA 路径下脚本默认导出CMAKE_CUDA_ARCHITECTURES75frontend/build-gpu.sh但文档要求按自己 GPU 的 compute capability 设置例如 8.6 的卡用86# 先查 compute capability例如输出 8.6 → 用 86 nvidia-smi --query-gpucompute_cap --formatcsv CMAKE_CUDA_ARCHITECTURES86 \ CMAKE_CUDA_STANDARD17 \ CMAKE_POSITION_INDEPENDENT_CODEON \ ./build-gpu.sh三个参数的用途来自 docs/building_in_linux.mdCMAKE_CUDA_ARCHITECTURES针对具体 GPU 优化CMAKE_CUDA_STANDARD17保证 C17 兼容CMAKE_POSITION_INDEPENDENT_CODEON修复现代系统上的链接问题。build-gpu.sh还会自动设置NO_STRIPtrue避免 AppImage 打包时剥离符号导致运行时错误。确认结果与继续排查修复后重新执行构建成功判据就是检测阶段输出✅ Detected GPU feature: cuda|hipblas|vulkan|openblas且对应后端的验证命令nvcc --version/hipcc --version/vulkansdk相关环境变量在你自己的终端里也能通过。文档给出的排查止于构建期的检测输出没有提供运行时的独立验证命令——判断加速是否生效依据的是构建时选择了哪个 feature。如果仍无法定位按 docs/building_in_linux.md 的建议开一个 issue附上 GPU 型号、发行版以及./build-gpu.sh的完整输出。【免费下载链接】meetilyPrivacy first, AI meeting assistant with 4x faster Parakeet/Whisper live transcription, speaker diarization, and Ollama summarization built on Rust. 100% local processing. no cloud required. Meetily (Meetly Ai - https://meetily.ai) is the #1 Self-hosted, Open-source Ai meeting note taker for macOS Windows. Understand How to write meeting minutes项目地址: https://gitcode.com/GitHub_Trending/me/meetily创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表