Skip to main content
QUICK REVIEW

[論文レビュー] DNN+NeuroSim V2.0: An End-to-End Benchmarking Framework for Compute-in-Memory Accelerators for On-chip Training

Xiaochen Peng, Shanshi Huang|arXiv (Cornell University)|Mar 13, 2020
Advanced Memory and Neural Computing参考文献 21被引用数 7
ひとこと要約

DNN+NeuroSim V2.0 は、PyTorch を NeuroSim と統合したエンドツーエンドのベンチマークフレームワークであり、オンチップ学習を目的とした計算メモリ(CIM)アクセラレータをモデル化する。SRAMおよびeNVMデバイスにおける非理想特性(非線形性、非対称性、ばらつき)を組み込み、VGG-8 と CIFAR-10 におけるトレーニング精度、エネルギー効率、スループット、面積の正確な評価を可能にし、実現可能なオンチップ学習に不可欠なデバイス仕様を特定した。

ABSTRACT

DNN+NeuroSim is an integrated framework to benchmark compute-in-memory (CIM) accelerators for deep neural networks, with hierarchical design options from device-level, to circuit-level and up to algorithm-level. A python wrapper is developed to interface NeuroSim with a popular machine learning platform: Pytorch, to support flexible network structures. The framework provides automatic algorithm-to-hardware mapping, and evaluates chip-level area, energy efficiency and throughput for training or inference, as well as training/inference accuracy with hardware constraints. Our prior work (DNN+NeuroSim V1.1) was developed to estimate the impact of reliability in synaptic devices, and analog-to-digital converter (ADC) quantization loss on the accuracy and hardware performance of inference engines. In this work, we further investigated the impact of the analog emerging non-volatile memory non-ideal device properties for on-chip training. By introducing the nonlinearity, asymmetry, device-to-device and cycle-to-cycle variation of weight update into the python wrapper, and peripheral circuits for error/weight gradient computation in NeuroSim core, we benchmarked CIM accelerators based on state-of-the-art SRAM and eNVM devices for VGG-8 on CIFAR-10 dataset, revealing the crucial specs of synaptic devices for on-chip training. The proposed DNN+NeuroSim V2.0 framework is available on GitHub.

研究の動機と目的

  • 計算メモリ(CIM)アクセラレータのオンチップディープニューラルネットワーク(DNN)学習のための正確でエンドツーエンドのベンチマークを可能にすること。
  • 新興の非揮発性メモリ(eNVM)およびSRAMベースのCIMアーキテクチャにおいて、重み更新時の非理想デバイス行動(非線形性、非対称性、デバイス間ばらつき)を包括的にモデル化する手法の欠如に対処すること。
  • Pythonラッパーを統合し、PyTorchと連携することで、柔軟なネットワーク構造のサポートと自動的なアルゴリズムからハードウェアへのマッピングを実現すること。
  • ハードウェア制約下での面積、エネルギー効率、スループット、トレーニング精度といったチップレベルのパフォーマンス指標を評価すること。
  • 最新のSRAMおよびeNVM技術を用いた実現可能なオンチップDNN学習を可能にする、重要なデバイスレベルの仕様を特定すること。

提案手法

  • NeuroSimとPyTorchを接続するPythonラッパーを開発し、動的かつ柔軟なDNNモデル統合を可能にした。
  • NeuroSimのコアを拡張し、重み更新操作中の非線形性、非対称性、サイクル間ばらつきを含む、非理想のシナプスデバイス行動をモデル化した。
  • 誤差および勾配計算のための周辺回路を組み込み、CIMアーキテクチャにおける学習ダイナミクスをシミュレートした。
  • DNNレイヤーをCIMハードウェア構成に自動的にマッピングする仕組みを実装した。
  • 従来バージョンのADC量子化損失モデルおよび信頼性効果を統合し、包括的なトレーニング精度推定を可能にした。
  • CIFAR-10データセットを用いたVGG-8におけるエンドツーエンドシミュレーションを実施し、パフォーマンスと精度のトレードオフを評価した。

実験結果

リサーチクエスチョン

  • RQ1非線形性、非対称性、ばらつきといった非理想デバイス特性が、CIMアクセラレータにおけるオンチップDNN学習の精度と収束にどのように影響を与えるか?
  • RQ2SRAMおよびeNVMの重要なデバイスレベル仕様は何か? これらは、正確で効率的なオンチップ学習を可能にするために不可欠である。
  • RQ3誤差および勾配計算のための周辺回路の統合が、CIMアクセラレータ全体のトレーニングパフォーマンスおよびエネルギー効率にどのように影響を与えるか?
  • RQ4ADC量子化損失およびデバイスばらつきが、CIMベースのシステムにおけるトレーニング精度をどの程度悪化させるか?
  • RQ5SRAMおよびeNVMに基づく異なるCIMアーキテクチャは、オンチップ学習におけるエネルギー効率、スループット、精度の観点でどのように比較できるか?

主な発見

  • 非線形性や非対称性といった非理想デバイス行動は、特にeNVMベースのCIMアクセラレータにおいて、トレーニング精度を顕著に低下させる。
  • 重み更新操作におけるデバイス間およびサイクル間のばらつきは、補正機構がなければ、オンチップ学習の実現可能性を著しく制限する。
  • 本フレームワークは、eNVMデバイスがVGG-8とCIFAR-10で許容可能な精度を達成するためには、非線形性および非対称性の厳密な制御が不可欠であることを明らかにした。
  • SRAMベースのCIMアクセラレータはeNVMよりもデバイスばらつきに対してより高い耐性を示すが、面積およびエネルギーのオーバーヘッドが大きい。
  • ADC量子化損失は、特に低精度学習環境において、精度低下の主要因の一つである。
  • 誤差および勾配計算のための周辺回路の統合により、CIMにおけるバックプロパゲーションの正確なシミュレーションが可能となり、本フレームワークが実際の学習ダイナミクスをモデル化できる能力を裏付けた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。