The llama.cpp project released version b10675, which includes a key update to its Vulkan backend. This release adds hoisting support for row IDs and expert counts within the shader code.

  • The implementation uses hoisted row IDs in coopmat2.
  • It addresses review feedback regarding count_experts by using vk_op_count_experts_push_constants instead of raw uint vectors.
  • The fastdiv trick is applied to the ne00 div/mod operation in count_experts.
  • Per-expert offsets are computed with subgroupExclusiveAdd where supported, keeping a serial path as a fallback.

This update provides optimized Vulkan builds for macOS, Linux, Windows, and Android across various hardware backends including CUDA, ROCm, and OpenCL.