llama.cpp项目已将Vulkan mul_mat_id操作的提升行ID限制从256个专家提高至1024个专家。此更改解决了具有大量专家的模型(如Qwen3.8-Flash-Next)中的性能瓶颈,这些模型此前因共享数组大小限制而运行在较慢的代码路径上。
该更新修改了count_experts.comp着色器,使其使用MAX_EXPERTS常量1024,将共享数组增长至12 KiB,同时保持在Vulkan的16 KiB保证范围内。在Strix Halo硬件上,批处理大小为2048时,iq3_s的专家矩阵乘法时间从12.5毫秒降至9.5毫秒,iq4_nl从14.0毫秒降至7.5毫秒每次操作。提示处理速度在8k token时提升了约19%,且MUL_MAT_ID后端测试通过了新的1024专家用例。
此优化使llama.cpp能够在Vulkan兼容硬件上高效处理超过先前512专家阈值的模型,而不会出现性能下降。