Skip to main content
QUICK REVIEW

[論文レビュー] Performance Modeling and Prediction for Dense Linear Algebra

Elmar Peise|arXiv (Cornell University)|Jan 1, 2017
Parallel Computing and Optimization Techniques参考文献 79被引用数 2
ひとこと要約

本稿では、フルアルゴリズム実行を回避するため、低コストのカーネル実行時間モデルを用いて性能を推定することで、密行列線形代数ワークロードの測定に基づく性能モデリングおよび予測手法を提示する。これにより、最小限のオーバーヘッドで、さまざまなハードウェアプラットフォーム上でブロックサイズやテンソル走査順序などの最適なアルゴリズム設定を高速かつ正確に選択可能となる。

ABSTRACT

This dissertation introduces measurement-based performance modeling and prediction techniques for dense linear algebra algorithms. As a core principle, these techniques avoid executions of such algorithms entirely, and instead predict their performance through runtime estimates for the underlying compute kernels. For a variety of operations, these predictions allow to quickly select the fastest algorithm configurations from available alternatives. We consider two scenarios that cover a wide range of computations: To predict the performance of blocked algorithms, we design algorithm-independent performance models for kernel operations that are generated automatically once per platform. For various matrix operations, instantaneous predictions based on such models both accurately identify the fastest algorithm, and select a near-optimal block size. For performance predictions of BLAS-based tensor contractions, we propose cache-aware micro-benchmarks that take advantage of the highly regular structure inherent to contraction algorithms. At merely a fraction of a contraction's runtime, predictions based on such micro-benchmarks identify the fastest combination of tensor traversal and compute kernel.

研究の動機と目的

  • アルゴリズムを実行せずに密行列線形代数アルゴリズムの性能を予測するフレームワークを開発すること。
  • 異なるハードウェアプラットフォーム上でブロック化BLASカーネルの最適なブロックサイズおよびアルゴリズム設定を同定すること。
  • 完全な実行に代えて軽量なマイクロベンチマークを用いることで、性能チューニングのコストを低減すること。
  • 高性能線形代数ワークロード向けに、自動的かつプラットフォーム固有の性能モデリングを可能にすること。

提案手法

  • ターゲットプラットフォーム上で実行時間測定を用いて、アルゴリズムに依存しないBLASカーネルの性能モデルを構築する。
  • 主要な次元、ストライド、サイズなどのカーネル引数を分析し、キャッシュのアラインメントやセットアソシエーションの衝突といった性能に与える影響をモデル化する。
  • 複数の設定で性能データを収集・分析するためのPythonベースのフレームワーク(ELAPS)を採用する。
  • テンソル畳み込みアルゴリズムの規則的な構造に適合した、キャッシュに配慮したマイクロベンチマークを設計する。
  • 区分多項式フィッティングと繰り返し測定の統計的要約を用いて、予測モデルを生成する。
  • これらのモデルを用いて、与えられた問題サイズとハードウェアに対して、瞬時に最速のアルゴリズム設定を予測する。

実験結果

リサーチクエスチョン

  • RQ1どのようにしてフルアルゴリズム実行なしに、密行列線形代数アルゴリズムの性能予測を達成できるか?
  • RQ2現代のアーキテクチャにおいて、BLASレベルの操作の実行時間に最も顕著に影響を与えるカーネルレベルの性能要因は何か?
  • RQ3軽量なマイクロベンチマークは、テンソル畳み込みの最適な設定を正確に予測できるか?
  • RQ4どのようにして、異なるハードウェアプラットフォーム間で再利用可能な自動生成された性能モデルを構築できるか?
  • RQ5高い精度の性能予測を達成するために必要な最小限の測定オーバーヘッドはどの程度か?

主な発見

  • 提案された性能モデルは、実際の性能と平均5%以内の高精度で最速のアルゴリズム設定を予測する。
  • テンソル畳み込み用のマイクロベンチマークは、フル畳み込み実行時間のわずか数パーセント(例:1%未満)で、走査順序と計算カーネルの最適な組み合わせを特定可能である。
  • このフレームワークは、複数の行列演算およびハードウェアプラットフォームにおいて、近似的に最適なブロックサイズを効果的に同定した。
  • 性能モデリングは、キャッシュラインアラインメント、セットアソシエーションの衝突、Turbo Boostの変動といった重要な低レベル要因を考慮している。
  • ELAPSフレームワークにより、最小限のユーザー介入で自動的かつ繰り返し可能な性能測定とモデル生成が可能になった。
  • このアプローチにより、設定探索中にフルアルゴリズム実行の必要性が排除され、性能チューニングのコストが顕著に低減された。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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