EPICアーキテクチャ

From Wikipedia, the free encyclopedia

EPICアーキテクチャ(エピック・アーキテクチャ)は、VLIWをベースに改良が施されたコンピュータ・アーキテクチャインテルおよびヒューレット・パッカードが、IA-64Itanium)で開発・採用した。EPICはExplicitly Parallel Instruction Computingの略。

アウト・オブ・オーダー実行投機的実行パラダイムが規模とともに複雑さを増してきたため、プロセッサ業界では1990年代中頃から複数の処理を明示的にひとつの命令で行う命令セットの再評価が始まった。 このような研究はVLIWと呼ばれるもので複数の機能ユニットに対する処理が各命令にエンコードされるものである。

目標は複数命令の動的スケジューリングの複雑さをハードウェア実装からコンパイラに移すことであり、これにより(トレースフィードバック情報を使って)命令スケジューリングが静的に行われるようになる。 もうひとつ重要な目標は命令レベルの並列性(ILP、instruction level parallelism)をさらに活用することである。

VLIWの弱点

VLIWが(少なくとも本来の形式では)主流になれなかったのは、以下のような欠点があったためとした。

  • 実装するたびに後方互換がなくなってしまう。よりたくさんの実行ユニットを実装すると、命令の幅も増えてしまうため、従来の少ない実行ユニットのものとは互換性がない。
  • VLIWの命令幅を使い切るだけの同時実行可能命令をコンパイラが見つけられない場合、余った命令幅をNOP命令で埋めざるを得ず、命令キャッシュ・メモリ帯域の浪費になる。
  • メモリからロードする場合、CPUのキャッシュや主記憶といった階層があるためにどれだけ時間がかかるか予測できない。そのためロード命令の配置をコンパイラで効率的に行うのは非常に困難である。

EPICアーキテクチャ

EPICの実装

関連事項

Related Articles

Wikiwand AI