Xilinx/mlir-aie
A close-to-metal Python API for programming AMD Ryzen™ AI NPUs (AI Engines), built on an open-source MLIR-based compiler toolchain.
해결하는 문제
IRON이라는 고수준 Python API를 사용하여 AMD Ryzen‡ AI NPUs(신경처리장치)를 프로그래밍할 수 있는 방법을 제공합니다. 이는 개발자가 복잡한 프레임워크를 우회하고 AI 엔진 어레이에서 타일 배치, 데이터 이동, 벡터화된 계산을 직접 제어할 수 있게 해줍니다.
작동 방식
IRON은 MLIR(Multi-Level Intermediate Representation)과 LLVM 기반의 오픈소스 컴파일러 툴체인을 사용합니다. 개발자가 Python에서 @iron.jit 데코레이터를 사용하면, 툴체인은 Peano 컴파일러를 통해 설계를 xclbin 파일과 명령 스트림으로 컴파일한 후 NPU 하드웨어에서 실행합니다.
대상 사용자
기계학습에서 디지털 신호 처리에 이르기까지 다양한 작업에서 NPU에 대한 저수준, 즉 '메탈에 가까운' 제어가 필요한 연구자 및 성능 엔지니어를 위한 것입니다.
주요 특징
- Python에서 NPU로의 워크플로우: JIT 컴파일되어 AI 엔진 어레이에서 직접 실행되는 Python 코드를 작성할 수 있습니다.
- 저수준 제어: 벡터화된 계산, 데이터 이동, 타일 배치를 직접 관리할 수 있습니다.
- MLIR 기반 툴체인: AI 엔진을 탑재한 장치(예: Ryzen AI, Versal 등)를 타겟으로 하는 다단계 추상화 툴체인을 활용합니다.
- 보완적 도구 세트: 주류 추론 플랫폼과 함께 사용되며, 이를 대체하지 않습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트