llama.cpp’nin b11292 sürümü, çekirdeğinde 16 bitlik bir sayı biçimi olan BF16 kullanılan derinlik bazlı 1D evrişimde CPU arka ucunu etkileyen bir kısıtlamayı gideriyor. CPU arka ucu artık hesaplama sırasında bu girdiyi 32 bitlik kayan nokta biçimine genişletiyor; böylece Metal’in matris-vektör çekirdeğinde kullanılan aritmetik yöntemle eşleşiyor.
Sürüm, Vulkan’ın kontrollerini de değiştiriyor: BF16’yı ikinci matris girdisi olarak yalnızca ilk girdi de BF16 olduğunda kabul ediyor. Diğer bileşimler desteklenmiyor olarak işaretleniyor; böylece zamanlayıcı bunları CPU’da çalıştırıyor. Sürüm notlarında eklenen testlerden söz ediliyor, ancak değişikliklerin paketlenmiş bir uygulamaya ne zaman ulaşacağı veya hangi kullanıcıların bu değişiklikleri alacağı belirtilmiyor.
Neden önemli
BF16 derinlik bazlı evrişim çalıştıran geliştiriciler artık CPU arka ucunda daha önce reddedilen bir bileşimi kullanabiliyor; sürüm notlarında bu düzeltmenin sonraki uygulamalara ne zaman ekleneceği belirtilmiyor.