Проект ggml представил начальный бэкенд Ethos-T (ET) в pull request #24179, позволяющий использовать NPUs Arm Cortex-M и Ethos-U в рамках фреймворка llama.cpp.

  • Реализация добавляет поддержку множества ядер, включая MUL_MAT, ROPE, RMS_NORM, GLU, SOFT_MAX, GET_ROWS и SET_ROWS.
  • Включено логирование производительности, помощники квантования и векторизованные операции, такие как FP32 MUL_MAT с использованием TensorFMA и распараллеленный softmax.
  • Бэкенд поддерживает слияние ядер (например, RMS_NORM + MUL), FlashAttention и различные типы данных, такие как Q4_0 и Q8_0.
  • Улучшения сборки позволяют импортировать runtime через find_package() и поддерживать сборку на версиях Python старше 3.8.

Это дополнение позволяет пользователям переносить операции вывода на оборудование Arm Ethos, что потенциально улучшает производительность и эффективность для совместимых устройств.