La versión llama.cpp b10236 introduce una implementación de Metal del Indexador DSv4 Lightning, compatible específicamente con entradas de 128 dimensiones y consultas y pesos F32 junto con claves y máscaras F16.

  • La actualización incluye núcleos en mosaico y de cola para manejar longitudes KV cerca de los límites de 8 y 64 elementos.
  • Los tiles K se almacenan y desquantizan en memoria de grupo de hilos F16 antes de las cargas de matriz simdgroup, compatible con formatos F32, F16, BF16 y varios formatos de cuantización.
  • Las pruebas muestran un mayor rendimiento de prellenado (pp512) en longitudes de secuencia de 10k, 20k y 30k tokens en comparación con versiones anteriores.

Esta optimización mejora el rendimiento de inferencia en dispositivos Apple Silicon al mejorar los patrones de acceso a memoria para el Indexador Lightning.