[FPGA'23] CHARM

CHARM: Composing Heterogeneous AcceleRators for Matrix Multiply on Versal ACAP Architecture

Jinming Zhuang, et.al. on January 6, 2023
doi.org
obsidian에서 수정하기

Abstract

(서론): 딥러닝 애플리케이션에서 가장 많이 사용되는 커널 중 하나는 Dense Matrix Multiply(MM)입니다. 이러한 애플리케이션의 높은 계산 요구를 충족시키기 위해, FPGA와 전용 ASIC 가속기를 특징으로 하는 이종 아키텍처가 유망한 플랫폼으로 떠오르고 있습니다. 예를 들어, AMD/Xilinx Versal ACAP 아키텍처는 범용 CPU 코어와 프로그래머블 로직(PL)을 AI/ML에 최적화된 AI 엔진 프로세서(AIE)와 결합합니다. 1GHz에서 실행되는 400개의 AI 엔진 프로세서 배열은 이론적으로 32비트 부동 소수점(fp32) 데이터에 대해 최대 6.4 TFLOP의 성능을 제공할 수 있습니다.

(한계): 그러나 머신러닝 모델은 대형 및 소형 MM 연산을 모두 포함하는 경우가 많습니다. 대형 MM 연산은 여러 코어에 걸쳐 효율적으로 병렬 처리할 수 있지만, 소형 MM 연산은 일반적으로 그렇지 않습니다. 우리의 조사에서는 BERT 자연어 처리 모델의 일부 소형 MM 레이어를 Versal ACAP의 대형 모놀리식 MM 가속기에서 실행할 때 이론적 최고 성능의 5% 미만을 달성하는 것을 관찰했습니다.

(방법론): 따라서 한 가지 중요한 질문이 제기됩니다: 다양한 크기의 여러 MM 레이어를 포함하는 엔드 투 엔드 애플리케이션에서 제한된 통신 대역폭 하에서 풍부한 계산 자원을 완전히 활용할 수 있도록 가속기를 어떻게 설계할 수 있을까요? 우리는 대형 모놀리식 가속기의 막대한 계산 자원과 애플리케이션의 다양한 크기의 MM 레이어 간의 불일치로 인해 시스템 처리량의 가장 큰 병목 현상을 식별했습니다. 이 문제를 해결하기 위해, 우리는 CHARM 프레임워크를 제안하여 다양한 MM 가속기 아키텍처를 여러 애플리케이션의 다양한 레이어에 대해 동시에 작동하도록 구성합니다. CHARM에는 가속기 분할 및 레이어 스케줄링을 결정하기 위한 설계 공간 탐색을 안내하는 분석 모델이 포함되어 있습니다. 시스템 설계를 용이하게 하기 위해 CHARM은 코드를 자동으로 생성하여 철저한 온보드 설계 검증을 가능하게 합니다.

(결론): 우리는 BERT, ViT, NCF, MLP를 포함한 네 가지 다른 딥러닝 애플리케이션에 대해 AMD/Xilinx Versal ACAP VCK190 평가 보드에 CHARM 프레임워크를 배포했습니다. 실험 결과, 우리는 각각 1.46 TFLOPs, 1.61 TFLOPs, 1.74 TFLOPs, 2.94 TFLOPs의 추론 처리량을 달성했으며, 이는 단일 모놀리식 가속기와 비교하여 BERT에서 5.40배, ViT에서 32.51배, NCF에서 1.00배, MLP에서 1.00배의 처리량 향상을 얻었습니다.

Figure

figure 1

figure 2

figure 3

figure 4

figure 5

figure 6

figure 7

figure 9

figure 10

Table

table 1 table 1

table 2 table 2

table 3 table 3

table 4 table 4

table 5 table 5

table 6 table 6

table 7 table 7

table 8 table 8