実行時プログラム再構成法は、逐次バイナリプログラムを、CPUチップ内ハードウェアを用いて動的に並列スレッドに再構成し、再構成されたスレッドを投機的に実行することにより、逐次プログラム実行の高速化を実現する方式である。本研究「実行時プログラム再構成による投機的並列アーキテクチャの研究」では、実行時に逐次バイナリプログラムを再構成する方式、投機実行の方式、特にメモリ投機機構と実行のコミットメント機構を確立した。また、並列投機実行の速度を更に高めることを目的として、実行直前に逐次バイナリプログラムに対してバイナリ・トランスレーションを実施し、並列化が可能なプログラム区間に対するマーキングを実施しCPUにおける再構成時間を著しく短縮する方式を提案した。 これら、提案方法の性能を評価するため、レジスタトランスファーレベルの詳細はシミュレータを開発した。開発したシミュレータは、MIPSアーキテクチャ類似の命令体系を持つものであり、投機的並列キャッシュメモリを持つ。このシミュレータを用い、非評価プログラムとしてSPECベンチマークの一部を用いた評価を行った。評価の結果、提案方式は浮動小数点計算において大きな高速化を実現するとともに、従来自動並列化が困難であった整数系プログラムにおいてもある程度の高速化を達成した。これらの結果から、実行時プログラム再構成方式は、既存の逐次プログラムを自動的に並列化し、高速実行することを実現する方式であることが示された。
|