Java による PRAM コンパイラの 作成
03-1-47-248
池田 直樹あらまし
背景
目的
研究内容
結果
結論・課題
背景
・処理速度の高速化
・複雑な問題の解決
・プロセッサの性能の向上
・処理の並列化
PRAM(Parallel Random Access Machine)
共有メモリ
P 1 P 2 P 3 ・・ P p
・
PRAM の動作
P1 P2 P3 P4
演算命令
メモリアクセス命令 入出力命令
同期
・命令がすべて1単位時間
・1命令ごとに同期をとる
目的
PRAM シミュレータによる計算量の実験的評 価
・ PRAM 用並列言語、並列アセンブラ
( K05 言語 、 VSM アセンブラ)
・ PRAM コンパイラ
・ PVSM ( Parallel Virtual Stack Machin e)
PRAM コンパイラ
PVSM インタプリタ
PRAM 用並列言語プログラム
並列アセンブラ
PRAM シミュレータによる処理の流
れ
研究内容( 1 )
PRAM 用並列言語
・ parallel 文
・特殊記号
$p
・ parallel( 式① , 式② ) 文
・実行時のプロセッサ番号表示
研究内容( 2 )
VSM アセンブラ
・ PARA: 並列処理開始
・ SYNC: 同期をとる
・ PUSHP: プロセッサ番 号 の挿入
PUSHI 1 PUSHI 3
PARA
Stack
PUSHP SYNC
Stack
Stack
Stack
P1
P2
P3 Iseg
1
2
3
結果(1)
PRAM
用並列プログラム例main(){
parallel(0,15){
write($p);
}
}
結果(2)
並列アセンブラ
PUSHI 0 PUSHI 15 PARA
PUSHP
OUTPUT
SYNC
結果(3)
PVSM
の実行結果0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Execution time :7
結論・課題
並列処理の動作を確認
並列化による計算量の実験的な評価
$p
機能の拡張
parallel
文の機能の拡張未対応の