実験概要
並列プログラミング技法として、メッセージパッシングによるプログラミング
と、スレッド等を用いた共有メモリによるプログラミングの両者を学び、さら
にそれらをカップリングしたハイブリッド並列プログラミングを学ぶ。また、
並列プログラムの性能評価手法についても学ぶ。これらを通して、現在、
高性能並列プログラミング手法として実用化されているMPI及びOpenMPに関して
理解する
実験にはSMP-PCクラスタ(2台から4台のプロセッサを共有メモリ結合した並列
システムをノードとし、さらにそれらをネットワーク接続したクラスタ)を用
いる。
- 第一段階(ネットワークと共有メモリの特性)
ハイブリッド型並列処理システムについて理解し、そのハードウェアコンポー
ネントであるノード間ネットワークとノード内共有メモリの特性を調べる。
TCP/IPを用いたネットワーク性能評価と、threadを用いた共有メモリ性能評価
を行なう。
- 第二段階(MPIプログラミング)
ノード間のメッセージパッシングを用いた並列プログラミング手法として、MPI
(Message Passing Interface)について学ぶ。MPIを用いた簡単なプログラムを
作成し、分散メモリ型並列アルゴリズムについて理解する。
- 第三段階(共有メモリプログラミング)
ノード内の共有メモリを用いた並列プログラミング手法として、pthread
(POSIX thread)及びOpenMPについて学ぶ。pthread及びOpenMPを用いた簡単な
プログラムを作成し、共有メモリ型並列アルゴリズムについて理解する。
- 第四段階(ハイブリッド並列プログラミング)
最後に、MPIとOpenMPを用いたハイブリッド型並列プログラミングについて学ぶ。
代表的な数値計算問題の並列化を通して、ハイブリッド型並列システムの性能
特性に関して理解する。