研究概要 |
本年度は研究計画に従い,以下の3課題の解決を図りながら,汎用マルチコアプロセッサ向けのバイナリレベル投機的複数スレッド化手法の研究開発を行った。 1.プログラムの実行パスに基づいた高性能な複数スレッド化手法の開発プログラムの制御の流れ〔実行パス)の中から頻度の高いものを選び出し,スレッド間でデータ通信が発生しないようなプログラムの分割パターンを見つけ出すことで,どのようなプログラムにおいても高速化可能な複数スレッド化手法の開発を行った。本年度は,実行パス中にループが含まれた場合に,ループレベルでの複数スレッド化を併用することで高速化率を高める研究を行った。 2.プログラムの実行パスをソフトウェアにより低コストで精確に把握する手法の開発本研究で開発する複数スレッド化手法において重要となる実行パス情報を短時聞で精確に把握する手法について開発を行った。本年度は,EPPべ一スのパスプロファイル手法において実行パスの分岐構造を利用してパス情報の記録を行うデータ構造について検討を行い,ソフトウェアパスプロファイラの開発に着手した。 3.投機的スレッド実行のソフトウェアによる低コストな実現投機的なスレッド実行を支援するハードウェア機能を備えていない現在の商用汎用マルチコアプロセッサにおいて,投機的複数スレッド実行手法を実現するためのソフトウェア支援環境の開発った。本年度は,投機的スレッド実行を支援するための実行環境について基本設計を行い,基本操作群をライブラリとして実装開始した。
|