メニーコアと格闘ブログ:同期通信のモード

出典: トータル・ディスクロージャ・サイト(事実をありのままに)

下に記す参考文献の記事によると、ブロック通信を使ったプロセス間通信にはモードがあることがわかります。


~抜粋(ここから)~

“メッセージは、対応する受信バッファに直接コピーされるか、もしくは、一時的なシステムバッファにコピーされる。メッセージのバッファリングは、送信操作と受信操作を独立なものとする。ブロッキング送信は、たとえ対応する受信が受信側で実行されていなくても、メッセージがバッファリングされるとすぐに完了することができる。一方で、メッセージバッファリングは、新たなメモリ間コピーを伴い、また、バッファリングのためのメモリアロケーションを必要とするのでコストが高くなるかもしれない。 MPIはいくつかの通信モードの選択肢を提供しており、これにより、通信プロトコルの選択を制御することができる。”

~(ここまで)~


要するに、ブロック通信する際、“送信データがどこまで達したら送信完了とみなすか”というところの説明です。下記概念図のように、アプリケーション層とシステム層にバッファを考えます。

アプリケーション層のバッファは、send関数で指定するバッファを指します。


MPIの規格では、3種類の送信モードが用意されています。

・バッファモード

 MPI_SENDが呼ばれると、送信データがシステムバッファに転送されます。このローカルマシン内での転送完了をもって、MPI_SEND完了となるモード。


・同期モード

 SEND側ローカルでのバッファリングが完了し、RECV側でデータ受信を開始した時点で、MPI_SEND完了とみなすモード。  


・レディモード

 受信が既に発行されていることが保証されている場合使用します。


と、いう認識...

後日、モードの違いによる計算速度の比較を記します。


[参考文献1]

 MPI: メッセージ通信インターフェース標準

 (日本語訳ドラフト)

 MPIフォーラム

 MPI日本語訳プロジェクト 訳

 1996年5月31日

 http://phase.hpcc.jp/phase/mpi-j/ml/mpi-j-html/chap3.4-6.html#3-4

[参考文献2]

 MPI Forum

  http://www.mpi-forum.org/

 MPI Documents

  http://www.mpi-forum.org/docs/mpi21-report.pdf

ナン 2009年8月10日 (月) 18:00 (UTC)


この記事へのコメントをお寄せください

  • サイトへの書き込みに差し支えございましたら トータルディスクロージャーサイトサポート係へメールをお送りください
  • トータル・ディスクロージャ・サイトに投稿された文章と画像は、すべてその著作権がHPCシステムズ株式会社に帰属し、HPCシステムズ株式会社が著作権を所有することに同意してください。
  • あなたの文章が他人によって自由に編集、配布されることを望まない場合は、投稿を控えてください。
  • コメントを書き込む場合は名前にひらがなを織り交ぜてください。
  • あなたの投稿する文章と画像はあなた自身によって書かれたものであるか、パブリック・ドメインかそれに類する自由なリソースからの複製であることを約束してください。あなたが著作権を保持していない作品を許諾なしに投稿してはいけません!

<comments hideform="false" />


Comments

ノート:メニーコアと格闘ブログ:同期通信のモード

個人用ツール