3

これはコンパイラーにとっては非常に単純な質問ですが、私は常にスーパーブロックとハイパーブロックと混同されます。スーパーブロックとハイパーブロックの定義を見てきましたが、コンパイラーの観点からそれらの定義を知りたいと思います。

基本ブロック、述語実行、ループ展開などの概念に精通しているので、基本的なものをスキップできます。

ありがとう!

4

1 に答える 1

5

この記事では、スーパーブロックの概念と、スーパーブロックとは何かについて説明します。簡単に言えば、基本ブロックの ILP は十分に高くない可能性があるため、基本ブロック全体で ILP を増加させるという考え方です。スーパーブロックとは、側面に入り口がないトレースです。コントロールは上からのみ入ることができますが、1 つまたは複数の出口ポイントで出ることができます。つまり、最初のエントリは 1 つですが、複数の出口があります。プロファイル情報を使用して、複数の基本ブロックを含む共通パスからスーパーブロックを構築します。次に、スーパーブロックの最適化を適用します。詳細については、紙をご覧ください。

単一の共通パスがなく、予測サポートがある場合は、複数の共通パスを組み合わせてハイパーブロックを作成し、ハイパーブロックで最適化を行うことができます。

于 2012-07-02T17:52:55.717 に答える