Skip to main content
QUICK REVIEW

[논문 리뷰] SMAUG: End-to-End Full-Stack Simulation Infrastructure for Deep Learning Workloads

Sam Likun Xi, Yuan Yao|arXiv (Cornell University)|2019. 12. 10.
Advanced Neural Network Applications참고 문헌 63인용 수 10
한 줄 요약

SMAUG는 RTL을 필요로 하지 않고 전체 시스템 SoC 시뮬레이터(gem5-Aladdin) 내에서 DNN 워크로드의 엔드 투 엔드, 사이클 정확도 시뮬레이션을 위한 새로운 딥러닝 프레임워크이다. 이는 가속기 마이크로아키텍처를 수정하지 않고도 데이터 이동, 소프트웨어 스택 오버헤드 및 SoC-가속기 인터페이스 최적화를 통해 엔드 투 엔드 추론 지연 시간을 최대 5배 향상시킨다.

ABSTRACT

In recent years, there has been tremendous advances in hardware acceleration of deep neural networks. However, most of the research has focused on optimizing accelerator microarchitecture for higher performance and energy efficiency on a per-layer basis. We find that for overall single-batch inference latency, the accelerator may only make up 25-40%, with the rest spent on data movement and in the deep learning software framework. Thus far, it has been very difficult to study end-to-end DNN performance during early stage design (before RTL is available) because there are no existing DNN frameworks that support end-to-end simulation with easy custom hardware accelerator integration. To address this gap in research infrastructure, we present SMAUG, the first DNN framework that is purpose-built for simulation of end-to-end deep learning applications. SMAUG offers researchers a wide range of capabilities for evaluating DNN workloads, from diverse network topologies to easy accelerator modeling and SoC integration. To demonstrate the power and value of SMAUG, we present case studies that show how we can optimize overall performance and energy efficiency for up to 1.8-5x speedup over a baseline system, without changing any part of the accelerator microarchitecture, as well as show how SMAUG can tune an SoC for a camera-powered deep learning pipeline.

연구 동기 및 목표

  • RTL이 가용하지 않은 시점에도 전체 스택 DNN 성능 평가를 위한 통합적이고 초기 단계의 시뮬레이션 인프라 부족 문제를 해결하기 위해.
  • 가속기 연산을 초월하여 데이터 이동 및 소프트웨어 스택 오버헤드와 같은 주요 성능 저하 요인을 특정하고 정량화하기 위해.
  • 연구자들이 DNN 추론을 위한 가속기, SoC 및 소프트웨어 스택을 공동 설계할 수 있도록 유연하고 빠르며 확장 가능한 프레임워크를 제공하기 위해.
  • 데이터 레이아웃 변환, 다중 가속기 스케줄링, SoC 인터페이스 효율성과 같은 시스템 수준 요소 최적화를 가능하게 하기 위해.

제안 방법

  • SMAUG는 RTL이 필요 없는 이질적 SoC에 대한 사이클 정확도와 전체 시스템 시뮬레이션 능력을 활용하여 gem5-Aladdin 기반으로 개발되었다.
  • DNN 아키텍처 정의를 위한 파이썬 API를 제공하며, 다양한 연산자 및 네트워크 토폴로지 지원을 가능하게 한다.
  • 운영자 타일링, 다중 스레드 스케줄링, 동기화, CPU, 가속기 및 메모리 간 데이터 이동을 관리하는 완전한 소프트웨어 스택을 포함한다.
  • 행동 모델을 통한 커스텀 하드웨어 가속기의 플러그-앤플러그 통합을 가능하게 하여 가속기 마이크로아키텍처의 빠른 탐색을 지원한다.
  • 다중 가속기, 메모리 계층, 시스템 수준의 경쟁을 포함한 복잡한 SoC 토폴로지 시뮬레이션을 지원한다.
  • 가속기 및 시스템 수준 활동의 정확한 성능 및 에너지 모델링을 가능하게 하며, 데이터 이동 및 CPU 처리 오버헤드를 포함한다.

실험 결과

연구 질문

  • RQ1실제 워크로드에서 엔드 투 엔드 DNN 추론 지연 시간의 어느 정도가 가속기 연산에 기인하고, 어느 정도가 데이터 이동 및 소프트웨어 스택 오버헤드에 기인하는가?
  • RQ2데이터 레이아웃 변환, SoC 인터페이스 설계, 다중 가속기 스케줄링과 같은 시스템 수준 요소가 전체 DNN 추론 성능에 어떤 영향을 미치는가?
  • RQ3기본 가속기 마이크로아키텍처를 변경하지 않고도 소프트웨어 및 시스템 수준 최적화를 통해 엔드 투 엔드 성능을 얼마나 향상시킬 수 있는가?
  • RQ4전체 스택 및 사이클 정확도 시뮬레이션을 지원하는 시뮬레이션 프레임워크가 DNN 가속기의 더 빠르고 효과적인 하드웨어-소프트웨어 공동 설계를 가능하게 하는가?

주요 결과

  • 평균적으로 엔드 투 엔드 추론 지연 시간의 25%는 가속기 연산에 소요되며, 34%는 데이터 이동에 기인하고 42%는 소프트웨어 스택의 CPU 처리에 기인한다.
  • SoC-가속기 인터페이스 및 소프트웨어 스택 관리 최적화를 통해 SMAUG는 가속기 마이크로아키텍처를 변경하지 않고도 엔드 투 엔드 추론 지연 시간을 최대 5배 향상시킬 수 있다.
  • 카메라 기반 딥러닝 파이프라인의 경우, SMAUG는 최적화된 데이터플로우 및 가속기 활용도를 통해 시스템 수준 튜닝을 가능하게 하여 뚜렷한 성능 향상을 이룬다.
  • RTL 또는 HLS 요구 사항을 회피함으로써 빠른 시뮬레이션 속도를 달성하여 가속기 및 SoC의 설계 공간 탐색을 신속하게 가능하게 한다.
  • 사례 연구 결과, 개선된 데이터 레이아웃, 스케줄링, 인터페이스 효율성과 같은 시스템 수준 최적화를 통해 1.8–5배의 성능 향상이 가능하다.
  • SMAUG는 소프트웨어 및 시스템 수준의 병목 현상이 주요 성능 제약 요소임을 입증하였으며, 이러한 문제를 특정하고 해결하기 위해 통합적이고 전체 스택 기반의 시뮬레이션이 필수적임을 보여준다.

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

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

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

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