Skip to main content
QUICK REVIEW

[논문 리뷰] Block Convolution: Towards Memory-Efficient Inference of Large-Scale CNNs on FPGA

Gang Li, Zejian Liu|arXiv (Cornell University)|2021. 05. 19.
Advanced Neural Network Applications참고 문헌 17인용 수 4
한 줄 요약

이 논문은 FPGA 기반의 CNN 추론에서 중간 활성 맵의 외부 메모리 전송을 제거하기 위해 하드웨어에 친화적인 블록 컨볼루션을 제안한다. 이는 활성 맵을 상호 독립적인 공간 블록으로 분할하여 타일 경계 의존성을 제거함으로써, 최소한의 片내 버퍼 사용으로도 종단 간 레이어 융합을 가능하게 한다. 이로 인해 외부 메모리 전송을 99.9% 이상 감소시켜 메모리 제약이 있는 FPGA에서 에너지 효율성과 지연 시간을 크게 향상시키며, ImageNet 분류, COCO 객체 검출, 초해상도 복원 작업에서 비교적 높은 정확도를 유지한다.

ABSTRACT

Deep convolutional neural networks have achieved remarkable progress in recent years. However, the large volume of intermediate results generated during inference poses a significant challenge to the accelerator design for resource-constraint FPGA. Due to the limited on-chip storage, partial results of intermediate layers are frequently transferred back and forth between on-chip memory and off-chip DRAM, leading to a non-negligible increase in latency and energy consumption. In this paper, we propose block convolution, a hardware-friendly, simple, yet efficient convolution operation that can completely avoid the off-chip transfer of intermediate feature maps at run-time. The fundamental idea of block convolution is to eliminate the dependency of feature map tiles in the spatial dimension when spatial tiling is used, which is realized by splitting a feature map into independent blocks so that convolution can be performed separately on individual blocks. We conduct extensive experiments to demonstrate the efficacy of the proposed block convolution on both the algorithm side and the hardware side. Specifically, we evaluate block convolution on 1) VGG-16, ResNet-18, ResNet-50, and MobileNet-V1 for ImageNet classification task; 2) SSD, FPN for COCO object detection task, and 3) VDSR for Set5 single image super-resolution task. Experimental results demonstrate that comparable or higher accuracy can be achieved with block convolution. We also showcase two CNN accelerators via algorithm/hardware co-design based on block convolution on memory-limited FPGAs, and evaluation shows that both accelerators substantially outperform the baseline without off-chip transfer of intermediate feature maps.

연구 동기 및 목표

  • 메모리 제약이 있는 FPGA에서 CNN 추론 중 빈번한 외부 메모리 전송으로 인한 높은 지연 시간과 에너지 소비 문제를 해결하기 위해.
  • 기존 타일 기반 CNN 가속기에서 공간 타일 간 데이터 의존성을 제거하여 중간 활성 맵을 반복적으로 외부 메모리로 전송해야 하는 문제를 해결하기 위해.
  • 片내 버퍼 요구량을 증가시키지 않으면서도 종단 간 레이어 융합을 가능하게 하는 하드웨어에 친화적인 컨볼루션 연산을 설계하기 위해.
  • VGG-16, ResNet, MobileNet, SSD, FPN, VDSR 등의 다양한 CNN 아키텍처에서 블록 컨볼루션의 광범위한 적용 가능성과 효율성을 입증하기 위해.
  • Xilinx ZC706 및 Ultra96 MPSoC 플랫폼에서 공동 설계된 FPGA 가속기들을 통해 블록 컨볼루션의 성능 향상을 검증하기 위해.

제안 방법

  • 블록 컨볼루션은 입력 활성 맵을 상호 독립적인 공간 블록으로 분할하여 타일 간 계산을 분리함으로써, 외부 메모리 전송이 필요한 경계 의존성을 제거한다.
  • 각 블록이 중간 결과를 외부에 저장하지 않고도 입력에서 출력까지 종단 간 처리가 가능하므로, 다중 레이어 융합이 가능해진다.
  • 이 방법은 고정점 정밀도 양자화 및 FPGA에서의 파ipel라인 처리와 같은 기존 하드웨어 최적화 기법과 호환된다.
  • 고수준 합성(HLS)을 사용하여 블록 컨볼루션을 구현하는 하드웨어 가속기를 공동 설계하였으며, 가중치와 중간 결과를 片내 버퍼에 저장하고 외부 데이터 이동을 최소화하였다.
  • 입력 및 출력 타일을 위한 단일 버퍼를 사용하여 더블 버퍼링과 산산이 흩어지는 메모리 접근 패턴의 필요성을 제거하였다.
  • 자원 사용량과 외부 전송량을 측정하기 위해 200MHz에서 Xilinx Ultra96 MPSoC 및 ZC706 SoC 플랫폼에서 평가하였다.

실험 결과

연구 질문

  • RQ1블록 컨볼루션은 FPGA 기반 CNN 추론에서 중간 활성 맵의 외부 메모리 전송이 필요 없어지는가?
  • RQ2블록 컨볼루션은 VGG-16, ResNet, MobileNet, SSD, FPN, VDSR와 같은 다양한 CNN 아키텍처에서 모델 정확도에 어떤 영향을 미치는가?
  • RQ3자원 제약이 있는 FPGA에서 블록 컨볼루션은 片내 버퍼 요구량과 외부 메모리 대역폭 압박을 어느 정도 감소시킬 수 있는가?
  • RQ4기존 타일 기반 방식을 사용한 베이스라인 가속기 대비 블록 컨볼루션 기반 가속기의 지연 시간, 에너지 소비, 자원 사용량 측면에서 성능은 어떻게 비교되는가?
  • RQ5다양한 블로킹 패턴과 크기를 사용할 경우 블록 컨볼루션의 정확도와 하드웨어 효율성에 어떤 영향을 미치는가?

주요 결과

  • 블록 컨볼루션은 VDSR 가속기에서 외부 메모리 전송을 36.48 Gbits에서 31.64 Mbits로 99.9% 이상 감소시켜 에너지 소비와 대역폭 압박을 극적으로 감소시켰다.
  • BRAM 사용량은 432 중 352에서 432 중 264로 감소하여 片내 메모리 절약 효과가 뚜렷하게 나타났다.
  • 베이스라인 가속기에서는 더블 버퍼링과 복잡한 메모리 접근 패턴이 필요로 했지만, 블록 컨볼루션 변형은 이러한 메커니즘의 필요성을 제거하였다.
  • VDSR 모델에서 블록 컨볼루션 가속기는 1% 이내의 정확도 저하로 동일한 PSNR 성능을 달성하여 정확도 손실가 최소화되었음을 확인하였다.
  • 다양한 작업에서 높은 정확도 유지가 가능했으며, ImageNet 분류(VGG-16, ResNet-18/50, MobileNet-V1), COCO 객체 검출(SSD, FPN), Set5 초해상도 복원(VDSR)에서 1% 이내의 mAP/PSNR 저하를 보였다.
  • 공동 설계된 가속기는 외부 전송 제거와 단순화된 메모리 접근 덕분에 베이스라인 대비 뚜렷한 성능 향상을 보였으며, 지연 시간과 에너지 소비가 감소하였다.

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

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

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

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