Rilis llama.cpp b9857 memperkenalkan penataan ulang menyeluruh pada implementasi Hexagon Flash Attention, dengan fokus pada optimasi dan peningkatan akurasi. Pembaruan ini mencakup perubahan signifikan pada modul hex-mm dan hex-fa, seperti penggabungan tugas kuantisasi ke dalam utas matmul utama, fusi dengan operasi ADD, dan optimasi pemrosesan mask.
- Optimasi Hexagon Flash Attention (hex-fa) meliputi faktorisasi ukernels, memindahkan komputasi parameter kernel ke host, dan menambahkan dukungan untuk FA_SELECT dan Sinks.
- Peningkatan kinerja melibatkan pembaruan ambang batas fallback Hvx untuk memulihkan regresi throughput, optimasi caching DMA mask, serta penggunaan muatan yang sejajar dan indeks uint32_t.
- Peningkatan presisi numerik meliputi penyimpanan akumulasi softmax dalam fp32, mengganti vec_exp_f32 dengan vec_exp2_f16, dan menghindari overflow konversi dengan tidak menggunakan -inf untuk inisialisasi mask.
- Rilis ini menyediakan biner untuk macOS (Apple Silicon dan Intel), Linux (CPU, Vulkan, ROCm, OpenVINO, SYCL), Android, Windows (CPU, CUDA 12/13, Vulkan, OpenCL, HIP, OpenVINO, SYCL), dan openEuler.
Pembaruan ini meningkatkan kinerja inferensi pada DSP Hexagon dan memperluas dukungan perangkat keras di berbagai platform dan akselerator untuk pengguna llama.cpp.