1998 Fiscal Year Annual Research Report
階層分割された粗粒度タスク並列処理のための自動並列化コンパイラに関する研究
Project/Area Number |
09750405
|
Research Institution | The University of Electro-Communications |
Principal Investigator |
本多 弘樹 電気通信大学, 大学院・情報システム学研究科, 助教授 (20199574)
|
Keywords | 並列処理 / コンパイラ / スーパーコンピュータ |
Research Abstract |
本研究は、本申請者がこれまでの研究で開発したFortranプログラム粗粒度タスクの並列処理方式を土台として、階層的並列処理実現に関する研究を行なったもので、以下の研究実績のとおりその目的を達成した。 1. 粗粒度並列処理の階層化の検討: 階層的並列処理は粗粒度タスクをプロセッサクラスタへ割り当て、プロセッサクラスタ内のプロセッサ群を利用して細粒度並列処理を行なうものである。細粒度並列処理においてはスタティックスケジューリングによりコンパイル時に静的にプロセッサに割り当てており、コンパイル時に割り当てが行なわれることを利用して、同期コードの挿入およびその最適化を行なっている。一方粗粒度並列処理においてはマルチプロセッサスケジューリングアルゴリズムを応用したダイナミックスケジューリング手法を用いることにより、実行すべきタスクが実行時に決定されるという問題に対処している。このため細粒度並列処理において必要となる同期情報をハードウェア同期機構に挿入することをプログラム実行時に動的に行なう必要がある。本研究ではone-PE同期機構、SBM同期機構、RBCQ同期機構を用いる細粒度並列処理と粗粒度並列処理を階層的に実現する手法を考案した。 2. 階層的並列処理を実現する自動並列化コンパイラの開発: 上記方式を実現する自動並列化コンパイラを作製した。本コンパイラでは逐次中間コードを生成の後、並列性解析を行ない、並列中間コードを生成する。また細粒度並列処理のための同期コードおよび粗粒度並列処理のためのダイナミックスケジューリングコードもコンパイラが生成する。これにより実行時ののオーバーヘッドを軽減することが可能となる。なお、本コンパイラは大規模なソフトウェアとなるため、PCを利用した複数人数による開発となるが、本補助金で購入した設備により開発した。 3. 実マルチプロセッサシステムの開発と性能評価: 本自動並列化コンパイラによる階層的並列処理を効率良く実現するハードウェア同期機構を実装した実マルチプロセッサシステムを開発しその上で本方式の有用性を検証した。 4. 研究成果のまとめと学会発表: 以上の一部をまとめ学会論文として発表した。
|