본문 바로가기

AI Compiler framework

AICF 구조 현황 문서화

개요

AICF 는 하나의 완성된 AI Framework 를 단번에 구현하는 것이 아닌, Execution / Kernel / IR-Meaning 이라는 세 개의 시스템으로 분리하여 구축, 각 시스템은 느슨하게 결합되어 있고, 개별적으로 완성도를 높일 수 있도록 설계

 

1. Execution System

모델 실행의 determinism 과 replayability 를 책임지는 하위 시스템, 

현재 상태

  • deterministic execution 및 replay 구조 구현 완료
  • CUDA Graph capture / replay 기반 실행 흐름 정립
  • optimizer state, gradient 흐름 관리 완료
  • runtime / environment 경계 명확화

프레임 워크 관점에서 최소 실행 단위는 이미 충족, 이후 다른 시스템 변화에도 안정적인 기반 역할

 

2. Kernel System

실제 연산을 수행하는 연산 구현 계층 저수준 연산들이 포함됨 ( GEMM, elementwise op, fused op ... )

현재 상태

  • 핵심 연산 일부 구현
  • Layer 추가에 따라 필요한 op 점진적 확장

전통적 컴파일러의 backend 확장 방식과 유사

 

3. IR / Meaning System

연산과 실행 사이에서 semantic 를 표현하고 다루는 계층, 연산의 성질, 변환 가능성, 등가성 등을 기술할 수 있는 공간

현재 상태

  • IR 상의 중간 단계는 존재
  • 의미를 담을 수 있는 구조는 준비됨
  • 현재 기능은 semantic identity 에 머무름

현재 검증된 조건들

  • Execution 은 의미를 무시해도 안전함
  • Kernel 은 의미와 독립적으로 교체 가능함
  • IR 은 의미를 담을 수 있는 구조적 여지를 가짐

 

요약 하자면

  • Execution system 은 실행 엔진으로서 완성됨
  • Kernel system 은 확장 가능한 연산 라이브러리로 가능함
  • Meaning system 은 판단을 유보한 채 관찰 가능한 구조로 존재

실행 가능, 연산 확장 가능, 의미는 아직 없음

 

Meaning System 을 어떻게 할 것인가