Rilis llama.cpp b10306 memperkenalkan optimasi kinerja untuk backend SYCL, khususnya menargetkan operasi Gated Linear Unit (GLU). Pembaruan ini menambahkan jalur cepat kontigu untuk operasi GLU terpadu dan mengonsolidasikan kernel yang sebelumnya berbeda agar berbagi peluncur bersama.
- Menambahkan kasus uji kinerja SWIGLU yang mencakup 17408 kolom dengan 512 dan 2048 token dalam f16 dan f32.
- Mengonsolidasikan kernel GLU terpadu dengan mengambil operasi sebagai argumen, menghapus konstanta SYCL_GELU_BLOCK_SIZE dan SYCL_SILU_BLOCK_SIZE yang tidak digunakan.
- Menerapkan peluncuran kernel datar untuk operand kontigu di mana matematika indeks de-interleave menyatu menjadi identitas.
- Mencapai peningkatan kinerja +14% pada f16 dan +4% pada f32 untuk GLU terbelah pada Arc Pro B70, dengan operasi terpadu tetap tidak berubah.
Perubahan ini meningkatkan efisiensi backend SYCL dengan mengurangi duplikasi kode dan mengoptimalkan pola akses memori untuk konfigurasi tensor tertentu.