Skip to main content
QUICK REVIEW

[論文レビュー] RecNMP: Accelerating Personalized Recommendation with Near-Memory Processing

Liu Ke, Udit Gupta|arXiv (Cornell University)|Dec 30, 2019
Caching and Content Delivery参考文献 62被引用数 7
ひとこと要約

RecNMPは、パーソナライズドレコメンデーションシステムにおけるスパース埋め込み演算を高速化する、軽量で商品化されたDRAM互換のニアメモリプロセッシングアーキテクチャを提案する。ランクレベルの並列処理、メモリ側キャッシュ、テーブルに特化したスケジューリングを活用することで、実稼働規模のモデルにおいて最大9.8倍のメモリ遅延の高速化と4.2倍のスループット向上、45.8%のメモリエネルギー削減を達成した。

ABSTRACT

Personalized recommendation systems leverage deep learning models and account for the majority of data center AI cycles. Their performance is dominated by memory-bound sparse embedding operations with unique irregular memory access patterns that pose a fundamental challenge to accelerate. This paper proposes a lightweight, commodity DRAM compliant, near-memory processing solution to accelerate personalized recommendation inference. The in-depth characterization of production-grade recommendation models shows that embedding operations with high model-, operator- and data-level parallelism lead to memory bandwidth saturation, limiting recommendation inference performance. We propose RecNMP which provides a scalable solution to improve system throughput, supporting a broad range of sparse embedding models. RecNMP is specifically tailored to production environments with heavy co-location of operators on a single server. Several hardware/software co-optimization techniques such as memory-side caching, table-aware packet scheduling, and hot entry profiling are studied, resulting in up to 9.8x memory latency speedup over a highly-optimized baseline. Overall, RecNMP offers 4.2x throughput improvement and 45.8% memory energy savings.

研究の動機と目的

  • スパース埋め込み演算が支配的である実稼働規模のディープラーニングベースのパーソナライズドレコメンデーションシステムにおけるメモリバウンドボトルネックを解消すること。
  • 既存の加速技術が規則的なデータフローや空間的局所性に依存しており、スパース埋め込みワークロードには適用できないという制限を克服すること。
  • 大規模な埋め込みテーブル(数十〜数百GB)をサポートできる、商品化されたDDR4 DIMMと互換性のある実用的でスケーラブルかつエネルギー効率の良いニアメモリプロセッシングソリューションを設計すること。
  • 実世界のレコメンデーションワークロードのアクセスパターンに特化した、ハードウェアとソフトウェアの共同最適化により、システム全体のパフォーマンスを最適化すること。
  • CPU上のキャッシュ競合を軽減するため、埋め込み演算をメモリ側のプロセッシングユニットにオフロードすることで、全体の推論スループットと効率を向上させること。

提案手法

  • 商品化されたDDR4 DRAMを用い、メモリバッファチップに軽量なプロセッシングユニット(PU)を統合したDIMMベースのニアメモリプロセッシングアーキテクチャを実装する。
  • DRAMにおけるランクレベルの並列処理を活用し、複数のメモリランクに埋め込みテーブルの参照を分散させることで、スパース埋め込みベクトルの並列処理を可能にする。
  • 埋め込みアクセスパターンにおける時間的局所性を活用するため、メモリ側キャッシュを導入し、不要なオフチップメモリアクセスを削減する。
  • 高頻度アクセスの埋め込みテーブルを優先するテーブルに特化したパケットスケジューリング機構を設計し、C/Aバスの競合を最小限に抑える。
  • 制御およびアドレス帯域幅のオーバーヘッドを削減するため、圧縮されたNMP命令セットを独自に開発し、小さな埋め込みベクトルにおけるGather-Reduce演算の効率的実行を可能にする。
  • CPU上で密行列の全結合(FC)演算を保持しつつ、SparseLengthsSum(SLS)ファミリー演算をメモリ側のPUにオフロードすることで、システム全体を共同最適化し、CPUキャッシュの圧迫を軽減する。

実験結果

リサーチクエスチョン

  • RQ1ニアメモリプロセッシングは、スパース埋め込み演算が支配的である実稼働規模のパーソナライズドレコメンデーションモデルにおけるメモリ帯域幅ボトルネックをどの程度軽減できるか?
  • RQ2商品化されたDRAMシステムにおけるランクレベルの並列処理は、レコメンデーションモデルに一般的な不規則なスパースメモリアクセスパターンをどのようにスケーラブルに高速化できるか?
  • RQ3特許取得済みの3D/2.5Dメモリスタックを必要とせず、スパース埋め込み推論におけるメモリアクセス遅延とエネルギー消費を効果的に低減するためのハードウェア・ソフトウェア共同設計技術は何か?
  • RQ4高い不規則性を示す実世界の生産環境用埋め込みトレースに適用した場合、メモリ側キャッシュとテーブルに特化したスケジューリングは、性能向上に顕著な効果をもたらすか?
  • RQ5既存のニアメモリまたはニアデータ加速ソリューションと比較して、標準DIMMに軽量なプロセッシングユニットを統合する場合のパフォーマンスとエネルギー効率のトレードオフは何か?

主な発見

  • RecNMPは、高度に最適化されたベースラインと比較して、ランクレベルの並列処理とメモリ側キャッシュの有効活用のおかげで、スパース埋め込み演算におけるメモリ遅延を最大9.8倍高速化した。
  • 代表的な生産モデルにおいて、システム全体の推論スループットが4.2倍向上し、メモリエネルギー消費が45.8%削減された。
  • SLS演算をメモリ側PUにオフロードすることで、CPUキャッシュ競合が軽減され、共存する全結合(FC)演算の遅延が最大30%低下した。
  • RecNMPの軽量PU設計は、同等のCGRAベースのソリューション(例:Chameleon)と比較して、面積の4.1–6.5%、消費電力の4.6–5.9%しか占めないため、極めてエネルギー効率が良い。
  • システムはランク数に比例してスケーリングされ、さまざまなベクトルサイズとアクセスパターンを持つスパース埋め込みモデルにおいても、一貫したパフォーマンス向上が得られた。
  • 空間的局所性に依存するシステムとは異なり、ランクレベルの並列処理を活用し、小さな埋め込みベクトルをサポートする点で、TensorDIMM や Chameleon よりも優れた性能を発揮した。

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

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

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

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