平成21年度はリアルタイム依存解析部分の基本設計とその実行時プロファイリングによる実装を行い、実用的な並列命令処理方式の構築のための基礎データの収集に取り組んだ。リアルタイム依存解析部分の設計においては、ループ階層構造に着目して効率的に依存関係を把握するために、ループ階層構造を実行時に検出する手法の詳細を検討した。具体的には、ループ階層構造に関連する研究資料を該当分野の国際会議等から広く収集し、現状の技術水準の把握とリアルタイム依存解析への応用を前提とした実行時ループ階層構造検出機構の基本要件を確認した。これらの結果より、ループ階層構造を正確に理解するためには自然ループ(natural loop)を検出することが不可欠であり、ランタイムにどのように自然ループを検出するかという問題に取り組む必要があるという知見が得られた。また、自然ループのランタイム検出の1つの実装として、実際に実行時プロファイリングを用いて、後方分岐命令とその飛び先のターゲットとなる命令の区間をその区間の先頭命令がその区間の全ての命令を支配しているループ区間と仮定することにより自然ループを検出しループ階層構造を実行時に抽出可能であることを確認した。加えて、リアルタイム依存解析部のデータ依存関係の抽出については命令レベルにて実際にメモリアクセス情報を抽出することを行った。メモリアクセス情報を命令レベルで解析するためにはメモリアクセスに関する膨大なデータをハンドリングする必要があるという課題に対して、ループ階層構造に着目してループ区間を単位にデータ依存関係の把握を試みた。評価実験の結果、ループを単位とする並列部分の推定の有効性と実現可能性を確認した。
|