Skip to main content
QUICK REVIEW

[論文レビュー] Message-Combining Algorithms for Isomorphic, Sparse Collective Communication

Jesper Larsson Träff, Alexandra Carpen-Amarie|arXiv (Cornell University)|Jun 24, 2016
Modular Robots and Swarm Intelligence参考文献 14被引用数 12
ひとこと要約

本稿では、d次元トーラスのような正則なトポロジーにおける同型でスパースな集合的通信のための、局所的に計算可能でメッセージを統合するアルゴリズムを提案する。通信ラウンド数をsから最大Ndに削減し、特に27点ステンシルでは26→6にまで削減され、最大6倍のラウンド削減が達成された。小規模なメッセージ(最大1 kB)では、MPIのネイティブネイバー集約と比較して顕著なレイテンシ低減が実現され、ゼロコピーと導出データ型に基づくスケジューリングにより、冗長なデータコピーを回避したパフォーマンス向上が達成された。

ABSTRACT

Isomorphic (sparse) collective communication is a form of collective communication in which all involved processes communicate in small, identically structured neighborhoods of other processes. Isomorphic neighborhoods are defined via an embedding of the processes in a regularly structured topology, e.g., $d$-dimensional torus, which may correspond to the physical communication network of the underlying system. Isomorphic collective communication is useful for implementing stencil and other regular, sparse distributed computations, where the assumption that all processes behave (almost) symmetrically is justified. In this paper, we show how efficient message-combining communication schedules for isomorphic, sparse collective communication can easily and efficiently be computed by purely local computations. We give schemes for \emph{isomorphic \alltoall} and \emph{\allgather} communication that reduce the number of communication rounds and thereby the communication latency from $s$ to at most $Nd$, for neighborhoods consisting of $s$ processes with the (small) factor $N$ depending on the structure of the neighborhood and the capabilities of the communication system. Using these schedules, we give \emph{zero-copy implementations} of the isomorphic collectives using MPI and its derived datatypes to eliminate explicit, process-local copy operations. By benchmarking the collective communication algorithms against straightforward implementations and against the corresponding MPI neighborhood collectives, we document significant latency improvements of our implementations for block sizes of up to a few kilobytes. We discuss further optimizations for computing even better schedules, some of which have been implemented and benchmarked.

研究の動機と目的

  • ステンシル計算で一般的な同型でスパースな通信パターンに対し、標準的なMPIネイバー集約の非効率性を解消すること。
  • プロセスネイバーのグローバルな正則性を活用し、局所的な計算によって低レイテンシの集合的通信を実現すること。
  • MPIの導出データ型を用いた永続的でゼロコピーの実装を設計し、不要なデータコピーを排除すること。
  • メッセージ統合スケジュールが局所的に計算可能であり、標準MPIおよびネイティブ実装と比較して測定可能なパフォーマンス向上をもたらすことを実証すること。
  • 同型性が外部から保証された場合に、このような最適化をMPIに統合可能かどうかを検討すること。

提案手法

  • d次元トーラストポロジーにおける同一の相対オフセットベクトルにより同型ネイバーを定義し、全プロセスで対称的な通信パターンを実現する。
  • 複数のネイバーへのメッセージを1つの大きなメッセージに統合し、トーラスの次元に沿ってのみ送信するスケジュールを構築することで、通信ラウンド数をsからNdに削減する。
  • MPIの導出データ型を用いてゼロコピー通信を実装し、明示的なローカルバッファコピーを回避し、オーバーヘッドを低減する。
  • 事前に計算されたスケジュールを用いた永続的インターフェースを実装し、繰り返し実行される操作におけるセットアップコストを均等に分散する。
  • 2つのバリアントを設計:1つはラウンド数を最適化(中間ホップを許容)、もう1つはラウンド数と通信量のバランスを取る(直接通信を許容)。
  • さまざまなアーキテクチャ(例:ARCHER、トーラスでないシステム)において、メッセージサイズやプロセス数を変化させた状況で、ネイティブ実装およびMPIネイバー集約と比較してベンチマークを実施する。

実験結果

リサーチクエスチョン

  • RQ1同型のすべて対すべておよびすべて集約のための効率的でデッドロックのないメッセージ統合スケジュールは、ネイバー構造の局所的知識のみを用いて計算可能か?
  • RQ2メッセージ統合により、ネイティブ実装や標準MPI実装と比較して、スパースで同型な集合的通信における通信ラウンド数とレイテンシはどの程度削減可能か?
  • RQ3メッセージサイズ、ネイバー構造、およびネットワークトポロジー(例:トーラス対非トーラス)の違いによって、パフォーマンス向上はどのように変化するか?
  • RQ4同型性が外部から保証された場合に、提案されたアルゴリズムは既存のMPIライブラリに効果的に統合可能か?
  • RQ5同型メッセージ統合スケジュールにおいて、通信ラウンド数と合計通信量の間にはどのようなトレードオフがあるか?

主な発見

  • 提案されたメッセージ統合アルゴリズムにより、通信ラウンド数がsから最大Ndに削減され、1ポートシステムにおける27点ステンシルでは26→6にまで削減され、最大6倍のラウンド削減が達成された。
  • メッセージサイズが1 kB未満の範囲では、最適化された実装が標準MPIネイバー集約およびネイティブ実装を大きく上回り、特にレイテンシに敏感なワークロードで顕著な性能向上が得られた。
  • ARCHERシステムでは、MPIのネイティブ集約がパイプライン処理とマルチポートネットワークのサポートにより優れていたが、メッセージ統合アプローチはネイティブアルゴリズムを大幅に上回った。
  • MPIの導出データ型を用いたゼロコピーアプローチにより、プロセス内でのコピー操作が完全に排除され、レイテンシ低減とパフォーマンス向上に寄与した。
  • メッセージサイズが大きくなると、通信量の増加とノードあたりのプロセス数の増加に伴い、パフォーマンス向上の効果が薄れる傾向にあった。特に分散環境では顕著だった。
  • 本研究は、同型ネイバーの特定が、現在のMPI実装で未活用のままの大幅な最適化機会を提供することを確認した。

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

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

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

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