返回全部动态

llama.cpp 修复 Qualcomm Adreno 上 flash attention 性能问题

原标题:b12246

llama.cpp Releases一手来源开源质量 72

AI 摘要

llama.cpp 发布 b12246 版本,针对 Qualcomm Adreno GPU 的 Vulkan 后端修复了标量 flash attention 在大 head 尺寸下的性能问题:当 head size 超过 128 且 KV 长度不小于 1024 时,将每个 workgroup 的行数从 16 降为 8,避免寄存器溢出到 scratch 内存。修复后 Adreno X1-85 上 hsk=256、kv=4096 的用例从 711ms 降至 17ms,原本因超过 Windows GPU 超时无法完成的 test-backend-ops 测试得以跑通,X2-90 上 Gemma 4 E4B 的推理速度也从 81-90 t/s 提升到 117 t/s。

以上摘要由 AI 生成,可能存在误差。事实请以原文为准。

正文节选

<details open> vulkan: cap scalar flash attention at 8 rows for large heads on Qualcomm (#30829) With head sizes above 128 and KV >= 1024, scalar flash attention uses 16 rows per workgroup. On the Qualcomm Adreno driver this variant spills registers to scratch memory (264 bytes per invocation on the X1-85, none at 8 rows) and runs about 40x slower. The largest test-backend-ops case then becomes a single dispatch of several seconds, past the Windows GPU timeout, and the test never completes on


发布时间:2026-11-10 21:09
抓取时间:2026-11-10 21:27
来源机构:ggml-org
阅读原文github.com