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

PVMによる並列処理システム構成の試み

N/A
N/A
Protected

Academic year: 2021

シェア "PVMによる並列処理システム構成の試み"

Copied!
3
0
0

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

全文

(1)

愛知工業大学研究報告

34

B, 平 成11

ノート 177

PVM

による並列処理システム構成の試み

On a small PVM system connecting some PCs with linux

小池慎一

f

山住富也↑↑

8hin-ichi KOIKE Tomiya YAMAZUMI Abstract

We constructed a smal日ParallelVirtual Machir叫PVM)system with some old PCs. Then we tried a c乱lculationof

multipling matrixes of 500 by 500. Comparing two real processing times

the c乱sesof one PC釦 d4 PCs

we took the

efeciency 0.55. Where

we used 3 PCs wiぬlinuxand a Macintosh with MkLinux andもhe五回machine'sMIP8 is 300 叫 仇heslowes七is35.9.

1

はじめに

PCの普及に伴って,研究室にも何台ものPCが存在す るようになった.商用の08は相次ぐ機能強化とパージョ ンアップで数年前のPCでさえ実用にならない廃物にして しまっている.粗大ゴミになりかねないPCを有効に使用 するために, 08としてフリ}であるlinuxを導入してい る.計算処理のアプロケーション開発では十分に使用可能 であり,活躍している. linuxと同様にフリーなソフトに, PVM(Parallel Vertual Machine)がある

[

?

J

.

PVM ばアメリカのオークリッジ国 立研究所(0はRidgeNation乱lL乱boratrγ)とエモリ}大 学(Emaol'YUnivel'si七y)で開発が始められた.それは,複 数のコンビュータをメッセージ通信を介してが並列処理す るためのソフトウェアである.使用言語はFORTRANと

C++

である. PVMは, PCとTCPjIPの環境さえ在れば,フリーの PCUN立(当研究室ではlinuxとMkLinux)を用意するの みで,ハードウェアの投資はほとんどゼロでとりあえずテ ストができる.そこで, 4台のPC(3台のD08jV機と1 台のMacinもosh)を用いて導入してみた. まだ60・70%の程度しかPVMの能力は引き出せてない ようであるが,行列の積のような簡単なプログラムで,処 理速度の向上をみた.

2

経過

2

.

1

使用した機材

はじめに使用するPCを用意した.詳細は付録に示す が,最新のDualPCのPentiumII300MHzx2のものか ら , K5 166Mhz, 6x86 133MHzの!日型機, PowerPC 604 のMacまで新旧入り交じっている.K5搭載のマシンは研 究室の共用計算サーバとなっており,常時電源ONになっ ている.公称のCPUのMIP8値はPIIの300からK5の 36までと幅が広い.当然,もっとも追いK5のマシンに足 を引っ張られる結果となることが予想される. ↑愛知工業大学計算センター(豊田市) 竹名古屋文理短期大学情報処理学科(稲沢市) 08は, linux 2.0.21, linux 2.0.34, MkLinux2.0.28の3 種類である.このテストに当たってD08jV機の08の ノ~-ジョンを統一することはしなかった.なお, MkLinux はM品cintosh用のl泊.UXである.

2

.

2

PVMの概要

PVMでは,処理対象となるタスクを複数のタスクに分 割し,そのタスクをPVMデーモンが制御する.いくつの タスクに分割するかは指定する必要がある.それらのタス クが同ーのホスト(PC)の上にある場合には, TCP ';/ケッ トを介してタスク間の通信が行われる.別々のホストの聞 にあるタスクは, UDPを介してタスク問通信がなされる. この様子を図1.に示す.

喜子

D

P

:

:

図1. PVMにおけるタスク開通信 host1に3個のタスク, host2に2個のタスクがある場合 プログラムは,通常マスターとスレーブの2個からな る.マスターは,主たる処理をするもので,スレーブが構 成するタスクの初期設定しデ}タを配布したり,その結果 含集めて全体を初期の要求にまとめる仕事などをする.そ れらは, PVMデーモンと呼ばれる制御プログラムのもと で行われる.PVMデーモンは利用するすべてのホストお よびタスクを管理下におき,それらを統合して, shellの ように働く. 言語はlimは用のgnuのgccである.並列処理用の特別 なものではない.と言うことは,目的とする処理をどのよ うに並列化するかはユーザが自分の責任ですることであ

(2)

178 愛 知 工 業 大 学 研 究 報 告 , 第34号 B, 平 成11年, Vo1.34-B, Mar. 1999 り,それにはスキルが要求される. PVMそのものは,国内のサイトからダクンロードした

[

?

]

また,使用方法などの情報もほとんどWEBから得た [ ? , ?,,?

?

]

.

PVMについて紹介程度以上に書かれている 書籍は利用できなかった.使用したPVMのパージョンは PVM3.4β7である.

2

.

3

テストした処理の内容

並列処理の内容を次の二つにわけで考える. l別々に処理しであとからそれらを集めてまとめること が可能なもの 例えば,数値積分は区間を分割して積分しその和を 求めることにより最終結果を得る.また,ここで報告 する行列の積も,被乗算される行列を行に分割して分 害1)すれば,並列処理された個々の結果を集めるだけで 最終的な結果を得る.ただし,メモリ仕様効率の点で は問題がある. 2,分割され並列動作しているタスク間で途中結果を受け 渡ししながら処理を進めるもの このタイプの処理は,通信回数が増すのでその分 オーバーヘッドが増すが,応用性が高い.例としてラ プラスの偏微分方程式の解を求めようとしたが, トラ ブルが発生し,本報告には含められなかった. 上の1のタイプに属する行列の積を並列処理した.行 ヂ1)の積C= ABにおいて,Aを行に分害11する.すなわ ち,この行列のサイズが

nxm

であったならば,分割数 を N として

n/N x mの N 個の行列にする それらを Ai

が=

1,・・汁N)とすると,A事x mの積を求めるタスク をN個生成し,並列処理させ,その結果をまとめて順序 よくまとめれば結果Cを得る.言うまでもなく,n/Nが 整数値をとらない場合には,適当に丸めて整数の大きさに しておく. 例として,

A

が次の10xmの行列で, 4分割する場合, │ α 1 1 α 1 2 ... alm A = I 0.21 0.22 ・ o.2m1

一‘ Lα101 0.102 ・ o.10m この行列を,以下のAi(i= 1,・・,4)に分割し,子タス クにそれぞれ送信する.また,行列Bはそのまま送信する, A1

=

白21 白22 α2m! ) 0.31 0.32 白3m A2

=

α51α52 ι5m 1) α61α62 α6m

A

A

4=1

=

I α 9 1 α 9 2 10.101 品102 プログラムの概要を示す. @マスタープログラム step1.分割数と行列のサイズの入力 - step2テスト行列の生成 - st巴p3.PVMデーモンに登録,子タスクの起動 一 計ep4.分割サイズの算出,配列データの分配 - sもep5結果の収集,まとめ ← step6.出力 @スレ}ブプログラム - sもep1.PVMデーモンに登録 - step2.データ受信 - step3.計算処理 一 日tep4結果の送信

3 結果

500 x 500の大きさの配列の積を求めた.6回繰り返し た結果を表 lに示す. PC台数 実時間(s) CPU時間(日) SYSTEM待問

(

s

)

実時間(ターンアラウンド時間)は, 1台の場合に比べ て4台では0.55となって向上している この値が1/4に ならないのは,使用している機材の性能にばらつきがあ り,もっとも遅いPCに足を引っ張られてしまうことが大 きいと解釈する.どの機材にタスクが割り当てられるかは PVMデーモンに依存するので,今回は,これ以上の実時 間の解析は出来なかった また, CPU時間と SYSTEM時聞が台数の増加ととも に増加するのは,台数が増えると本来の処理以外の処理が 増えるためと推測される,

4

考察

処理する配列が小さければ,並列処理すればかえって処 理時間は増加する.その境の台数は,上に述べた環境のも とでは, 185 x 185の配列の処理の場合に1台と4台の実

(3)

PVM

による並列処理システム構成の試み

179 タスク聞のデータ通信を伴うラプラス型の偏微分方程式

A

使用した

PC

の仕様

のプログラムでもテストしたが,最終的にMkLinuxが存 在するとPVMデーモンがタスクを異常終了させてしまう ことが判明し,かっ,演算結果も誤っていたので,今後の 課題としたい. 安価でかつ粗大ゴミとなるPCでもまとめれば最新式の PC以上の性能がでることが実証された.今後,環境を整 え,研究室の計算サーパとして使用できるような構成でテ ストしてみたい. 謝辞 本システムのWEBからの情報の収集や実際のシステム 構成においては,卒研生の福谷友宏君の尽力があったこと を記して,謝意を表する.

参考文献

[lJ "PVM Home Page" h七七p:jjwww.epm.ornl.govjpvmjpvm

ome.html (1998) 問まこ佐々木:"PVMによる並列プログラミング" http://gaia.to凶

J

配ri.go.jpj 品Cもivityjmvpjr町pjparalleljPVMjindex.html#what (1996) [3J "Index for PVM3 Library" 此句郎P炉

:

j

jne凶叫“t仙l出i仙iぬ.b.必 叫0o μJ Richard Sevenich : "The PVM Websi七eCourse" h七七p:jjknuth.s凶i.orgjcscdxjpvmjindex.html (1997) [5J Al Gei日t

JackDongarra

Weicheng Ji叩 g他 (訳村田英明): "PVM3 ユ ー ザ ー ズ ガ イ ド & リ フ ァ レ ン ス マニュアノレ日本語版"(1995) ("PVM の 使 い 方 市tp:jjwww.則 akushoku-u.ac.jp

j

dcljPVM より入手) [6J富士通株式会社:"UXPjVPVM使用手引書V10" h

批判

jwww.cc.kyushu -u.ac.jpjUXP..MANUALfjapanjpvmjindex.htm (1995) 表2:使用したPCのスペック ホスト名 Cyrix CPU 6x86

L

-

P166 133MHz MIPS値 132.71 メモリ 64M ハードディスク容量 約1GB OS Linux 2.0.34 ホスト名 p2dual CPU Pentium

n

300MHz x 2 MIPS

299.83 メモリ 64M ハードディスク容量 約立GB OS Linux 2.0.34 ホスト名 fmv590 CPU K5PR 166MHz MIPS値 35.94 メモリ 64M ハードディスク容量 内蔵約500MB,外付け約2GB OS Linux 2.0.21 ホスト名 MkMac CPU PowerPC 604 MIPS値 238.39 メモリ 16M ハードディスク容量 約600MB OS MkLinux2.1(カーネルVer.2.0.28)

(受理平成

11年3月20

日)

参照

関連したドキュメント

AMS (代替管理システム): AMS を搭載した船舶は規則に適合しているため延長は 認められない。 AMS は船舶の適合期日から 5 年間使用することができる。

システムであって、当該管理監督のための資源配分がなされ、適切に運用されるものをいう。ただ し、第 82 条において読み替えて準用する第 2 章から第

※証明書のご利用は、証明書取得時に Windows ログオンを行っていた Windows アカウントでのみ 可能となります。それ以外の

キャンパスの軸線とな るよう設計した。時計台 は永きにわたり図書館 として使 用され、学 生 の勉学の場となってい たが、9 7 年の新 大

都調査において、稲わら等のバイオ燃焼については、検出された元素数が少なか

下山にはいり、ABさんの名案でロープでつ ながれた子供たちには笑ってしまいました。つ

大村 その場合に、なぜ成り立たなくなったのか ということ、つまりあの図式でいうと基本的には S1 という 場

自分ではおかしいと思って も、「自分の体は汚れてい るのではないか」「ひどい ことを周りの人にしたので