[논문 리뷰] Phism: Polyhedral High-Level Synthesis in MLIR
이 논문은 MLIR 기반의 다면체 고수준 합성 프레임워크인 $φ_{sm}$를 소개한다. 이는 다면체 표현에서 하드웨어 설계로의 점진적 내림(descending)을 다층 중간 표현(IR)을 통해 가능하게 한다. MLIR의 다이얼렉트 시스템—특히 Affine 다이얼렉트—를 활용함으로써 플랫폼별 최적화, 소프트웨어/하드웨어 공동 설계, 조합 가능한 변환을 지원하며, 적절한 추상화 수준에서 전체 다면체 최적화를 포함한 효율적이고 확장 가능한 HLS를 실현한다.
Polyhedral optimisation, a methodology that views nested loops as polyhedra and searches for their optimal transformation regarding specific objectives (parallelism, locality, etc.), sounds promising for mitigating difficulties in automatically optimising hardware designs described by high-level synthesis (HLS), which are typically software programs with nested loops. Nevertheless, existing polyhedral tools cannot meet the requirements from HLS developers for platform-specific customisation and software/hardware co-optimisation. This paper proposes $ϕ_{sm}$ (phism), a polyhedral HLS framework built on MLIR, to address these challenges through progressive lowering multi-level intermediate representations (IRs) from polyhedra to HLS designs.
연구 동기 및 목표
- 기존 다면체 도구들이 확장성과 플랫폼별 맞춤 설정에 빈도가 높은 문제를 해결한다.
- 추상적인 다면체 표현과 루프 수준 및 스케줄링 수준의 세부 정보가 필요한 실제 HLS 설계 사이의 의미적 갭을 메운다.
- 적절한 추상화 수준에서 중간 IR을 노출시켜 소프트웨어/하드웨어 공동 최적화 및 설계 공간 탐색을 가능하게 한다.
- 진행 중인 HLS 타겟(예: Vitis, CIRCT)을 지원하는 모듈식이고 조합 가능하며 확장 가능한 프레임워크를 제공한다.
- 기존 도구들(예: Pluto, CLooG)이 다면체 또는 C 유사 AST에만 작용하여 중간 수준 최적화의 기회를 놓치는 한계를 극복한다.
제안 방법
- MLIR의 다이얼렉트 추상화를 사용해 다층 IR을 정의하며, 다면체 표현을 위한 Affine 다이얼렉트에서 시작한다.
- Affine IR에서 다면체 최적화를 수행하며, 이는 루프 구조, 경계, 스케줄링 정보를 애매하지 않은 형식으로 유지한다.
- 점진적 내림을 수행한다: Affine IR에서 Standard IR(비트코드와 유사한 수준)로, 그 다음 CIRCT의 하드웨어 전용 다이얼렉트로 변환한다.
- C 코드를 Affine IR로 변환하기 위해 Polygeist와 통합함으로써 C에서 하드웨어로의 엔드 투 엔드 컴파일링을 가능하게 한다.
- 플랫폼별 최적화(예: 파ipel라인, 루프 전개, 타일링)를 적절한 추상화 수준에서 조합 가능한 MLIR 변환으로 직접 구현한다.
- Affine IR 내의 애매한 맵과 경계가 있는 루프를 활용해 복잡한 변환(예: 부분 경계 상자 타일링)을 직접 표현함으로써 코드 재생산이 필요 없도록 한다.
실험 결과
연구 질문
- RQ1현대 HLS 파이프라인에서 플랫폼별 맞춤 설정이 필요한 상황에서 다면체 최적화를 효과적으로 통합할 수 있는 방법은 무엇인가?
- RQ2고수준 다면체 변환과 저수준 HLS 최적화를 모두 지원하기 위해 필요한 중간 표현 수준은 무엇인가?
- RQ3MLIR에서의 점진적 내림이 HLS 파이프라인 전반에 걸쳐 조합 가능하고 재사용 가능한 변환을 가능하게 할 수 있는가?
- RQ4MLIR의 Affine 다이얼렉트를 사용할 경우, 기존 AST 기반 접근 방식에 비해 다면체 코드 생성의 표현력과 정확성이 어떻게 향상되는가?
- RQ5MLIR의 다이얼렉트 시스템이 HLS에서 소프트웨어와 하드웨어의 엔드 투 엔드 공동 설계를 얼마나 잘 지원할 수 있는가?
주요 결과
- $φ_{sm}$는 Affine IR 수준에서 다면체 최적화를 수행함으로써 향후 HLS 변환을 위한 루프 구조와 스케줄링 정보를 유지한다.
- Affine IR의 사용을 통해 타일링 및 병렬화 변환(예: 부분 경계 상자 타일링)을 다면체 출력에서의 코드 재생산 없이 직접 조작할 수 있다.
- Affine에서 Standard 및 CIRCT 다이얼렉트로의 점진적 내림은 기존 HLS 도구(Vitis 등) 및 하드웨어 기반 생성기와의 원활한 통합을 가능하게 한다.
- 중간 추상화 수준에서 작동함으로써 $φ_{sm}$는 C 유사 AST에서 다면체 정보가 더 이상 이용 불가능해지는 상황에서의 최적화 기회 손실을 방지한다.
- 조합 가능하고 재사용 가능한 변환을 지원함으로써 새로운 HLS 타겟 및 최적화 기법에 대한 확장성을 실현한다.
- 구조화된 IR를 통해 복잡한 데이터 레이아웃 및 스케줄링 결정을 다루는 데 있어 소프트웨어와 하드웨어의 공동 설계가 타당하고 효율적임을 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.