llama.cpp b9828 版本引入了显著的 OpenCL 增强功能,特别是重写了针对 f16 和 f32 精度的 Flash Attention 内核。此更新包括新的预填充预处理内核以及对 q4_0 和 q8_0 量化格式的支持。

  • 重写了适用于 f16 和 f32 的 FA 内核,优化了图块填充和掩码逻辑。
  • 添加了针对 q4_0 和 q8_0 量化的 FA 内核,包括反量化内核和 SOA 张量支持。
  • 引入了具有覆盖功能的 FA 图块调优表,并修复了 -cl-finite-math-only 的无穷大处理问题。
  • 提供了适用于 macOS (Apple Silicon/Intel)、Linux (CPU/Vulkan/ROCm/OpenVINO/SYCL)、Windows (CPU/CUDA/Vulkan/HIP/OpenVINO/SYCL)、Android 和 openEuler 的预构建二进制文件。

此版本通过优化内存访问模式和支持其他量化类型,使 OpenCL 兼容硬件上的推理更加高效。