cornell-zhang/allo

Allo Accelerator Design and Programming Framework (PLDI'24)

해결하는 문제

Allo는 고성능 기계학습 가속기 설계 및 프로그래밍의 어려움을 해결합니다. 하드웨어 아키텍처 설계와 실행 프로그램 작성 방식을 통합하여, 더 모듈식이고 재사용 가능한 개발 프로세스를 제공합니다.

작동 방식

Allo는 MLIR 기반의 Python 내장 언어 및 컴파일러입니다. 개발자는 행동적 및 구조적 조합을 사용하여 작은 재사용 가능한 구성 요소에서 복잡한 가속기 시스템을 구축할 수 있습니다. PyTorch 모델에서 가속기를 자동 생성할 수 있으며, 고성능 시뮬레이터 및 형식적 검증기와 통합되어 정확성을 보장합니다.

대상 사용자

FPGA(AMD 및 Intel) 또는 NPU(AMD Ryzen AI 엔진)용 맞춤형 AI 가속기를 개발하는 하드웨어 아키텍트 및 ML 컴파일러 엔지니어.

주요 특징

  • 통합 추상화: 하드웨어 설계와 소프트웨어 프로그래밍을 하나의 프레임워크로 통합.
  • 엔드투엔드 워크플로우: PyTorch 모델에서 자동 생성을 지원하며, 검증 및 시뮬레이션 도구를 포함.
  • 다중 백엔드 지원: AMD/Intel FPGA 및 AMD Ryzen NPU를 타겟으로 하며, 향후 GPU 및 ASIC에도 확장 예정.
  • MLIR 기반: 효율적인 최적화 및 코드 생성을 위해 MLIR 컴파일러 프레임워크를 활용.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트