llama.cpp 项目发布了构建版本 b10782,解决了多 GPU 设置中 CUDA 后端的严重问题。该更新允许每个分片使用并发流,并启用 CUDA 图优化在多个设备上正确运行。
- 修复了一个错误:CUDA 事件被错误地绑定到创建时处于当前状态的 GPU,导致多 GPU 图优化被跳过。
- 通过 `ggml_cuda_set_device` 实现显式设备设置,以确保优化应用于每个设备的正确分片。
- 该修复仅在启用 `GGML_CUDA_GRAPH_OPT=1` 时生效;默认行为保持不变。
此更改确保每个分片仅运行一次图优化,而不是被绕过,从而使多 GPU 推理能够正确使用 CUDA 加速。