地球シミュレータES(第一世代)システム概要


システムの概要(ES)

地球シミュレータのプログラミングモデル

地球シミュレータのハードウェアは、三階層の並列性(AP内ベクトル処理, PN内の共有メモリ並列処理, PN間並列処理)を持つ。地球シミュレータの性能を十分に引き出すには、これら三つの並列性を最大限に利用するプログラムを開発する必要がある。


ハイブリッド フラット
PN 間並列 HPF/MPI HPF/MPI
PN 内並列 マイクロタスク/
OpenMP
AP 自動ベクトル化

表1: 地球シミュレータのプログラミングモデル

表 1に示すように、地球シミュレータの三階層並列性を利用するには二つの方法がある。すなわち、「ハイブリッド並列化」と「フラット並列化」である(図 7)。ハイブリッド並列化では、ノード間並列性はHPFまたはMPIで記述し、ノード内並列性はマイクロタスクまたはOpenMPで記述する。したがって、プログラムを書く際に並列性の階層を意識する必要がある。一方で、フラット並列化では、ノード間並列性とノード内並列性の両方をHPFまたはMPIで記述できるため、並列性の階層を意識する必要はない。一般に、ハイブリッド並列化は性能に優れ、フラット並列化はプログラムのしやすさに優れていると言える。MPIライブラリとHPFランタイムは、どちらの並列化方法においても効率良く動作するよう最適化されている。

図7. ESにおける2つの並列方式


戻る