Skip to main content
QUICK REVIEW

[논문 리뷰] ShortcutFusion: From Tensorflow to FPGA-based accelerator with reuse-aware memory allocation for shortcut data

Duy Thanh Nguyen, Hyeonseung Je|arXiv (Cornell University)|2021. 06. 15.
Advanced Neural Network Applications참고 문헌 55인용 수 40
한 줄 요약

ShortcutFusion은 잔차 연결에서의 재사용 인식 정적 메모리 할당을 가능하게 하는 엔드 투 엔드 FPGA 컴파일러 및 가속기 설계로, 외부 DRAM 액세스를 크게 줄이며, EfficientNet-B1의 256×256 입력에서 NVIDIA RTX 2080 Ti 대비 2.8배 빠른 성능과 9.9배 높은 에너지 효율성을 달성한다. 이는 하드웨어 인식 데이터 재사용과 공유 MAC 어레이를 통해 활성화된 특징맵 메모리 트래픽을 최소화함으로써 달성된다.

ABSTRACT

Residual block is a very common component in recent state-of-the art CNNs such as EfficientNet or EfficientDet. Shortcut data accounts for nearly 40% of feature-maps access in ResNet152 [8]. Most of the previous DNN compilers, accelerators ignore the shortcut data optimization. This paper presents ShortcutFusion, an optimization tool for FPGA-based accelerator with a reuse-aware static memory allocation for shortcut data, to maximize on-chip data reuse given resource constraints. From TensorFlow DNN models, the proposed design generates instruction sets for a group of nodes which uses an optimized data reuse for each residual block. The accelerator design implemented on the Xilinx KCU1500 FPGA card 2.8x faster and 9.9x more power efficient than NVIDIA RTX 2080 Ti for 256x256 input size. . Compared to the result from baseline, in which the weights, inputs, and outputs are accessed from the off-chip memory exactly once per each layer, ShortcutFusion reduces the DRAM access by 47.8-84.8% for RetinaNet, Yolov3, ResNet152, and EfficientNet. Given a similar buffer size to ShortcutMining [8], which also mine the shortcut data in hardware, the proposed work reduces off-chip access for feature-maps 5.27x while accessing weight from off-chip memory exactly once.

연구 동기 및 목표

  • 현대 CNN인 EfficientNet 및 ResNet152와 같이 40%까지 특징맵 트래픽을 차지하는 잔차 연결로 인한 높은 외부 메모리 액세스 문제를 해결하기 위해.
  • 기존 DNN 컴파일러 및 가속기들이 교차 레이어 잔차 데이터 재사용과 최적화되지 않은 메모리 할당을 간과하는 한계를 극복하기 위해.
  • 최소한의 외부 메모리 액세스로, on-chip 버퍼 제약 조건 하에 TensorFlow 동 冻결 모델에서 FPGA 기반 추론까지의 엔드 투 엔드 플로우를 설계하기 위해.
  • 공유 MAC 어레이 아키텍처와 지능형 데이터 재사용 스케줄링을 통해 높은 MAC 효율성과 낮은 지연 시간을 달성하기 위해.

제안 방법

  • 컴파일러는 잔차 블록을 분석하고, 레이어 간에 최적의 재사용 패턴을 식별함으로써 재사용 인식 정적 메모리 할당을 수행한다.
  • 최적화된 데이터 재사용을 통해 여러 노드를 하나의 커널로 융합하여, 외부 DRAM에 대한 중복 액세스를 최소화한다.
  • 하드웨어 가속기는 최적화된 활용도를 달성하고 면적 오버헤드를 줄이기 위해 공유 MAC 어레이 아키텍처를 채택한다.
  • 제한된 on-chip 버퍼 조건 하에서도, 가중치와 특징맵이 각 레이어당 외부 메모리에서 정확히 한 번씩 액세스되도록 보장한다.
  • 사용자 정의 데이터플로우 스케줄러는 각 레이어의 특성에 맞게 입력, 출력, 가중치 재사용을 포함한 다양한 재사용 전략을 탄력적으로 지원한다.
  • TensorFlow 동 冻결 모델에서부터 Xilinx KCU1500 FPGA까지의 엔드 투 엔드 컴파일을 지원하며, 8비트 추론을 지원한다.

실험 결과

연구 질문

  • RQ1하드웨어 복잡도 증가 없이 컴파일러 기반 접근법이 잔차 네트워크에서의 외부 메모리 액세스를 현저히 줄일 수 있는가?
  • RQ2재사용 인식 정적 메모리 할당은 FPGA에서 높은 MAC 효율성을 유지하면서 DRAM 트래픽을 얼마나 효과적으로 줄일 수 있는가?
  • RQ3현대적인 Squeeze-and-Excitation 기반 CNN인 EfficientNet-B1과 같은 모델에서 FPGA 기반 가속기가 GPU에 비해 지연 시간과 에너지 효율성 면에서 얼마나 뛰어난가?
  • RQ4제안된 공유 MAC 아키텍처는 전통적 설계 대비 자원 활용도와 처리량 측면에서 어떻게 비교되는가?

주요 결과

  • ShortcutFusion은 RetinaNet, YOLOv3, ResNet152, EfficientNet 모델 전반에서 기준 대비 47.8%에서 84.8%까지 DRAM 액세스를 감소시켰다.
  • 256×256 입력을 가진 EfficientNet-B1의 경우, FPGA 가속기는 NVIDIA RTX 2080 Ti 대비 2.8배 빠른 성능과 9.9배 높은 에너지 효율성을 확보했다.
  • ShortcutMining과 유사한 버퍼 크기 조건에서, ShortcutFusion은 외부 특징맵 액세스를 5.27배 줄였고, 가중치 액세스는 오직 한 번뿐이었다.
  • KCU1500에서 200 MHz에서 317.1 GOPS를 달성했으며, 2176개의 DSP를 사용했고, 깊이 분리 합성곱 패턴으로 인해 낮은 DSP 활용도(19.37%)에도 불구하고 높은 효율성을 보였다.
  • 가속기는 100% 가중치 재사용을 유지하며 중간 데이터 이동을 최소화하여, 256×256 입력 기준 총 외부 메모리 액세스를 60.7 MB로 줄였다.
  • 이 방법은 ASIC 설계에도 적용 가능하며, on-chip 버퍼와 외부 메모리 간의 트레이드오프를 위한 통합 최적화 전략을 제공한다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.