Skip to main content
QUICK REVIEW

[論文レビュー] MicroRec: Efficient Recommendation Inference by Hardware and Data Structure Solutions

Wenqi Jiang, Zhenhao He|arXiv (Cornell University)|Oct 12, 2020
Advanced Image and Video Retrieval Techniques参考文献 54被引用数 11
ひとこと要約

MicroRecは、デカルト積を用いたデータ構造最適化とFPGA上でのハイグレインメモリ(HBM)の活用により、ディープラーニングベースの推薦システムにおけるメモリバウンドなボトル neck を軽減する高性能な推薦推論エンジンを提案する。これにより、埋め込みテーブルのランダムアクセスに起因する高遅延を解消し、埋め込み照合の速度が13.8–14.7倍向上し、CPUベースライン比でスループットが2.5–5.4倍向上。推論遅延はミリ秒からマイクロ秒レベルに短縮された。

ABSTRACT

Deep neural networks are widely used in personalized recommendation systems. Unlike regular DNN inference workloads, recommendation inference is memory-bound due to the many random memory accesses needed to lookup the embedding tables. The inference is also heavily constrained in terms of latency because producing a recommendation for a user must be done in about tens of milliseconds. In this paper, we propose MicroRec, a high-performance inference engine for recommendation systems. MicroRec accelerates recommendation inference by (1) redesigning the data structures involved in the embeddings to reduce the number of lookups needed and (2) taking advantage of the availability of High-Bandwidth Memory (HBM) in FPGA accelerators to tackle the latency by enabling parallel lookups. We have implemented the resulting design on an FPGA board including the embedding lookup step as well as the complete inference process. Compared to the optimized CPU baseline (16 vCPU, AVX2-enabled), MicroRec achieves 13.8~14.7x speedup on embedding lookup alone and 2.5$~5.4x speedup for the entire recommendation inference in terms of throughput. As for latency, CPU-based engines needs milliseconds for inferring a recommendation while MicroRec only takes microseconds, a significant advantage in real-time recommendation systems.

研究の動機と目的

  • 推奨モデルの埋め込みテーブル照合におけるランダムアクセスによる高遅延なDRAMアクセスに起因する、ディープラーニング推論のメモリバウンド特性を是正すること。
  • スパース特徴の埋め込み取得におけるメモリアクセス回数を、効率的なデータ構造設計により低減すること。
  • FPGA上でのハイグレインメモリ(HBM)を活用し、並列な埋め込み照合を実現し、推論遅延を低減すること。
  • リアルタイムプロダクションシステムに適した低遅延・高スループットの推薦推論を実現すること。
  • 特殊なDRAMアーキテクチャや大規模フレームワーク最適化に依存しない実用的でハードウェアに配慮したソリューションを提供すること。

提案手法

  • 埋め込みテーブル照合時のランダムメモリアクセス回数を最小化するため、デカルト積を用いた埋め込みデータ構造の再設計。
  • HBMの広帯域メモリインターフェースがもたらす並列性を最大限に活かすために、深くパイプライン化されたFPGAアーキテクチャの実装。
  • 複数のHBMメモリチャネルに埋め込みテーブルを分散することで、同時にアクセス可能な帯域幅を増加。
  • FPGAアクセラレータ上での完全な推論パイプラインに最適化された埋め込み照合を統合。
  • HBMを組み合わせたハイブリッドメモリシステムを採用し、スパース特徴処理のためのメモリ帯域幅を拡大し、遅延を低減。
  • フレームワークレベルのオーバーヘッドを最小限に抑えるために、計算とメモリアクセスをカスタムハードウェアにオフロードする推論パイプライン最適化。

実験結果

リサーチクエスチョン

  • RQ1デカルト積に基づくデータ構造は、推薦モデルの埋め込み照合におけるランダムメモリアクセス回数を削減できるか?
  • RQ2HBMを搭載したFPGAアクセラレータは、推薦推論におけるメモリウォールを克服するのに十分な並列性を実現できるか?
  • RQ3ハードウェアに配慮したデータ構造とメモリシステムの共同設計は、エンドツーエンドの推論スループットと遅延にどの程度改善をもたらすか?
  • RQ4本手法は最適化済みのCPUベース推論エンジンと比較して、遅延とスループットの点で優れているか?
  • RQ5本ソリューションは、産業規模の推薦ワークロードにおいても、リアルタイム遅延要件(数十ミリ秒未満)を満たしつつ、高いスループットを維持できるか?

主な発見

  • MicroRecは、最適化済みの16コアAVX2対応CPUベースラインと比較して、埋め込み照合の部分で13.8–14.7倍の高速化を達成した。
  • 完全な推薦推論スループットはCPUベースライン比で2.5–5.4倍向上し、顕著なシステム全体の性能向上を示した。
  • 推論遅延はCPU上でのミリ秒レベルからMicroRecではマイクロ秒レベルに短縮され、リアルタイム推薦のデプロイメントを可能にした。
  • デカルト積の活用により、必要な埋め込みテーブル照合回数が削減され、直接的にメモリアクセスのボトル neck を是正した。
  • FPGA上でのHBMベースの並列化により、埋め込み照合における高並列性が実現され、このワークロードにおけるメモリウォールが効果的に解消された。
  • データ構造最適化とハードウェアアクセラレーションを統合したエンドツーエンドのシステム設計により、推薦推論における主な性能ボトル neck が成功裏に解消された。

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

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

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

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