Skip to main content
QUICK REVIEW

[논문 리뷰] SCNN: An Accelerator for Compressed-sparse Convolutional Neural Networks

Angshuman Parashar, Minsoo Rhu|arXiv (Cornell University)|2017. 05. 23.
Advanced Neural Network Applications참고 문헌 17인용 수 124
한 줄 요약

SCNN은 가중치 및 활성화에 대해 압축-희소 인코딩을 사용하고 PT-IS-CP-sparse 데이터 흐름을 적용한 CNN 추론 가속기로, 밀집 가속기에 비해 상당한 속도 및 에너지 이득을 달성합니다. 64개의 PEs와 1024 곱셈기를 배치하고 온칸 데이터 재사용과 희소 계산을 강조합니다.

ABSTRACT

Convolutional Neural Networks (CNNs) have emerged as a fundamental technology for machine learning. High performance and extreme energy efficiency are critical for deployments of CNNs in a wide range of situations, especially mobile platforms such as autonomous vehicles, cameras, and electronic personal assistants. This paper introduces the Sparse CNN (SCNN) accelerator architecture, which improves performance and energy efficiency by exploiting the zero-valued weights that stem from network pruning during training and zero-valued activations that arise from the common ReLU operator applied during inference. Specifically, SCNN employs a novel dataflow that enables maintaining the sparse weights and activations in a compressed encoding, which eliminates unnecessary data transfers and reduces storage requirements. Furthermore, the SCNN dataflow facilitates efficient delivery of those weights and activations to the multiplier array, where they are extensively reused. In addition, the accumulation of multiplication products are performed in a novel accumulator array. Our results show that on contemporary neural networks, SCNN can improve both performance and energy by a factor of 2.7x and 2.3x, respectively, over a comparably provisioned dense CNN accelerator.

연구 동기 및 목표

  • 가중치 가지치기와 활성화 희소성을 활용하여 효율적인 CNN 추론을 촉진하고 가능하게 한다.
  • 희소 데이터를 압축 상태로 유지하면서 온칩에서 재사용하도록 데이터 흐름과 하드웨어 아키텍처를 개발한다.
  • 데이터 이동을 최소화하고 0인 피연산자에 의한 곱셈을 피한다.
  • 처리량, 에너지, 면적 측면에서 희소 CNN 가속기를 밀집한 대안과 비교 평가한다.

제안 방법

  • 가중치와 활성화의 압축-희소 블록에서 작동하는 PT-IS-CP-sparse 데이터 흐름을 도입한다.
  • 카테시안 곱(Cartesian-product) 곱셈 배열을 사용하여 모든 0이 아닌 쌍의 곱을 계산한다.
  • 올바른 좌표에서 부분 곱을 합산하기 위해 산란 누산기 네트워크를 사용한다.
  • 데이터를 로컬로 유지하기 위해 IARAM/OARAM과 분산 누산기 뱅크 어레 이를 갖춘 온칩 메모리 계층 구조를 구성한다.
  • 출력을 압축-희소 형식으로 표현하고, 헤일로 처리 및 레이어 시퀀싱을 적용하여 PE 간 타일링을 관리한다.
  • 밀집형 대 희소 형 아키텍처를 탐색하기 위해 사이클 수준 시뮬레이션과 분석 모델링(TimeLoop)을 모두 제공한다.

실험 결과

연구 질문

  • RQ1가중치와 활성화의 희소성을 활용하는 것이 특수화된 가속기에서 CNN 추론의 성능과 에너지에 어떤 영향을 미치는가?
  • RQ2가중치, 입력 및 출력에 대한 압축-희소 표현을 최적으로 활용하는 데이터 흐름 및 하드웨어 설계는 무엇인가?
  • RQ3동등한 자원 하에서 희소 CNN 가속기의 면적, 속도, 에너지 간 트레이드오프는 밀집 설계와 비교하여 어떤가?
  • RQ4공통 네트워크(예: AlexNet, GoogLeNet)에서 모든 활성화를 압축 표현으로 온칩에 적합하게 담을 수 있는가?
  • RQ5헤일로/타일 전략이 희소 CNN 가속의 확장성 및 에너지 효율성에 어떤 영향을 미치는가?

주요 결과

  • 64-PE SCNN 구성에서 1024 곱셈기를 갖추면 약 2 테라-연산(Tera-ops) 피크 처리량을 달성한다.
  • SCNN은 비교적으로 구성된 밀집 CNN 가속기에 비해 약 2.7배의 속도 증가와 2.3배의 에너지 감소를 제공합니다.
  • 활성화 및 가중치 희소성은 압축-희소 인코딩과 PT-IS-CP-sparse 데이터 흐름을 통해 활용되어 불필요한 곱셈을 제거합니다.
  • SCNN 설계는 온칩 활성화 RAM(IARAM+OARAM) 1 MB를 사용하고 분산 뱅크 어레이를 통해 부분 합을 누적하여 희소 계산을 지원합니다.
  • 단일 SCNN PE의 면적은 약 0.123 mm^2이고, 전체 64-PE 가속기는 메모리 요건에 의해 주로 좌우되어 약 7.9 mm^2로 추정됩니다.
  • 아키텍처는 TimeLoop 분석과 성능/전력 추정을 위한 사이클 수준 시뮬레이터를 통해 타일링 및 DRAM 접근 에너지 계산을 지원합니다.

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

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

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

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