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

129 Java による PRAM コンパイラの作成

N/A
N/A
Protected

Academic year: 2021

シェア "129 Java による PRAM コンパイラの作成"

Copied!
1
0
0

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

全文

(1)

129

     

Java

による

PRAM

コンパイラの作成

情報論理工学研究室  神谷道利  共同研究者  板東俊助  池田直樹

1. 序論

  並列アルゴリズムの設計およびその計算量は多くの 場合PRAM(Parallel Random Access Machine)上で 行われる。しかしこれを実現するのは困難であるため、

PRAM アルゴリズムの実験的な評価を行うためにシミ ュレータが必要とされる。本研究ではPRAMシミュレ ータの一部であるPRAMコンパイラの設計を行う。

2. 研究内容

  PRAM ア ル ゴ リ ズ ム の 実 行 を シ ミ ュ レ ー ト す る PRAM シ ミ ュ レ ー タ は 以 下 の 4 要 素 か ら 成 る 。 ① PRAM用並列言語②並列アセンブラ③PRAMコンパイ ラ④PVSM(Parallel Virtual Stack Machine)。

  本研究ではJAVA言語を用いてPRAMコンパイラの 設計を行った。本研究で作成したPRAMコンパイラは K05言語で書かれたソースプログラムを、スタック上で の 演 算 機 能 を 備 え た 仮 想 計 算 機 (Virtual Stack Machine)のアセンブラに翻訳する。

  本研究ではPRAMに対応させるためにK05言語の命 令セットに並列処理を行うための文 parallel 文を加え た。parallel文の書式は以下の通りである。

parallel(式1,式2)文

parallel 文はプロセッサ番号式1から式2を用いて後 ろに続く文を並列に実行する命令である。また特殊記号

「$p」によりプロセッサ番号を現すことができる。

また本研究ではPVSM に対応させるためにVSM センブラの命令セットに「PARA」「SYNC」「PUSHP」

を加えた。各命令の働きは以下の通りである。

「PARA」逐次状態から並列状態へと移行する。

「SYNC」プロセッサ間で同期を取り逐次状態に移行 する。

「PUSHP」プロセッサ番号をスタックに入れる。

3. 結果

  以下に本研究で作成したコンパイラの実行例を示す。

図1は拡張した K05 言語のプログラムである。本研究 で作成されたコンパイラにより図1のプログラムは図 2のVSM アセンブラに変換される。VSM アセンブラ PVSM で実行することにより図3の実行結果が得ら れる。これにより図1のプログラムのPRAM上での実 行時間を測定できる。

図1.PRAM用並列言語  図2.並列アセンブラ

図3.PVSM実行結果

4. 結論

  本研究では、K05 言語を PRAM 用に拡張し、また、

拡張された K05 言語をコンパイルするコンパイラを作 成した。このコンパイラをPRAMシミュレータの一部 として用いることによりPRAMアルゴリズムの実行時 間を測定し、計算量の実験的な評価を行う事ができる。

参考文献

1) 平成17年度第5セメスター  情報・コンピュータ システムプロジェクトⅠ指導書

参照

関連したドキュメント

まずフォンノイマン環は,普通とは異なる「長さ」を持っています. (知っている人に向け て書けば, B

    pr¯ am¯ an.ya    pram¯ an.abh¯uta. 結果的にジネーンドラブッディの解釈は,

活用することとともに,デメリットを克服することが不可欠となるが,メ

日本への輸入 作成日から 12 か月 作成日から 12 か月 英国への輸出 作成日から2年 作成日から 12 か月.

日本への輸入 作成日から 12 か月 作成日から 12 か月 英国への輸出 作成日から2年 作成日から 12 か月.

地点と KAAT の共同制作作品。平成 29 年、地点「忘れる日本人」で鮮烈な KAAT デビューを飾った作家、松原俊太郎による 新作を上演する。.. 9

18日 324人 約217 人・mSv 遠隔小型装置による作業 約38 人・mSv 人手による直接作業 約179