ggml 프로젝트는 pull request #24179를 통해 초기 Ethos-T (ET) 백엔드를 도입하여 llama.cpp 프레임워크 내에서 Arm Cortex-M 및 Ethos-U NPU를 사용할 수 있게 되었습니다.

  • 구현에는 MUL_MAT, ROPE, RMS_NORM, GLU, SOFT_MAX, GET_ROWS, SET_ROWS 등 수많은 커널에 대한 지원이 추가되었습니다.
  • 성능 로깅, 양자화 헬퍼, TensorFMA를 사용한 FP32 MUL_MAT 및 병렬화된 softmax와 같은 벡터 연산이 포함되어 있습니다.
  • 백엔드는 커널 퓨전(예: RMS_NORM + MUL), FlashAttention, Q4_0 및 Q8_0과 같은 다양한 데이터 유형을 지원합니다.
  • 빌드 개선으로 find_package()를 통해 런타임을 가져올 수 있게 되었으며, Python 3.8 이전 버전에서도 빌드가 지원됩니다.

이 추가 기능으로 사용자는 추론 작업을 Arm Ethos 하드웨어로 오프로드하여 호환되는 장치의 성능과 효율성을 향상시킬 수 있습니다.