본문으로 건너뛰기

© 2026 Molayo

arXiv논문2026. 06. 26. 11:04

Axon: 텐서 프로그램을 위한 합성 슈퍼옵티마이저 (Synthesizing Superoptimizer)

요약

Axon은 AI 가속기용 고성능 커널 작성을 자동화하는 합성 슈퍼옵티마이저입니다. 프로그램 합성을 통해 타겟 명령어를 생성하고, SMT를 활용해 의미론적 보존을 보장하며 최적의 커널을 탐색합니다.

핵심 포인트

  • 프로그램 합성을 통한 타겟 명령어 자동 생성
  • SMT를 활용한 의미론적 보존 및 대수적 변환 발견
  • 타일링 구성 탐색 및 연산자/명령어 융합을 통한 메모리 트래픽 최소화
  • 수동 재작성 규칙 없이도 최적의 커널 탐색 가능

AI 가속기(AI accelerator)를 위한 고성능 커널(kernel)을 작성하는 것은 타일링 (tiling), 명령어 선택 (instruction selection), 데이터 레이아웃 (data layout), 그리고 연산자 융합 (operator fusion)에 대한 깊은 전문 지식을 요구하며, 이는 프로그래머에게 상당한 부담을 줍니다. 본 논문에서 우리는 타일 기반 AI 가속기 프로그램에 초점을 맞추어, 텐서 프로그램(tensor programs)을 위한 합성 슈퍼옵티마이저 (synthesizing superoptimizer)인 Axon을 제시합니다. Axon은 프로그램 합성 (program synthesis)을 사용하여 의미론적 명세 (semantics specifications)로부터 타겟 명령어 (target instructions)를 자동으로 생성하며, 경험적으로 가장 성능이 좋은 커널을 선택하기 위해 의미론적으로 동일한 프로그램 변형들을 탐색합니다. Axon은 계산 그래프 (computation graphs)를 통해 연산자 (operators)를 전파함으로써 대수적 변환 (algebraic transformations)을 발견하며, 수동으로 작성된 재작성 규칙 (rewrite rules) 없이도 모든 변환이 의미론을 보존함을 보장하기 위해 무제한 텐서 (unbounded tensors)에 대한 SMT를 사용합니다. 그 후 텐서 연산 (tensor operations)을 타겟 ISA 명령어로 낮추고 (lowers), 하드웨어 기술 (hardware descriptions)에 의해 제약되는 타일링 구성 (tiling configurations)을 탐색하며, 메모리 트래픽 (memory traffic)을 최소화하기 위해 연산자와 명령어를 융합합니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 arXiv cs.PL (Programming Languages)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0