[논문 리뷰] Refresh Triggered Computation: Improving the Energy Efficiency of Convolutional Neural Network Accelerators
이 논문은 소프트웨어/하드웨어 공동 설계 기법인 리프레시 트리거드 컴퓨테이션(RTC)을 제안한다. 이 기법은 응용 프로그램 메모리 액세스를 리프레시 작업과 동기화하고, 빈 DRAM 영역의 리프레시를 제거하여 CNN 가속기에서 DRAM 리프레시 에너지를 절감한다. 가장 공격적인 RTC 버전은 16GB DRAM 칩에서 단지 0.18%의 면적 오버헤드로 평균 DRAM 에너지를 61.3% 감소시킨다.
To employ a Convolutional Neural Network (CNN) in an energy-constrained embedded system, it is critical for the CNN implementation to be highly energy efficient. Many recent studies propose CNN accelerator architectures with custom computation units that try to improve energy-efficiency and performance of CNNs by minimizing data transfers from DRAM-based main memory. However, in these architectures, DRAM is still responsible for half of the overall energy consumption of the system, on average. A key factor of the high energy consumption of DRAM is the refresh overhead, which is estimated to consume 40% of the total DRAM energy. In this paper, we propose a new mechanism, Refresh Triggered Computation (RTC), that exploits the memory access patterns of CNN applications to reduce the number of refresh operations. We propose three RTC designs (min-RTC, mid-RTC, and full-RTC), each of which requires a different level of aggressiveness in terms of customization to the DRAM subsystem. All of our designs have small overhead. Even the most aggressive RTC design (i.e., full-RTC) imposes an area overhead of only 0.18% in a 16 Gb DRAM chip and can have less overhead for denser chips. Our experimental evaluation on six well-known CNNs show that RTC reduces average DRAM energy consumption by 24.4% and 61.3%, for the least aggressive and the most aggressive RTC implementations, respectively. Besides CNNs, we also evaluate our RTC mechanism on three workloads from other domains. We show that RTC saves 31.9% and 16.9% DRAM energy for Face Recognition and Bayesian Confidence Propagation Neural Network (BCPNN), respectively. We believe RTC can be applied to other applications whose memory access patterns remain predictable for a sufficiently long time.
연구 동기 및 목표
- 에너지 제약이 심한 CNN 가속기에서 DRAM 리프레시 작업의 높은 에너지 소비 문제를 해결하기 위해.
- 데이터 이동 최적화에도 불구하고 여전히 주요 병목이 되는 리프레시 오버헤드로 인한 DRAM 에너지 소비의 40%를 줄이기 위해.
- CNN에서 예측 가능하고 반복적인 메모리 액세스 패턴을 활용하여 불필요한 리프레시 작업을 제거하기 위해.
- 다양한 워크로드에 적용 가능한 확장성 있고 저오버헤드의 메커니즘을 설계하기 위해.
제안 방법
- 응용 프로그램 읽기/쓰기 액세스가 자연스럽게 DRAM 셀을 리프레시한다는 사실을 활용하여 리프레시 작업을 건너뛰는 Refresh Triggered Transfer(RTT)를 도입한다.
- 할당되지 않거나 데이터가 없는 DRAM 행의 리프레시를 비활성화하기 위해 부분 배열 자동 리프레시(PAAR)를 구현한다.
- 성능, 에너지 절감 효과, 하드웨어 오버헤드 간의 트레이드오���을 고려해 min-RTC, mid-RTC, full-RTC 세 가지 RTC 버전을 제안한다.
- 기존 시스템과의 호환성을 확보하기 위해 메모리 컨트롤러와 DRAM 칩에 최소한의 수정으로 RTC를 통합한다.
- DRAM 리프레시가 응용 프로그램 액세스가 리프레시 간격과 겹칠 경우에만 발생하도록 하이브리드 방식을 사용하여 불필요한 리프레시 사이클을 줄인다.
- 일반화 능력을 검증하기 위해 여섯 개의 유명한 CNN과 세 가지 비-CNN 워크로드에서 RTC를 평가한다.
실험 결과
연구 질문
- RQ1CNN에서 응용 프로그램 메모리 액세스 패턴을 활용해 DRAM 리프레시 작업의 수를 줄일 수 있는가?
- RQ2할당되지 않거나 비활성인 DRAM 영역의 리프레시를 제거함으로써 DRAM 에너지 절감 효과를 어느 정도 달성할 수 있는가?
- RQ3RTC는 얼마나 많은 면적과 성능 오버헤드를 유발하며, 높은 에너지 효율성을 유지하면서 이를 최소화할 수 있는가?
- RQ4CNN을 초월해 예측 가능한 메모리 액세스 패턴을 가진 다른 워크로드로 일반화할 수 있는가?
주요 결과
- 가장 공격적인 RTC 버전인 full-RTC는 여섯 개의 유명한 CNN에서 평균 DRAM 에너지 소비를 61.3% 감소시켰다.
- 가장 덜 공격적인 버전인 min-RTC라도 DRAM 에너지 소비를 24.4% 감소시켰다.
- RTC는 얼굴 인식 워크로드에서 DRAM 에너지를 31.9% 감소시키고, 베이지안 신뢰도 전파 신경망(BCPNN)에서는 16.9% 감소시켰다.
- full-RTC는 16GB DRAM 칩에서 단지 0.18%의 면적 오버헤드를 유발하며, 향후 더 고밀도 DRAM 기술에서는 이보다 낮은 오버헤드가 기대된다.
- 기존 최적화 기법인 데이터 압축과 SRAM 버퍼링과도 상호보완적이며, 이를 조합하여 추가적인 에너지 절감이 가능하다.
- RTC는 CNN에 국한되지 않고 정규적이고 예측 가능한 메모리 액세스 패턴을 가진 다양한 데이터 집약적 워크로드에 적용 가능하다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.