O lançamento b9828 do llama.cpp introduz melhorias significativas no OpenCL, reestruturando especificamente os kernels do Flash Attention para precisão f16 e f32. Esta atualização inclui novos kernels de pré-prefill e suporte para formatos de quantização q4_0 e q8_0.

  • Kernel FA reestruturado para f16 e f32 com lógica otimizada de preenchimento de tiles e mascaramento.
  • Adicionados kernels FA para quantização q4_0 e q8_0, incluindo kernels de desquantização e suporte a tensores SOA.
  • Introduzida uma tabela de ajuste de tiles FA com capacidades de substituição e correção no tratamento de infinito para -cl-finite-math-only.
  • Fornecidos binários pré-compilados para macOS (Apple Silicon/Intel), Linux (CPU/Vulkan/ROCm/OpenVINO/SYCL), Windows (CPU/CUDA/Vulkan/HIP/OpenVINO/SYCL), Android e openEuler.

Este lançamento permite inferência mais eficiente em hardware compatível com OpenCL, otimizando os padrões de acesso à memória e suportando tipos adicionais de quantização.