El proyecto llama.cpp lanzó la versión b9928, introduciendo nuevos layouts VTCM y pipelines mejorados para el backend hexagon. Estos cambios están específicamente dirigidos a mejoras de rendimiento para las operaciones MUL_MAT, MUL_MAT_ID y FLASH_ATTN_EXT.
- Se refactorizó el cálculo de parámetros del kernel para usar un builder de layout común.
- Se añadieron barreras explícitas del compilador para hacer más robustas las funciones hmx.
- Se implementó un builder de layout VTCM más genérico para kernels de multiplicación de matrices y flash-attn.
- Se desenrollaron los kernels internos y se reemplazaron intrinsics con ensamblado inline para evitar problemas del compilador.
- Se optimizaron los pipelines DMA, la precarga y las rutas de respaldo de sincronización.
- Se añadió polling híbrido al workpool y se mejoraron los mecanismos de despertar de colas.
El lanzamiento proporciona binarios para macOS (Apple Silicon e Intel), iOS, Linux (Ubuntu x64, arm64, s390x), Android, Windows y openEuler a través de varios backends de hardware incluyendo CPU, CUDA, ROCm, Vulkan, OpenVINO, SYCL y HIP.