大域的なコード移動を使った複数式の実行コスト削減法

Bibliographic Information

Other Title
  • タイイキテキ ナ コード イドウ オ ツカッタ フクスウシキ ノ ジッコウ コスト サクゲンホウ
  • A Method for Reducing Execution Cost of Multiple Expressions by Using Global Code Motion

Search this article

Abstract

コンパイラ上で式を最適化する方法は,大きく分けると冗長な式の実行回数を減らす方法と式の演算強度を軽減させる方法の2種類がある.本稿では,実行回数を減らしつつ,アーキテクチャの性質を利用して複数の式をより演算強度が軽い式へ合成させる新しいアルゴリズムを提案する.本稿のアルゴリズムは,依存関係を持つ式だけではなく,依存関係がない複数の式も合成できる点が大きな特徴である.さらにこのアルゴリズムは,多くの言語やアーキテクチャに対して適用可能である.我々はIA-64上のIBMのJava Just-in-Time(JIT)コンパイラに対して,このアルゴリズムを使った2種類の最適化の実装を行い,SPECjvm98のベンチマークを用いて評価を行った.

In the past, there have been two methods to optimize expressions in compilers. One is to reduce the number of execution count of an expression. The other is to transform expensive expressions to less expensive ones. In this paper, we propose a new algorithm of integrat-ing some expressions by utilizing architecture characteristics with reducing the number of execution count of each expression. This algorithm can optimize both expressions with a de-pendencyand expressions without a dependency. Moreover, this algorithm can be applied tomany languages and architectures. We implemented two optimizations using this algorithmin the IBM Java Just-in-Time (JIT) compiler on IA-64, and evaluated them by measuring the SPECjvm98 benchmark suite.

Journal

References(22)*help

See more

Keywords

Details 詳細情報について

Report a problem

Back to top