[논문 리뷰] Interstellar
이 논문은 일곱 개인 루프의 루프 순서와 병렬성 선택으로 모델링함으로써 밀도 높은 DNN 가속기 마이크로아키텍처의 공식적인 분류 체계를 제안한다. Halide의 스케줄링 언어를 사용하여 하드웨어를 표현하고 생성하며, 자원 할당, 특히 메모리 시스템에서의 최적화를 통해 처리량을 유지하면서 에너지 효율성을 최대 4.2배 향상시켰다. 이는 CNN에 대해, 1.6배는 LSTMs에 대해, 1.8배는 MLPs에 대해 달성된다.
We show that DNN accelerator micro-architectures and their program mappings represent specific choices of loop order and hardware parallelism for computing the seven nested loops of DNNs, which enables us to create a formal taxonomy of all existing dense DNN accelerators. Surprisingly, the loop transformations needed to create these hardware variants can be precisely and concisely represented by Halide's scheduling language. By modifying the Halide compiler to generate hardware, we create a system that can fairly compare these prior accelerators. As long as proper loop blocking schemes are used, and the hardware can support mapping replicated loops, many different hardware dataflows yield similar energy efficiency with good performance. This is because the loop blocking can ensure that most data references stay on-chip with good locality and the processing units have high resource utilization. How resources are allocated, especially in the memory system, has a large impact on energy and performance. By optimizing hardware resource allocation while keeping throughput constant, we achieve up to 4.2X energy improvement for Convolutional Neural Networks (CNNs), 1.6X and 1.8X improvement for Long Short-Term Memories (LSTMs) and multi-layer perceptrons (MLPs), respectively.
연구 동기 및 목표
- 기존의 밀도 높은 DNN 가속기 마이크로아키텍처를 일곱 개의 내재된 루프에서의 루프 순서와 병렬성 선택으로 공식적으로 분류하기.
- Halide 스케줄링으로부터 하드웨어를 생성함으로써 이전 가속기 간의 공정한 비교를 가능하게 하기.
- 특히 메모리 시스템에서의 하드웨어 자원 할당이 에너지 효율성과 성능에 미치는 영향을 조사하기.
- 처리량을 유지하면서 자원 할당을 최적화하여 CNN, LSTMs, MLPs 전반에서 에너지 효율성을 극대화하기.
제안 방법
- Halide의 스케줄링 언어를 사용하여 DNN 가속기 마이크로아키텍처를 루프 변환으로 모델링함으로써 루프 순서와 하드웨어 병렬성을 포괄하기.
- 이러한 스케줄링에서 하드웨어 기술 문서를 생성할 수 있도록 Halide 컴파일러를 확장하여 가속기 변종의 자동 합성 가능하게 하기.
- 고도의 데이터 국소성과 片상 데이터 재사용을 보장하기 위해 루프 블로킹 기법을 적용하여 자원 활용도 향상시키기.
- 처리량을 일정하게 유지하면서 하드웨어 자원 할당, 특히 메모리 계층 구성 요소를 체계적으로 변화시키기.
- Halide 컴파일러 스택을 사용하여 다양한 데이터플로우 구성에서 에너지 효율성과 성능 간의 상충 관계 탐색하기.
- 일관된 처리량 제약 조건 하에 표준 DNN 워크로드인 CNNs, LSTMs, MLPs에서 최종 하드웨어 설계 평가하기.
실험 결과
연구 질문
- RQ1기존의 DNN 가속기 마이크로아키텍처는 루프 변환과 스케줄링 원칙을 사용하여 어떻게 공식적으로 분류될 수 있는가?
- RQ2적절한 루프 블로킹이 적용된 경우, 다양한 하드웨어 데이터플로우가 유사한 성능과 에너지 효율성을 달성할 수 있는가?
- RQ3메모리 시스템 자원 할당은 DNN 가속기에서 에너지 효율성과 성능에 어떻게 영향을 미치는가?
- RQ4컴파일러 기반 접근 방식을 통해 이전 가속기 설계와 공정하게 비교 가능한 하드웨어를 생성할 수 있는가?
- RQ5처리량을 일정하게 유지하면서 최적화된 하드웨어 자원 할당을 통해 달성 가능한 최대 에너지 절감은 얼마인가?
주요 결과
- 적절한 루프 블로킹은 높은 데이터 국소성과 片상 데이터 재사용을 보장하여 다양한 하드웨어 데이터플로우 간 유사한 성능과 에너지 효율성을 가능하게 한다.
- 루프 블로킹이 적용된 경우, 다양한 하드웨어 데이터플로우가 효과적인 片상 데이터 재사용과 높은 처리 단위 활용도 덕분에 유사한 에너지 효율성과 성능을 달성한다.
- 메모리 시스템 자원 할당은 DNN 가속기에서 에너지 효율성과 성능에 결정적인 영향을 미친다.
- 처리량을 유지하면서 메모리 자원 할당을 최적화함으로써 이 방법은 컨volutional 신경망(CNNs)에 대해 최대 4.2배의 에너지 절감을 달성한다.
- 장기 단기 기억(LSTMs)에 대해서는 1.6배의 에너지 효율성 향상을, 다층 퍼셉트론(MLPs)에 대해서는 1.8배의 향상을 달성한다.
- Halide 기반 하드웨어 생성 시스템은 정밀한 스케줄링 기반 합성으로 이전 가속기 설계 간의 공정하고 체계적이며 자동화된 비교를 가능하게 한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.