研究概要 |
ネットワークにより結合された多数のUNIXワークステーション群を対象として、システム全体を仮想的な並列計算機とみなして並列処理を行う研究が現在盛んに行われている。筆者らは、このような分散計算機環境を利用して、単一の計算機では実用的な時間で探索することが困難なゲーム木探索問題を並列探索し、計算時間を大幅に短縮させるとともに解答率を向上させることをめざしている。 本研究では,その第1ステップとして,ゲーム木を効率的に並列探索するための分散的実行管理機構を設計し、実現を行った。 筆者らはこれまでに、共有メモリ型並列機を対象としてアクティビティ方式並列実行機構を提案し、その有効性を示してきた。本研究においてもこの方式を応用した分散的実行管理機構の設計を行った。すなわち、小問題を解く下請けプロセス(スレーブ・プロセス)をあらかじめ各マシンに1つずつ作成してそれを繰り返し再利用する設計とすることにより、プロセス生成・消滅や通信回線の確立などのオーバーヘッドを節減させることができるとともに、ゲーム木探索において一般的に用いられるハッシュ表についても繰り返し再利用でき、より計算の効率化が期待できるというものである。 この分散的実行管理機構を、ネットワークにより結合された数十台からなるUNIXワークステーション群において実現した。また、詰将棋を解く並列プログラムを用いた計算実験を行ったところ、並列計算により大幅に計算時間が節減できる結果を得た。従来のどのプログラムによっても解けなかった問題もはじめて解き、分散的実行管理機構を用いた並列計算により真に解答能力が向上できることも実証した。
|