Skip to main content
QUICK REVIEW

[論文レビュー] Model-based optimization of MPDATA on Intel Xeon Phi through load imbalancing

Alexey Lastovetsky, Łukasz Szustak|arXiv (Cornell University)|Jul 5, 2015
Parallel Computing and Optimization Techniques参考文献 25被引用数 6
ひとこと要約

本論文は、負荷バランスが常にパフォーマンスを最適化するという一般的な常識に挑戦する、モデルベースの最適化手法を提案している。Intel Xeon Phi上でMPDATAのパフォーマンスを向上させるために意図的にワークロードの不均衡を生じさせることで、従来最適化された負荷バランス型構成よりも15%のパフォーマンス向上を達成した。機能的パフォーマンスモデルを用いて非均一なデータ分割を特定することで、性能を向上させた。

ABSTRACT

Load balancing is a widely accepted technique for performance optimization of scientific applications on parallel architectures. Indeed, balanced applications do not waste processor cycles on waiting at points of synchronization and data exchange, maximizing this way the utilization of processors. In this paper, we challenge the universality of the load-balancing approach to optimization of the performance of parallel applications. First, we formulate conditions that should be satisfied by the performance profile of an application in order for the application to achieve its best performance via load balancing. Then we use a real-life scientific application, MPDATA, to demonstrate that its performance profile on a modern parallel architecture, Intel Xeon Phi, significantly deviates from these conditions. Based on this observation, we propose a method of performance optimization of scientific applications through load imbalancing. We also propose an algorithm that finds the optimal, possibly imbalanced, configuration of a data parallel application on a set of homogeneous processors. This algorithm uses functional performance models of the application to find the partitioning that minimizes its computation time but not necessarily balances the load of the processors. We show how to apply this algorithm to optimization of MPDATA on Intel Xeon Phi. Experimental results demonstrate that the performance of this carefully optimized load-balanced application can be further improved by 15\% using the proposed load-imbalancing optimization.

研究の動機と目的

  • 並列科学的アプリケーションにおいて負荷バランスが常にパフォーマンスを最適化するという仮定に挑戦すること。
  • 負荷バランスが計算時間を最小化する条件を特定し、実世界のアプリケーション(Xeon Phi上のMPDATAなど)がこれらの条件を満たさないことを示すこと。
  • 同種のプロセッサ向けに、最適な(場合によっては不均衡な)データ分割を特定するためのパフォーマンスモデリングを用いた新しい最適化手法を開発すること。
  • この手法をIntel Xeon Phi上のMPDATAに適用し、負荷バランス型構成を上回る顕著なパフォーマンス向上を実証すること。

提案手法

  • パフォーマンスプロファイルの特性に基づき、負荷バランスが計算時間を最小化する条件を定式化すること。
  • Intel Xeon Phi上でのMPDATAの非均一なパフォーマンス行動を捉えるために、機能的パフォーマンスモデルを構築すること。
  • パフォーマンスモデルを活用して分割戦略を最適化し、プロセッサ間でデータを非均等に配分することで、合計計算時間を最小化する分割アルゴリズムを設計すること。
  • 異なるドメインオフセット(Δm)を用いてMPDATAにアルゴリズムを適用し、不均衡な構成を探索し、最適なものを同定すること。
  • Xeon Phi上で異なる分割構成の実行時間を測定することで、モデル予測を実験的に検証すること。
  • 理論的予測と実測値を比較し、合計実行時間とスパイドアップの観点から、負荷バランス型と不均衡型構成のパフォーマンスを評価すること。

実験結果

リサーチクエスチョン

  • RQ1並列アプリケーションにおいて、どのような条件下で負荷バランスが計算時間を最小化するか?
  • RQ2Intel Xeon Phi上でのMPDATAのパフォーランスプロファイルは、負荷バランスが最適となるために必要な理想条件からどれほど逸脱しているか?
  • RQ3意図的にワークロードの不均衡を導入することで、負荷バランス型構成を上回るパフォーマンス向上が達成可能か?
  • RQ4機能的パフォーマンスモデルは、計算時間を最小化するための最適な非均一な分割をどれほど正確に予測できるか?
  • RQ5Intel Xeon Phi上のMPDATAにおいて、モデルベースの負荷不均衡最適化によって得られる最大のパフォーマンス向上はどの程度か?

主な発見

  • Intel Xeon Phi上でのMPDATAのパフォーマンスプロファイルは、負荷バランスが計算時間を最小化するための理想条件から顕著に逸脱している。
  • 負荷の不均衡を許容するモデルベースの最適化手法により、注意深く最適化された負荷バランス型構成を上回る15%のパフォーマンス向上が達成された。
  • 480×480×128ドメインにおいて、最適な不均衡構成(Δm = 20)は、負荷バランス型(6.140秒)から5.338秒に実行時間を短縮し、1.15倍のスパイドアップを達成した。
  • 理論的パフォーマンスモデルは最適な構成を正確に予測しており、予測誤差は3%を超えない。
  • モデルが非最適な構成を予測した場合でも、実験結果は不均衡分割による一貫したパフォーマンス向上を示し、小さなドメインではΔm = 9で最大スパイドアップが達成された。
  • 測定のオーバーヘッドにチーム間同期遅延が含まれないため、合計実行時間は常に最大の個別チーム時間よりもわずかに長くなった。

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

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

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

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