Skip to main content
QUICK REVIEW

[논문 리뷰] An Evaluation of Edge TPU Accelerators for Convolutional Neural Networks

Kiran Seshadri, Berkin Akin|arXiv (Cornell University)|2021. 02. 20.
Parallel Computing and Optimization Techniques인용 수 10
한 줄 요약

이 논문은 423,000개의 합성곱 신경망을 대상으로 세 가지 유형의 Edge TPU 가속기 성능을 평가하여, 모델 구조와 가속기 구성에 따른 마이크로아키텍처적 인사이트를 제시한다. 성능 추정을 위해 그래프 신경망 기반의 학습 모델을 제안하였으며, 이는 사이클 정확한 시뮬레이터 대비 약 97%의 정확도와 99% 이상의 순서 상관관계를 달성하여 빠른 하드웨어/소프트웨어 공동 설계를 가능하게 한다.

ABSTRACT

Edge TPUs are a domain of accelerators for low-power, edge devices and are widely used in various Google products such as Coral and Pixel devices. In this paper, we first discuss the major microarchitectural details of Edge TPUs. Then, we extensively evaluate three classes of Edge TPUs, covering different computing ecosystems, that are either currently deployed in Google products or are the product pipeline, across 423K unique convolutional neural networks. Building upon this extensive study, we discuss critical and interpretable microarchitectural insights about the studied classes of Edge TPUs. Mainly, we discuss how Edge TPU accelerators perform across convolutional neural networks with different structures. Finally, we present our ongoing efforts in developing high-accuracy learned machine learning models to estimate the major performance metrics of accelerators such as latency and energy consumption. These learned models enable significantly faster (in the order of milliseconds) evaluations of accelerators as an alternative to time-consuming cycle-accurate simulators and establish an exciting opportunity for rapid hard-ware/software co-design.

연구 동기 및 목표

  • 다양한 아키텍처를 가진 423,000개의 합성곱 신경망에 대해 세 가지 다른 Edge TPU 가속기 클래스의 성능을 평가하는 것.
  • 모델 크기, 연산 유형(예: 3×3 합성곱) 및 파라미터 수에 따라 Edge TPU 성능이 어떻게 변하는지 해석 가능한 마이크로아키텍처적 인사이트를 도출하는 것.
  • I/O 대역폭 및 파라미터 캐싱과 같은 구성 매개변수, 가속기 타일 크기 등이 추론 지연에 미치는 영향을 조사하는 것.
  • 정확한 성능 지표(지연, 에너지 소비)를 추정할 수 있는 기계학습 기반 모델을 개발하고 검증하여 사이클 정확한 시뮬레이션의 빠른 대체 수 Mittel로 활용하는 것.

제안 방법

  • 2차원 처리 요소(PE) 어레이를 가진 템플릿 기반, 파rameterized Edge TPU 마이크로아키텍처를 사용하며, 각 PE는 SIMD MAC 유닛을 갖춘 다수의 계산 랜드를 포함한다.
  • 각 PE는 활성화 및 부분 결과를 위한 공유 PE 메모리와, 고속도 계산을 지원하기 위한 모델 파라미터 저장을 위한 다중은행 코어 메모리를 갖춘다.
  • 소프트웨어 스택은 TensorFlow Lite 모델을 사용하며, 컴파일러, 런타임 및 하드웨어 시뮬레이션을 포함하는 전체 스택을 통해 워크로드가 컴iles되고 실행된다.
  • 그래프 신경망(GNN)은 신경망 그래프의 잠재 표현을 학습하고 추론 지연 및 에너지 소비와 같은 성능 지표를 예측하도록 훈련된다.
  • GNN 모델은 254,160개의 NASBench 모델로 구성된 데이터셋에서 훈련되었으며, 평가에는 84,680개의 별도 테스트 예제를 사용하였으며, 학습률 0.001 및 배치 크기 16 등의 하이퍼파라미터를 적용하였다.
  • 성능 추정 정확도는 사이클 정확한 시뮬레이터의 참값과 비교하여 평균 절대 오차, 스피어만 순서 상관관계, 피어슨 상관관계를 사용해 평가되었다.
Figure 1: Overview of the template-based machine learning accelerator used for architecture exploration.
Figure 1: Overview of the template-based machine learning accelerator used for architecture exploration.

실험 결과

연구 질문

  • RQ1다양한 아키텍처, 크기, 연산 유형을 가진 합성곱 신경망에서 Edge TPU 성능은 어떻게 변하는가?
  • RQ2다양한 학습 가능한 파라미터 수를 가진 모델에서 가속기 타일 크기와 I/O 대역폭은 추론 지연에 어떤 영향을 미치는가?
  • RQ3사이클 정확한 시뮬레이션 대비 학습 모델이 Edge TPU 성능 지표 추정에 얼마나 효과적인가?
  • RQ4파라미터 캐싱은 어떤 상황에서 성능 향상을 가져오며, 언제 수익 감소가 발생하는가?
  • RQ5높은 순서 상관관계를 가진 학습 모델은 비용이 많이 드는 시뮬레이터를 대체하여 하드웨어/소프트웨어 공동 설계 및 설계 공간 탐색에 활용될 수 있는가?

주요 결과

  • 학습 모델은 세 가지 Edge TPU 구성에서 평균 96.8%에서 97.9%의 정확도로 추론 지연을 추정하며, 평균 절대 오차는 약 3%이다.
  • 모델은 참값 지연과 스피어만 순서 상관관계 0.99977에서 0.99981, 피어슨 상관관계 0.99959에서 0.99975를 달성하여 순서 정확도가 거의 완벽한 것으로 나타났다.
  • 높은 파라미터 수를 가진 대규모 모델(예: 많은 3×3 합성곱)에서는 높은 I/O 대역폭 덕분에 구성 V2가 다른 것들보다 성능이 뛰어나며, 파라미터 캐싱은 수익 감소 현상이 나타난다.
  • 파라미터 수가 적은 소규모 모델에서는 구성 V1이 파라미터 캐싱 덕분에 더 낮은 지연을 기록하여 더 큰 이점을 얻는다.
  • 추론 지연은 학습 가능한 파라미터 수와 가장 강하게 상관되며, 이는 I/O 대역폭이 처리 단위나 계산 코어 수보다 성능 저하의 주요 원인임을 시사한다.
  • 가속기 타일 크기를 줄여도 유사한 성능를 유지할 수 있어, 많은 워크로드에 대해 더 작고 효율적인 타일이 타당함을 나타낸다.
Figure 2: Convolutional layer loop nest (without batching) and its mapping on an Edge TPU with one PE and four SIMD lanes (# MACs). Input and output activations are stored in PE memory. The weight parameters are stored in core memory.
Figure 2: Convolutional layer loop nest (without batching) and its mapping on an Edge TPU with one PE and four SIMD lanes (# MACs). Input and output activations are stored in PE memory. The weight parameters are stored in core memory.

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

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

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

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