Skip to main content
QUICK REVIEW

[論文レビュー] Pangloss: a novel Markov chain prefetcher

Philippos Papaphilippou, Paul H. J. Kelly|arXiv (Cornell University)|Jun 3, 2019
Parallel Computing and Optimization Techniques参考文献 8被引用数 5
ひとこと要約

Pangloss は、ページ単位のデルタ遷移を追跡するセットアソシエイティブキャッシュを用いて、メモリアドレス間のデルタ遷移をモデル化する、ハードウェアに優しいマルコフ連鎖ベースのプリフェッチャーである。複雑なアクセスパターンにおいて精度を向上させる。マルチレベルプリフェッチにおいて、KPCP や BOP よりもそれぞれ 6.8% および 8.4% の幾何平均の高速化を達成し、非プリフェッチングと比較して 40.4% の高速化を実現している。64 KB のメモリ予算内に収まっている。

ABSTRACT

We present Pangloss, an efficient high-performance data prefetcher that approximates a Markov chain on delta transitions. With a limited information scope and space/logic complexity, it is able to reconstruct a variety of both simple and complex access patterns. This is achieved by a highly-efficient representation of the Markov chain to provide accurate values for transition probabilities. In addition, we have added a mechanism to reconstruct delta transitions originally obfuscated by the out-of-order execution or page transitions, such as when streaming data from multiple sources. Our single-level (L2) prefetcher achieves a geometric speedup of 1.7% and 3.2% over selected state-of-the-art baselines (KPCP and BOP). When combined with an equivalent for the L1 cache (L1 & L2), the speedups rise to 6.8% and 8.4%, and 40.4% over non-prefetch. In the multi-core evaluation, there seems to be a considerable performance improvement as well.

研究の動機と目的

  • ページ境界や順序が入れ替わった実行によってデルタ遷移がぼやける中で、マルコフ連鎖モデルの不正確さを解消すること。
  • 複雑なアクセスパターンにおいても正確な遷移確率メトリクスを維持できる、ハードウェアに配慮した空間効率の良いマルコフ連鎖の表現を設計すること。
  • ページ単位のデルタ遷移を追跡することでプリフェッチの正確性と性能を向上させるとともに、コンactなアソシエイティブ構造を用いてグローバルな意思決定を可能にする。
  • 現実的なメモリ制約と論理複雑性制限のもとで、シングルコアおよびマルチコアワークロードにおけるプリフェッチャーの評価を行うこと。

提案手法

  • システムは、現在のデルタでインデックス化されたセットアソシエイティブなデルタキャッシュを用い、頻度の高い次のデルタとその確率を格納する。
  • ページ識別子を追跡する別個のページキャッシュを維持し、ページ遷移を解決することで、ページ間をまたがる無効な遷移を回避する。
  • 走査ヒューリスティックは、確率が 1/3 を超える遷移のみを選択し、1ステートごとに最大2つの候補プリフェッチに制限することで、低遅延の意思決定を実現する。
  • デルタ遷移の頻度に基づく隣接行列を用いてマルコフモデルを構築し、スパarsityをアソシエイティブ構造で活用することで、面積と複雑性を低減する。
  • L1 では 10 ビットのデルタサイズ(512 オフセット)、L2 では 7 ビット(64 オフセット)を採用し、16 ループアソシエイティビティと 7 ビットの LFU カウンタを用いてアクセス頻度を追跡する。
  • ChampSim を用いて 46 個のベンチマークトレースを評価し、KPCP や BOP と比較して、単一レベル(L2)およびマルチレベル(L1 と L2)構成の両方を検証した。

実験結果

リサーチクエスチョン

  • RQ1コンパクトでハードウェアに配慮したマルコフ連鎖表現は、複雑なメモリアクセスパターンにおいて、既存の最先端のプリフェッチャーを上回ることができるか?
  • RQ2ページ境界や順序が入れ替わった実行によってグローバルなデルタストリームが歪められる状況下でも、ページ単位のデルタ追跡は、有効な遷移確率を再構築するのにどれほど有効か?
  • RQ3同じマルコフベースのメカニズムを用いて L1 と L2 のプリフェッチを組み合わせた場合の性能向上は何か?また、マルチコアワークロードにおいてはスケーリングはどの程度達成できるか?
  • RQ4従来のストライドまたは距離ベースのプリフェッチと比較して、提案モデルは誤検出をどの程度低減し、正確性を向上させられるか?

主な発見

  • マルチレベルの Pangloss(L1 と L2)は、シングルコア評価において KPCP より 6.8%、BOP より 8.4% の幾何平均の高速化を達成した。
  • 非プリフェッチングと比較しての幾何平均の高速化は 40.4% であり、ベースラインのプリフェッチャーを著しく上回った。
  • 単一レベルの L2 バージョンは、KPCP より 1.7%、BOP より 3.2% の高速化を達成し、非プリフェッチングと比較して 33.5% の高速化を実現した。
  • 合計面積消費はシングルコアモードで 59.4 KB であり、64 KB のコンテスト予算を大きく下回っており、マルチコアにスケーリングする際にも効率的である。
  • 低アソシエイティビティと確率ベースの走査ヒューリスティックにより、論理複雑性を低く保ち、効率的なハードウェア実装を可能にした。
  • マルチプログラム評価では一貫した性能向上が得られ、マルチレベルプリフェッチャーは多様なプログラムミックスにおいて KPCP を上回った。

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

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

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

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