Q/パソコンでPS2並みのゲームをするとなるとだいたいどの程度のスペックがひつようでしょうか?
A/インテル製のプロセッサでは数ギガヘルツのCPUとGeforce4(RADEON8500以上)程度のグラフィックスが必要ですね。
基本的にCPUの仕様が異なるため、エミュレートの場合は環境構築にスペックを取られますから、大事なのはエミュレーターの精度になり、周波数の指定はできません。
最低限言えるのは、1GHzや2GHzでは厳しい可能性が高いということですね。(これは、プログラミングの仕様が異なるため、x86でPS2の命令を演算すると無駄な再計算や変換処理が多くなるため)
ちなみに、PS2と同じ精度のグラフィックス(PS2ではグラフィックスチップをGraphicsSynthetheizerと呼ぶ、以下GSとします)は既にGeforce3やTi4MXで十分に達成します。
これは、GSの性能がコア周波数
147,457MHzで
ジオメトリエンジンのポリゴンレートが
6600万ポリゴン/秒
レタリングエンジンのテクセルレートが
24億テクセル/秒
となることからでGeforce3程度でその性能に追いつくことになります。ちなみに、ビデオメモリはPS2の場合VGA程度の表示を専門とするため4MBと少なくその代わり、すさまじく高速なバスでGSと繋がり今のビデオカードでも太刀打ちできないビデオメモリ速度を持っているのが特徴。
ついでに言えば、CPUは比較ができないのでご了承を、これはCPUがRISC構造のMIPSベースであるため、インテル系のCISCベース内部RISC構造のx86とは根本的な構造が異なるためです。
もうちょっと分かり易く言えば、
RISCでは、特定の単純命令を高速にこなせますが、複雑な命令に弱い傾向があり、単純命令を並列していくつも行うことで高速化しています。
ちなみに、PS2はエモーションエンジンと呼ばれるCPUで毎秒60億回以上の浮動小数点演算が可能です。これほど高速な理由は専用演算器を浮動小数点演算に関してはFPU(浮動小数点演算器)2器、VLIWユニット小数点ベクトル演算器2系統2種類で12を実装していることで演算を高速化しているためです。しかも、これが300MHzのプロセッサで達成されている。ただし、整数演算は苦手とする。
対して、CISCでは複雑な命令を処理するのが強くなっており、複雑な命令を高速にこなすことで速度を上げる手法。Pentium4では、CISCコアの内的RISCを使うことで、3GHz程度で最大実用時毎秒60億回程度の浮動小数点演算を可能にします。整数演算ならRISCより圧倒的に強い場合が多い。
あくまで浮動小数点演算の場合、CISCは整数演算が中心となるALUをベースにしているため、整数演算ベースのx86に最適になるようにソフトをコンパイル(コンピュータで動作するように最終処理をする)すれば低い周波数でPS2並みのゲームが動くようになる。
そのため、現在あるPS2タイトルをPCでそのままやる場合は、かなりのスペックが必要になる(数ギガヘルツ台の性能が必要。1Ghz程度ではまず厳しい。PS2のCPUを100%使わない軽いソフトなら動くタイトルもあるでしょうが・・・)が、PS2で販売されているタイトルとPCに最適化し移植した正規ソフトウェアの場合は、3GHzもCPUスペックは必要ないと言うことになる。場合によっては数百メガヘルツでも動くことも。(PCに搭載されているグラフィックスの性能が高ければですが・・・)
複雑ですが、いかがでしょう。
お礼
大変詳しく解説していただきありがとうございました。