表題番号:1998A-601 日付:2002/02/25
研究課題新世代汎用プロセッサGIFTの並列処理機能向上に関する研究
研究者所属(当時) 資格 氏名
(代表者) 理工学部 教授 深澤 良彰
研究成果概要
 プロセッサの動作速度の上昇に伴い、レジスタやALUといったプロセッサ資源を有効に活用することが、計算機の性能の向上のために重要となってきている。従来より、さまざまなレジスタ割付け技法やコードスケジューリング技法が提案され、プロセッサ資源の有効活用がはかられてきた。
 プロセッサの性能を引き出すためには、レジスタ割付けやコードスケジューリングといった、プロセッサ資源の使用に関する最適化が不可欠である。命令レベル並列プロセッサの登場や、レジスタ数の増加などにより、これらの最適化の重要性は非常に高まっている。しかしながら一般に広く使われているレジスタ割付け手法では、プロセッサの並列性について十分に考慮されているとは言えない。本研究では、レジスタ生存グラフと呼ばれる、命令間の依存関係とコード中の並列性を構造に含むグラフを用いた手法を提案した。本手法では、このグラフをシリーズパラレル型のグラフに変形することによりコード中の並列性の抽出を行ない、この結果と協調しながら同時にレジスタ割付けを行なう。本手法を用いることにより、プロセッサの並列性を生かしたレジスタ割付け及びコードスケジューリングを行なうことが可能となる。
 本手法は、プログラム中の最内ループに適用され、その部分の命令レベル並列プロセッサ向けに最適化されたコード生成を行なう。具体的には、まず、入力されたGPDGからシリーズパラレル型レジスタ生存グラフを生成する。次に、そのシリーズパラレル型レジスタ生存グラフにおいて、Sスイート、Pスイートを抽出する。その次に、抽出したSスイート、Pスイートを用いて、生成されたシリーズパラレル型レジスタ生存グラフの最大干渉度低減操作を行なう。最後に、最大干渉度を実レジスタ以下に低減させたシリーズパラレル型レジスタ生存グラフ上におけるレジスタの使用の時間順序を守るための依存を元のGPDGに加え、そのGPDGに対してコードスケジューリング及びレジスタ割付けを行なう。