• 検索結果がありません。

研究内容 44 MPI を用いた並列計算

N/A
N/A
Protected

Academic year: 2021

シェア "研究内容 44 MPI を用いた並列計算"

Copied!
1
0
0

読み込み中.... (全文を見る)

全文

(1)

44     MPI を用いた並列計算

情報論理工学 研究室    延山  周平

1.

大容量の記憶デバイスの登場や、ネットワークの高速 化などにより、近年、大量のデータを高速に処理するこ とが求められている。データの高速処理には、複数のプ ロセッサを持つ並列計算機が必要とされる。しかし一般 に並列計算機は非常に高価であるため容易に利用できな い。そこで、複数の計算機をネットワーク接続して仮想 的並列計算機とする手法が注目されている。本研究では、

MPI

〔Message Passing Interface〕1)2)を用いて仮想並列 計算を行い、その実用性を検証する。

2.

研究内容

MPI

とは

Message Passing Interface

の略であり、分 散メモリ型の並列計算機において、複数のプロセッサ間 で、データのやりとりをするために用いる、メッセージ 通信操作の仕様標準である。

本研究では、

MPI

の実装には、

MPICH

を用いた。こ れは、

MPI

規格を実装したフリーのライブラリー群であ る。

今回使用した環境としては、

LINUXOS

PC

一台で、

MPI

を用い、仮想的な並列計算環境を構築し、検証した。

MPI

の仕様言語としては、

C

Fortran

がよく用いられ るが、今回は慣れ親しんだ

Java

を使うため、

mpiJava

3) を用いた。

本研究では、mpi の性能を検証するためにシンプルな 加算プログラムを作り、検証した。これは、1から

10

n

(n=2,3,4,5)までの和を求めるプログラムである。また、

プ ロ セ ッ サ 数 は

4

台 と 仮 定 し て い る 。       

図1.並列プログラムの実行概念図

3.

結果・考察

本研究で得られた結果を表 1に示す。

表 1: mpiによる和演算の実行時間(秒)

1~100 1~1000 1~10000 1~100000

逐次の

実行時間

0.019 0.159 1.52 15.191

並列の 実 際 の 実 行時間

0.878 0.803 2.188 16.289

並列に 動 作 し て いる時間

0.2 0.281 1.321 11.689

並列の 実行時間

0.678 0.522 0.867 4.6

並列の実行時間とは、並列プログラムの実際の実行時 間から並列動作部分の時間を引いたものである。これに より、仮想的ではあるが、並列プログラムの実行時間を 出すことができる。

最大整数が100から1000までの間は、実行時間 において、逐次プログラムよりも遅かった並列プログラ ムであるが、10000を超えてからは速くなっている。

また、数値の伸びから、更に数を増やすことにより、差 は開いていくと容易に推測できる。

4.

今回のプログラムにおいては、通信回数、時間ともに 最小に近いものであった。よって、最大数を増やすこと により、実行時間は、逐次の実行時間の

4

分の1に近づ いていった。これは、理想的な環境における並列処理の 有用性を示している。しかし、実際にプロセッサを繋い で通信した場合、どうしても通信時間を取られてしまう。

つまり、通信回数と一台のプロセッサの計算の負担率、

これが大きなトレードオフになってくる。つまり、プロ セッサの性能、通信速度、これらを考慮した設計をする 必要がある。

また、アルゴリズムや

MPI

を実装する環境作りも、こ れからの重要な課題である。

参考文献

1) P

パチェコ

,

秋葉博 訳:

MPI

並列プログラミング

,

風館 (2001)

2)

渡邉真也 著:MPI による並列プログラミングの基礎,

http://mikilab.doshisha.ac.jp/dia/smpp/cluster200 0/PDF/chapter02.pdf

3)

梶原 広輝, 廣安 知之, 三木 光範:mpiJava 利用法範,  

http://mikilab.doshisha.ac.jp/dia/research/repo rt/2004/0809/005/report20040809005.html

それぞれの入力を加算

P0 に加算デー タを送信

P0 P1 P2 P3

P0

76~

100 51~

75 26~

5 0 1~

25

入力

プロ セッサ

参照

関連したドキュメント

[r]

今回の検証では、同一機種の計算機 5 台を LAN 接続し MPI 環境を構築する。また、 MPI の性能検証用の問題とし

[r]

[r]

仮想並列計算環境を作るため、 MPICH のホームページ [3] よりパッケージをダウンロード し、インストールを行い、インストール後に、環境変数を用いて

 本研究では、 MPI による行列積計 算の検証をした. 

第 2 章節以降では、2.1 で本研究において使用した機器について示す。次に、2.2 で使用した MPI の ソフトウェアのインストール方法と環境設定の説明。 2.3

[r]