Skip to main content
QUICK REVIEW

[論文レビュー] $MC^2RAM$: Markov Chain Monte Carlo Sampling in SRAM for Fast Bayesian Inference

Priyesh Shukla, Ahish Shylendra|arXiv (Cornell University)|Feb 28, 2020
Gaussian Processes and Bayesian Inference参考文献 14被引用数 5
ひとこと要約

本稿では、SRAMアレイ内にメトロポリス=ハスティングスサンプリング、乱数生成(RNG)、アナログ・デジタル/デジタル・アナログ変換(ADC/DAC)を統合することで、ベイジアン推論を高速化する新規なSRAMベースのアーキテクチャMC²RAMを提案する。低精度のADC/DACを用いて現地でメトロポリス=ハスティングスサンプリングを実行し、空間的局所性を活用することで、1 GHzで2000サイクルに500サンプルを達成し、1イテレーションあたりわずか91 μWの消費電力で、データ移動と消費電力を顕著に低減する。また、ハードウェアの非理想性にも耐性を示す。

ABSTRACT

This work discusses the implementation of Markov Chain Monte Carlo (MCMC) sampling from an arbitrary Gaussian mixture model (GMM) within SRAM. We show a novel architecture of SRAM by embedding it with random number generators (RNGs), digital-to-analog converters (DACs), and analog-to-digital converters (ADCs) so that SRAM arrays can be used for high performance Metropolis-Hastings (MH) algorithm-based MCMC sampling. Most of the expensive computations are performed within the SRAM and can be parallelized for high speed sampling. Our iterative compute flow minimizes data movement during sampling. We characterize power-performance trade-off of our design by simulating on 45 nm CMOS technology. For a two-dimensional, two mixture GMM, the implementation consumes ~ 91 micro-Watts power per sampling iteration and produces 500 samples in 2000 clock cycles on an average at 1 GHz clock frequency. Our study highlights interesting insights on how low-level hardware non-idealities can affect high-level sampling characteristics, and recommends ways to optimally operate SRAM within area/power constraints for high performance sampling.

研究の動機と目的

  • 従来のバーナウル型アーキテクチャにおけるベイジアン推論の高エネルギー消費と高遅延を解消するため、SRAMに計算とデータを共存させる。
  • ガウス混合モデル(GMM)のための高スループットで低消費電力なMCMCサンプリングを実現する。GMMは単一のガウス分布モデルよりも表現力に優れる。
  • プロセス変動やADC/DACの精度といったハードウェア非理想性がMCMCサンプリングの精度と性能に与える影響を調査する。
  • ベイジアン推論ワークロードに最適化されたSRAMベースのメモリ内計算における、消費電力と面積のトレードオフを最適化する。

提案手法

  • MCMCサンプリング、パラメータ保存、乱数生成をSRAMアレイ内に直接統合するため、RNGセル、DAC、ADCをSRAMアレイに統合する。
  • 2段階フラッシュADCを採用し、10個のコンパレータを用いて遅延を最小限(2サイクル)に抑え、高いスループットを実現するが、高消費電力である。
  • プロセス変動やチャネル長調制効果を軽減するため、補正済みトランジスタと低スイッチング電圧をDACに採用する。
  • スケーリングされたランダムステップ(R/σ²)をアナログドメインで用いて密度計算を実行し、受容率の計算にはアナログ比較を用いる。
  • 連続するサンプルが値として近接するマルコフ連鎖に基づく反復的フローを採用することで、1イテレーションあたりの計算負荷を最小限に抑える。
  • DACとADCに8ビット精度を採用し、分析によりADCが5ビット未満になるとサンプリング精度が顕著に低下することが判明。

実験結果

リサーチクエスチョン

  • RQ1SRAMに計算とデータを共存させることで、ベイジアン推論のMCMCサンプリングをどのように高速化できるか?
  • RQ2ADC/DACの精度とプロセス変動が、アナログSRAMベースのシステムにおけるMCMCサンプリングの精度に与える影響は何か?
  • RQ3低精度のメモリ内MCMCサンプリングは、消費電力と面積を最小限に抑えると同時に、十分なサンプリング品質を達成できるか?
  • RQ4チャネル長調制や不整合といったハードウェア非理想性が、高レベルのサンプリング特性に与える影響は何か?
  • RQ5面積と精度制約下でのSRAM内MCMCサンプリングにおける最適な消費電力性能トレードオフは何か?

主な発見

  • MC²RAMアーキテクチャは、1 GHzで2000サイクルに500個のMCMCサンプルを達成し、1イテレーションあたり91 μWの消費電力で動作する。
  • ADCの精度がサンプリング精度に強く影響する:5ビット未満の精度では、真値からのKLダイバージェンスが顕著に増加する。
  • DACの精度はKLダイバージェンスにほとんど影響しないことから、DACの非理想性に強く耐性があることが示された。
  • 2段階フラッシュADCに使用される10個のコンパレータはADC消費電力の60%を占めるが、2サイクルの遅延により高いサンプリングスループットを実現している。
  • SRAMとDACは合計で全体消費電力の18%を占め、ADCは82%を占める。
  • GMMのコンポonent間隔が広がるほど、次元数が高くなるほど、サンプリング精度が低下する傾向にあり、スケーラビリティの課題が浮き彫りになった。

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

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

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

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