Le projet llama.cpp a publié la version b10863, qui inclut une correction pour les threads inactifs dans le noyau `mul_mv_iq3_xxs` sur Metal lorsque `ne00` est inférieur à 1024. La mise à jour résout un problème de simdgroup partiellement inactif en introduisant un noyau divisé séparé pour des dimensions de matrice spécifiques.

  • Corrige le simdgroup partiellement inactif dans `kernel_mul_mv_iq3_xxs_f32` pour `ne00 < 1024`.
  • Maintient `N_R0_IQ3_XXS = 4` et dispatche un noyau divisé séparé de 8 lignes lorsque `ne00/32 < 32` et divise 32.
  • Utilise une constante de fonction pour sélectionner la division de ligne `iq3_xxs` au lieu d'une instanciation de noyau séparée.

Cette version fournit des binaires pour macOS, iOS, Linux, Android, Windows et openEuler sur divers backends matériels incluant CPU, CUDA, ROCm, Vulkan et OpenVINO.