[FPGA'21] AutoSA

AutoSA: A Polyhedral Compiler for High-Performance Systolic Arrays on FPGA

Jie Wang, et.al. on February 17, 2021
doi.org github
obsidian에서 수정하기

Abstract

(배경) 비록 시스톨릭 어레이 아키텍처가 엄청난 성능을 발휘할 잠재력이 있지만, 목표 응용 프로그램에 맞춘 효율적인 시스톨릭 어레이 프로세서를 커스터마이즈하는 것은 악명 높게 어려운 일입니다. 시스톨릭 어레이 설계는 응용 프로그램의 고수준 특성과 저수준 하드웨어 세부 사항 모두에 대한 지식을 요구하므로, 이는 매우 까다롭고 비효율적인 과정이 됩니다.

(방법론) 사용자를 수동의 반복적인 시행착오 과정에서 해방시키기 위해, 우리는 FPGA에서 시스톨릭 어레이를 생성하기 위한 엔드투엔드 컴파일 프레임워크인 AutoSA를 제안합니다.

  • AutoSA는 폴리헤드럴 프레임워크를 기반으로 하며, 성능을 높이기 위해 다양한 차원에서 최적화를 추가로 통합합니다.
  • 고성능 설계를 탐색하기 위해 효율적이고 포괄적인 설계 공간 탐색이 수행됩니다.

(결론) 우리는 다양한 응용 프로그램에서 AutoSA를 시연했으며, AutoSA는 짧은 시간 내에 높은 성능을 달성했습니다. 예를 들어, 매트릭스 곱셈의 경우, AutoSA는 Xilinx Alveo U250에서 부동 소수점, 16비트 및 8비트 정수 데이터 유형에서 각각 934 GFLOPs, 3.41 TOPs 및 6.95 TOPs를 달성했습니다.

Figure

figure 1

figure 2

figure 3

figure 4

figure 5

figure 6

figure 7

figure 8

figure 9

figure 10

figure 11

figure 12

figure 13

Table

table 1

table 2

table 3

table 4

table 5

table 6

table 7

Result

table 5

table 6

table 7