|
PlayStation®2は、エモーショナルエンジン・コア®として知られるMIPS派生CPUを持ち合わせます。
VectorC{EE}は、x86プラットフォームで証明された'知的なコンパイラ'ベクトル化技術を引き継いだ、EE Core®
をターゲットとする標準C/C++コンパイラです。他社のコンパイラとは異なり、VectorC{EE}は一般的なMIPSコンパイラでは
ありません。むしろPlayStation®2ハードウェアのユニークな長所を引き出すようにデザインされていると言えるでしょう。
野望的な複雑なゲームプレーを要求されている開発過程で、PlayStation®2のEEへの需要は大きくなる一方です。
同じように、PlayStation®2ゲームプログラミングの十分なパフォーマンスへのチャレンジは、到達しつつあります。
カッティングエッジの自動ベクトル化の機能に付け加え、VectorC{EE}は強力なMIPSコンパイラです。
これはEEコア®のアーキテクチャー専用にデザインされており、プリフェッチングやアンキャッシュ・ストアといった
命令スケジューリングや拡張したメモリ最適化を活用することができます。
VectorC{EE}のゴールは、標準C/C++言語でGCCの代わりに優越したパフォーマンスを提供するだけでなく、将来の
カッティングエッジなPlayStation®2ゲームに、迅速な最適化したゲームコードを開発することを可能にします。
VectorC {EE}は、標準C/C++言語ソースプログラムを自動的にベクトル化し、マルチメディア・インストラクション
(MMI)を含む高度な最適化コードを生成することができます。
VectorC {EE} は、またコプロセッサー・ベクター・ユニット(VU0)に、内臓されたマクロモード命令を出力することに
よって自動ベクトル化も可能です。この機能を使うことで、複雑なプログラムは、マイクロモード・プログラムを別にかく
必要性をなくし、VU0の威力を最大限に活用することができるのです。
VectorC {EE} 機能:
- 進化した命令スケジューラー
- 知的なプリフェッチング
- アンキャッシュ・ストア
- マルチメディア命令 (MMI)をターゲットとした自動ベクトル化
- VU0 マクロモード命令のための選択自由な自動ベクトル化
- GCCへのリンクと互換性
- 高速なMIPS 呼び出し規則
- 確立したインライン・アセンブリ・シンタックスのサポート
- インライン・アセンブリのスケジュール
- インタラクティブ・オプティマイザの利用
VectorC {EE} が標準C/C++言語をコンパイラする一方、オプティマイザにいつ変換が実行されるかを伝えるため、
幾つかの言語機能が付け加わりました。これらの変換機能は、全てのVectorCのコンパイラを通して一致しており、コードの
意味を変更したりはしません。これにより、アセンブリ言語でコーディングせずにハードウェアの最大限の機能を引き出した
パフォーマンスを得ることができることを意味します。
VectorC{EE}のその他のユニークな特徴は、インタラクティブ・オプティマイザというアプリケーションを含むことです。
Codeplayの'知的なコンパイラ'技術は、ソースコードからどうやってパフォーマンスを向上させるか
(ソースコードを変更するもしくは、言語特徴を付け加える)というアドバイスを提供します。
インタラクティブ・オプティマイザのゴールは、このアドバイスを簡単に提供し、出力コードのパフォーマンスを最大限
に引き出すためにコンパイラ設定とソースコードを変更することです。
VectorC {EE}は、現在英語版C言語のみサポート版がリリース中です。C++言語サポートに関しては、
現在開発最終段階にあり、完成次第無償でアップデート致します。
Codeplayの'知的コンパイラ' テクノロジーに関して、詳しい情報が必要な場合は、
VectorC {PC}のドキュメントを参照して下さい。
PlayStation は、Sony Computer Entertainment Inc.の登録商標です。
|