La versione b11292 di llama.cpp corregge una limitazione del backend CPU che riguardava la convoluzione 1D depthwise quando il kernel usa BF16, un formato numerico a 16 bit. Ora il backend CPU converte quell’input in virgola mobile a 32 bit per eseguire il calcolo, uniformandosi all’aritmetica del kernel matrix-vector di Metal.
La versione modifica anche i controlli di Vulkan: BF16 viene accettato come secondo input di matrice solo se anche il primo è BF16. Le altre combinazioni sono contrassegnate come non supportate, così lo scheduler le assegna alla CPU. Le note parlano di nuovi test, ma non indicano quando le modifiche arriveranno in un’app distribuita né quali utenti le riceveranno.
Perché conta
Per gli sviluppatori che eseguono convoluzioni depthwise BF16, il backend CPU può ora gestire una combinazione che prima rifiutava; le note non specificano quando la correzione sarà inclusa nelle app derivate.