表題番号:1996B-033 日付:2002/02/25
研究課題マルチプロセッサシステム用自動並列化コンパイラに関する研究
研究者所属(当時) 資格 氏名
(代表者) 理工学部 教授 笠原 博徳
(連携研究者) 理工学部 教授 成田 誠之助
(連携研究者) 理工学部 助手 吉田 明正
(連携研究者) メディアネットワークセンター 助手 高井 峰生
(連携研究者) メディアネットワークセンター 助手 藤本 謙作
研究成果概要
本研究では、価格性能比が優れ使いやすい21世紀のハイパフォーマンスコンピュータ(HPC)及び汎用マイクロプロセッサを開発するために必須なマルチプロセッサ用自動並列化コンパイラに関する研究を行った。
 自動並列化コンパイラは、ユーザプログラム中から並列性を抽出し、その並列実行可能部分をハードウェア性能を引き出せるようにスケジューリングし、並列マシンコードを生成するプログラムである。本コンパイラ技術により、HPC 分野においてはハードウェアの持つ高い性能を有効に引き出しプログラムを実行時の真の性能を高め、価格性能比を改善するとともに、使いやすさを向上させることができる。また、汎用マイクロプロセッサの分野では、現在主流のスーパースカラやVLIW方式は命令レベルの並列性の限界から将来的な実効性能の向上が難しいと予測されており、本研究は21世紀初頭の有力なアーキテクチャになると考えられるシングルチップ・マルチプロセッサの重要な基礎技術になると考えられる。
 具体的には、本研究では、以下の事項に関する研究を行った。
(1)マルチグレイン並列化技術
 マルチグレイン並列化技術は、筆者らが提案している独自の並列化手法で、従来のマルチプロセッサシステムが使用していたループ並列化技術に加え、サブルーティン、ループ、基本ブロック間の粗粒度並列性を利用するマクロデータフロー処理技術、プロセッサ間でステートメントあるいは複数命令レベルの並列性を利用する(近)細粒度処理技術を階層的に組み合わせる手法である。
(2)データローカライゼーション技術(データ分散技術)
 現在のマルチプロセッサシステムでは、各プロセッサがローカルメモリあるいは分散共有メモリを有するものが多く、このようなシステム上で効果的な並列処理を行う時には、これらのメモリを有効に使用しプロセッサ間のデータ転送を最小化することが重要である。本研究では、このためのデータ及び処理の自動分割及びプロセッサへの割り当て法について研究を行った。
(3)マルチプロセッサ・スケジューリング技術(マッピング技術)
 強NP完全である実行時間最小マルチプロセッサスケジューリング問題に対する実用的な並列最適化アルゴリズムの開発とその性能評価を行った。このスケジューリング問題に関する最適解は他機関では従来タスク数数十程度しか求まったことが報告されていないが、今回の研究では千タスク以上の超大規模問題まで求解できることを確かめている。
 これらの研究成果の一部は、13件の論文誌及び国際会議論文、2件の査読付きシンポジウム、18件の査読無し研究会(一部発表予定の論文含む)・シンポジウムジウム論文、12件の全国大会論文として発表した。