投機的 制御/データ依存グラフとJava Jog-time Analyzer : Java Virtual Accelerator実現へ向けての予備評価

書誌事項

タイトル別名
  • 投機的制御/データ依存グラフとJava Jog-time Andyzer--Java Virtual Accelerator実現へ向けての予備評価
  • トウキテキ セイギョ データ イゾン グラフ ト Java Jog time Andyzer Java Virtual Accelerator ジツゲン エ ムケテ ノ ヨビ ヒョウカ
  • Speculative Control/Data Dependence Graph and Java Jog-time Analyzer : A Preliminary Evaluation for Java Virtual Accelerator

この論文をさがす

抄録

我々は 既存逐次計算機のプログラムを 並列計算機上でエミュレーション実行しつつ速度向上を得る 並列化エミュレーションによってJavaプログラム実行の高速化を目指す実行時並列化インタプリタ/JITコンパイラシステムJava Virtual Acceleratorの実現を検討している. 並列化エミュレーションでは 逐次バイナリプログラムから並列性の自動抽出を試みる. 逐次プログラムに内在する制御・データ依存関係を可能な限り緩和するために 投機的制御・データ依存グラフというプログラム表現を導入した. これは 依存グラフ上を流れる制御・データ値の両方について 予測率で依存関係を表わす各アークを重み付けし 予測が容易で情報量が少ないとみなせるアークを予測・確認ノードに置き換えることによって得られるものである. 上記モデルに基づく並列化の実験を行なうために Javaプログラムの動特性解析ツールJava Jog-time Analyzerを開発した. JJAは 中間コードインタプリタが プログラム実行時に データ・分岐予測モジュールの起動 統計情報の収集を行ない プログラム終了時に 各予測モジュールの予測率 クリティカルパス計算時間 平均並列度などの統計データを依存グラフのプロットとともに出力する. 本論文では JJAを用いて行なった各種の実験結果について報告する.

The authors are investigating the possibility of Java Virtual Accelerator, a run-time parallelizing interpreter/JIT compiler system which speeds up Java execution through parallelizing emulation. To realize parallelizing emulation, automatic extraction of the parallelism from sequential binary programs is important. We developed the "speculative control-data dependence graph" model to relieve the control and data dependence constraints inherent in the sequential programs. Speculative control-data dependence graph is constructed by measuring the prediction rate for both control and data values during the test run, and replacing highly predictable arcs with predict-confirm nodes. Java Jog-time Analyzer is developed for the experiment of the model described above. JJA analyzes control and data dependences statically while class files are loaded, and the intermediate code interpreter of JJA invokes data and branch prediction modules and gathers run-time statistics everytime basic block boundary is crossed. Run-time statistics such as the block execution counts, the prediction rates, the critical path execution time and the average parallelism, as well as the plot of the dependence graphs, are shown at the end of the execution. In this paper, several experiment results with JJA are shown.

収録刊行物

被引用文献 (3)*注記

もっと見る

参考文献 (28)*注記

もっと見る

キーワード

詳細情報 詳細情報について

問題の指摘

ページトップへ