[논문 리뷰] STONNE: A Detailed Architectural Simulator for Flexible Neural Network Accelerators
STONNE는 유연한 DNN 추론 가속기용 사이클 정확도가 높고 모듈형이며 확장 가능한 아키텍처 시뮬레이터로, 완전한 DNN 워크로드의 엔드 투 엔드 평가를 가능하게 한다. 이는 MAERI 아키텍처의 폴딩 전략이 계산 단위의 이용률을 매우 낮게 유지(평균 25%)하여 폴딩 중 부분 합 재분배가 비효율적으로 발생함으로써 최대 610%의 성능 저하를 초래함을 드러낸다.
The design of specialized architectures for accelerating the inference procedure of Deep Neural Networks (DNNs) is a booming area of research nowadays. First-generation rigid proposals have been rapidly replaced by more advanced flexible accelerator architectures able to efficiently support a variety of layer types and dimensions. As the complexity of the designs grows, it is more and more appealing for researchers to have cycle-accurate simulation tools at their disposal to allow for fast and accurate design-space exploration, and rapid quantification of the efficacy of architectural enhancements during the early stages of a design. To this end, we present STONNE (Simulation TOol of Neural Network Engines), a cycle-accurate, highly-modular and highly-extensible simulation framework that enables end-to-end evaluation of flexible accelerator architectures running complete contemporary DNN models. We use STONNE to model the recently proposed MAERI architecture and show how it can closely approach the performance results of the publicly available BSV-coded MAERI implementation. Then, we conduct a comprehensive evaluation and demonstrate that the folding strategy implemented for MAERI results in very low compute unit utilization (25% on average across 5 DNN models) which in the end translates into poor performance.
연구 동기 및 목표
- 차세대 유연한 DNN 추론 가속기용 상세하고 오픈소스인 시뮬레이터의 부족을 해결하기 위해.
- 유연한 가속기 아키텍처를 위한 정확한 사이클 정확도 기반의 설계 공간 탐색을 가능하게 하기 위해.
- 특히 폴딩 전략과 같은 아키텍처 선택의 성능 영향을 평가하기 위해.
- 기존 DNN 모델을 커스텀 가속기 패턴에서 엔드 투 엔드 시뮬레이션을 지원하는 모듈형이고 확장 가능한 프레임워크를 제공하기 위해.
- 최신 유연한 가속기인 MAERI와 같이 자원 이용률이 비효율적인 경우 발생하는 성능 저하를 정량화하기 위해.
제안 방법
- STONNE는 유연한 DNN 가속기 아키텍처의 전체 데이터플로우 및 제어 플로우를 모델링하는 사이클 정확도 시뮬레이터이다.
- 완전한 DNN 모델의 엔드 투 엔드 시뮬레이션을 지원하며, 레이어 단위 실행 및 메모리 계층 구조 동작을 포함한다.
- 계산 단위, 片상 네트워크(DN 및 RN), 대규모 레이어 처리를 위한 폴딩과 같은 데이터플로우 패턴을 모델링한다.
- 새로운 가속기 패턴, 데이터플로우, 메모리 계층 구조를 쉽게 확장할 수 있도록 모듈형 아키텍처를 사용한다.
- 기존 모델인 MAERI와 통합되어 BSV로 구현된 구현체와의 검증을 가능하게 하며, 평균 15%의 사이클 차이를 보인다.
- 승수 이용률, 사이클 수, 이론적 대비 실제 이용률 등의 성능 메트릭을 보고하여 비효율성을 정량화한다.
실험 결과
연구 질문
- RQ1STONNE는 MAERI와 같은 유연한 DNN 가속기 아키텍처의 동작을 얼마나 정확하게 시뮬레이션할 수 있는가?
- RQ2폴딩 전략은 유연한 가속기에서 계산 단위 이용률에 어떤 영향을 미치는가?
- RQ3이론적 피크 이용률이 높음에도 불구하고 MAERI 아키텍처가 낮은 성능을 보이는 이유는 무엇인가?
- RQ4폴딩 중 비효율적인 부분 합 재분배가 전체 가속기 성능에 얼마나 큰 영향을 미치는가?
- RQ5STONNE는 유연한 가속기 자원 이용률 최적화를 위한 효과적인 설계 공간 탐색을 가능하게 하는가?
주요 결과
- STONNE는 공개된 BSV로 작성된 MAERI 구현체를 시뮬레이션할 때 평균 15%의 사이클 차이를 보이며 정확도를 검증하였다.
- MAERI 아키텍처는 다섯 개의 DNN 모델을 통해 평균 25%의 승수 이용률을 보이며, 이는 폴딩 전략 탓이다.
- 최대 대역폭(초당 64개 요소)을 사용함에도 불구하고, 일부 레이어인 CONV1 및 CONV3에서는 승수 이용률이 15% 미만으로 유지된다.
- 이론적 피크 이용률은 실제 이용률보다 크게 높으며, 일부 레이어는 9% 미만의 이용률을 기록한다(예: FC7).
- 비효율적인 자원 활용과 파이ipel라인 정지로 인해 폴딩 전략으로 인한 성능 저하는 최대 610%까지 도달한다.
- 승수와 감소 네트워크 사이의 종속성으로 인해 폴딩 중 파이프라인 실행이 불가능해져 성능이 심각하게 제한된다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.