2014 Fiscal Year Research-status Report
チェックポイント生成機能を備えるスレッドレベル並列投機実行方式
Project/Area Number |
25330058
|
Research Institution | Kyoto Institute of Technology |
Principal Investigator |
柴山 潔 京都工芸繊維大学, 工芸科学研究科, 教授 (70127091)
|
Co-Investigator(Kenkyū-buntansha) |
平田 博章 京都工芸繊維大学, 工芸科学研究科, 准教授 (90273549)
布目 淳 京都工芸繊維大学, 工芸科学研究科, 助教 (60335320)
|
Project Period (FY) |
2013-04-01 – 2016-03-31
|
Keywords | 計算機システム / ハイパフォーマンス・コンピューティング / スレッドレベル並列性 / 粗粒度投機実行 / チェックポイント回復 |
Outline of Annual Research Achievements |
スレッドレベルの並列投機実行方式に関して、スレッド間依存関係の除去を目的とする研究から着想した継続的かつ発展的な研究計画である。具体的には、並列実行する各プロセッサ自身が、自身のメモリアクセスを監視することによって、動的にチェックポイントを生成する。すなわち、メモリハザードを検出した場合には、そのデータアドレスをもとに、再実行を開始すべき命令アドレス(これを本研究では、「チェックポイント」と呼ぶ)を同定する、という斬新なチェックポイント生成方式を開発する。プロセッサ自身によるチェックポイントの動的な生成とその制御という点で独創性が高く、スレッドレベル並列処理に関する研究の発展に大きく貢献できる。 本年度は、平成25年度に行った概略設計をもとにして、実現性を加味した観点から、チェックポイント生成方式の詳細設計を行った。具体的には、(a) 自らのデータアクセスを監視してチェックポイントを動的に生成するハードウェアとソフトウェアの協調機構、(b) ハザード検出によってロールバックを行う際に、そのペナルティが最小となるチェックポイントの同定方式、(c) ロールバック時にチェックポイントの環境に戻すために、データキャッシュに付加するメモリデータのバージョン管理機構、(d) 条件分岐命令に対する投機実行機構と融合した、プロセッサ内部のロールバック制御機構、を設計した。特に上記(a)(b)については、過去のハザード発生履歴をそのまま利用してチェックポイントを生成するのではなく、ハザード発生ポイントをグループすることによってチェックポイント生成のオーバヘッドを低減する方式を開発した。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
計画通りにチェックポイント生成方式の詳細設計を終え、次年度に計画している性能評価についての準備(シミュレータの開発)も始めている。
|
Strategy for Future Research Activity |
本研究計画の最終年度として、平成27年度では、平成26年度に行った概略設計をもとに性能評価のためのシミュレータを完成し、本方式の有効性を検証する。 なお、ハザード発生ポイントをグループすることによって、生成するチェックポイントの数を大幅に削減することが可能となるが、それでも、実行するアプリケージョンプログラムによっては、1スレッドあたり数千個のチェックポイントを生成しなければならない見込みである。性能の観点では、スレッド自体の実行時間が長いために、このオーバヘッドが問題とはならないものの、機構の複雑さやメモリ量という実現コストの点では好ましいとは言えない。一方、平成26年度の詳細設計の過程で行った予備評価において、メモリ上のデータに対しても値予測が有効であるとの知見を得ており、データ依存によるハザードの発生回数そのものを削減できる可能性がある。平成27年度は、これらの手法も取り入れながらチェックポイントの生成数をさらに削減し、最終的な性能評価を行う予定である。
|