[目次] [1ページ目] [前ページ] [次ページ] [質疑応答]
(6/8)

6 自動並列化とMPI


図6: MPI による性能(Class W)


 次に、同じプログラム(NPB) をMPI により実装した場合の並列化効率について議論する。図6 に、並列(MPI) 版NPB(CLASS W) を、Starfire 上でMPICH-1.2.0 とSun Fortran77 により実行した結果を示す。これら全てのプログラムは、MPI 化する( 並列アルゴリズムを用いる) ことによって、かなりの性能向上が達成できていることが分かる。自動並列で性能が得られないプログラムコードも、並列化を行えばStarfire で十分に高速演算が可能である。特にMG、FT の場合、自動並列化では並列化の効果が殆んど見られなかったが、MPI によるプログラムではかなり効率の良い並列化が行なわれている。また、MPI での並列化の効果が低い場合でも、自動並列化で見られたような、CPU 数を増やすと逆に性能が低下する現象は起っていない。
 図3 のベクトル型計算機と比べると、ベクトル型計算機で高い性能が得られていたMGとSP が16CPU のStarfire とほぼ同じ性能、FT、LU およびBT では10 倍以上の性能が得られていることが分かる。並列化が効率良く行なえれば、ベクトル型計算機よりも非常に有効であることが言える。
 図7 にNPB 並列版(CLASS A) の結果を示す。図6 に較べ問題サイズが大きい場合、計算時間に対する通信によるオーバーヘッドの割合が小さくなり、さらに大きな性能向上が得られていることが分かる。


図7: 自動並列化とMPI の性能(Class A)


[目次] [1ページ目] [前ページ] [次ページ] [質疑応答]