MPIにおける行列計算

MPIによる行列積計算
情報論理工学研究室
04-1-47-015
渡邉伊織
あらまし
目的・方法
 並列処理
 仮想並列計算機
 MPI
 計算方法
 結果・考察
 結論

目的と方法

目的
仮想並列計算機の性能を実験的評価

方法
行列積の計算を並列処理で行い処理時間
の向上率の検証
並列処理
ある一つの処理を複数のプロセッサを用いて行うこと

メリット
データや機能を分割処理出来る
故障に強い

デメリット
複数のプロセッサが必要
通信時間の発生
仮想並列計算機
ネットワークを利用し、複数のコンピュータを並列
計算機として用いることができる

安価で並列計算機の構築ができる

容易に並列処理ができる
MPI(Message Passing Interface)

メッセージ通信ライブラリ

世界標準を目的とし開発

通信関数の充実

移植性が高い
MPICH

ゴードン国立研究所が開発

無償で配布されているライブラリ

移植性を重視

Windows系へのサポート
行列の計算方法1
ホストコンピュータ
(8個のN*N行列データ保持)
行列データを
2つずつ送信
サブコンピュータ1
サブコンピュータ2
サブコンピュータ3
行列の計算方法2
ホスト
RESULT
結果送信
ホスト
サブ2 {A5 * A6 }{ A7 * A8}
{A1 * A2}{ A3 * A4 }
結果送信
A1 * A2
ホスト
A3 * A4
サブ1
結果送信
A5 * A6
サブ2
A7 * A8
サブ3
処理結果(秒=s)
CPU\行列数
10
100
500
1000
1台
1.2s
2.8s
47.6s
582s
4台
0.9s
2.0s
32.1s
266s
速度向上率
1.3倍
1.4倍
1.5倍
2.1倍
結論
本研究では、MPIによる行列積計算の検証
をした
 MPIによる、処理の高速化は有効
小規模な処理の場合にも、速度の向上率は低いが
有効であった
大規模になれば大幅に向上率が上がる

容易にプログラミングが出来る
容易に仮想並列計算機が構築できるため、身近な
データの処理にも並列処理を利用できる