[SCore-users-jp] PM/Myrinet及びPM/S hmemにおけるゼロコピー機能のメカニズム

hi-morita @ itg.hitachi.co.jp hi-morita @ itg.hitachi.co.jp
2004年 2月 25日 (水) 21:32:35 JST


亀山様

日立製作所の森田です。
早々のご回答有難うございました。

下記の点、私の質問が悪かったため、再度質問させてください。

>> ・動作の仕様を考慮して、ゼロコピー機能が演算に対してどのような影響を与えるの
>> か。
>
>これは演算部で何を行なっているか不明のため,
>よくわかりません.
>
演算部では主に行列演算を行っています。
演算部ではMPI等の通信関数は使用しておりません。
演算部の前にMPI_Barrierで同期をとっております。

以上より、完全に演算部は通信部と独立になっており、ゼロコピー機能は
演算部に影響を及ぼさないと考えております。

---- 質問

(1) 通信部と演算部が独立しているプログラムにおいて、ゼロコピー機能は
    演算部分に影響を与える(演算部分の性能が向上/劣化する)のでしょうか。

>>(3) 8way(2*4)の場合
>>                          ゼロコピーON  ゼロコピーOFF
>> 1. 演算部分の性能[MFLOPS]    7294      13774
>> 2. 通信部分の性能[MB/sec]    71.5       61.7

    特に上記結果において、何故、演算部分の性能が大きく劣化したのでしょうか。

(2) 亀山様の回答を読んだ私の理解では、ゼロコピー機能は通信部分のみ影響
    を与える機能と理解したのですが、正しいでしょうか。

---- 質問終り

>亀山です.
>
>In article <200402250622.PAA16758 @ smgw01.itg.hitachi.co.jp.> hi-morita @ itg.hitachi.co.jp wrotes:
>> 通信部と演算部がオーバーラップしていないMPIを使用したプログラム(参考(1))
>> において、ゼロコピー機能を用いて性能測定を実施しました。
>> 
>> その結果、ノード内MPI並列の性能測定(参考(2))ではゼロコピー機能をONにした
>> 場合、ゼロコピー機能をOFFにした場合と比較して演算部の性能が向上しました。
>> 
>> しかし、ノード間及びノード内MPI並列の性能測定(参考(3))ではゼロコピー機能
>> をONにした場合、ゼロコピー機能をOFFにした場合と比較して演算部の性能が劣
>> 化しました。
>> 
>> 上記の現象の原因を下記の点を考慮してご教授頂きたく、よろしくお願い致します。
>> 
>> ・ゼロコピー機能がどのような動作をするのか。(動作の仕様を詳細にお願いします。)
>
>MPI の zerocopy 機能は, PM の pmRead()
>  http://www.pccluster.org/score/dist/score/html/ja/man/man3/pmRead.html
>を使用して実現しています.
>
>zerocopy を off にした場合, プロセス間のデータは, 一旦 PM で確保したバッファに
>保存して, CPU がそのバッファからコピーします.
>
>zerocopy を on にした場合は, データはバッファを経由せず, 直接必要なところに
>コピーされます.
>(ノード内だと, 1 回のメモリーコピーが行なわれます.
>Myrinet だと, NIC が受信したら, DMA によってコピーされます.)
>
>このため, 余分なバッファからのコピーを省くことができるため, バンド幅の
>向上が期待されますが, その領域を lock したり unlock したり,
>(Myrinet の場合はその領域を NIC に記録したり)
>remote と local でアドレスを交換したりする必要があるため,
>オーバヘッドがあります.
>
>このため, zerocopy が有効であるかどうかは一回に転送するデータのサイズ,
>ネットワークの種類などに依存します.
>
>> ・動作の仕様を考慮して、ゼロコピー機能が演算に対してどのような影響を与えるの
>> か。
>
>これは演算部で何を行なっているか不明のため,
>よくわかりません.
>
>                       from Kameyama Toyohisa
>



SCore-users-jp メーリングリストの案内