Le projet ggml a introduit un backend Ethos-T (ET) initial dans la demande de tirage #24179, permettant l'utilisation des NPU Arm Cortex-M et Ethos-U au sein du framework llama.cpp.

  • L'implémentation ajoute le support pour de nombreux noyaux, notamment MUL_MAT, ROPE, RMS_NORM, GLU, SOFT_MAX, GET_ROWS et SET_ROWS.
  • Elle inclut la journalisation des performances, des utilitaires de quantification et des opérations vectorisées telles que MUL_MAT FP32 à l'aide de TensorFMA et un softmax parallélisé.
  • Le backend prend en charge la fusion de noyaux (par ex. RMS_NORM + MUL), FlashAttention et divers types de données tels que Q4_0 et Q8_0.
  • Les améliorations de compilation permettent d'importer le runtime via find_package() et supportent la compilation sur des versions de Python antérieures à 3.8.

Cette ajout permet aux utilisateurs de décharger les opérations d'inférence vers le matériel Arm Ethos, améliorant potentiellement les performances et l'efficacité pour les appareils compatibles.