テストレポート
「ロスト プラネット」と8CPUコアでチェックする,マルチスレッド最適化の最前線
4Gamerではこれまで繰り返しお伝えしているとおり,複数のCPUコアを効率的に利用するゲームエンジンの数はまだ少ない。しかし,ゲームエンジン全体の傾向として,複数の処理を並列して行うマルチスレッド(≒一つのアプリケーションが,複数のCPUコアを利用して処理を行うこと。詳細は不定期連載「ソフトにハードの物語」第2回を参照してほしい)に最適化されつつあるのも,また確かだ。
その最新かつ身近な例が,カプコンの「ロスト プラネット エクストリーム コンディション」(以下ロスト プラネット)である。体験版を実行した人なら分かるとおり,同タイトルのゲーム設定には「何スレッドを同時に走らせるか?」を指定する項目「並列処理」があり,(少なくとも筆者が調べた限りでは)システムが搭載するCPUコアの数が最大値となる。
このキットには「8-Core Media Creation PC」という名が与えられているので,本来はビデオやオーディオの制作を想定したもののようだ。とはいえ,XeonベースのクアッドコアCPUを2個搭載した8コアシステムなので,CPU構成はSkulltrailの構想に近い。2007年6月下旬時点におけるマルチスレッド最適化状況をチェックするには,何の問題もないと判断した次第である。
■“プレSkulltrail”こと評価キットをチェック
■テスト環境&方法はかなり特殊なので注意
なお,2007年6月下旬時点で,Xeon X5365はAppleの「Mac Pro」におけるBTOオプションとしてしか入手できない。言ってしまえば,150Wの電球2個を筐体の中で灯すようなもので,Mac Pro以外では今のところマトモに冷却できないという判断がIntel内部で働いているのかもしれない。
マザーボードは,LGA771版Xeonをサポートするワークステーション向けチップセット「Intel 5000X」を搭載した同社製品「Intel S5000XVN」。拡張スロット構成はPCI Express x16 ×1,PCI Express x4(コネクタはx8) ×2,PCI-X(3.3V対応PCIカードは利用可能)×2となる。このほか,Intel純正のCPUクーラー,Samsung Electronics製のPC2-5300 DDR2 SDRAM FB-DIMM 1GB×4,Cooler Master製の電源ユニット「RealPowerPro 850W」が,キットに含まれるハードウェアのすべてである。
8コアシステムなので,対応OSが気になる人がいるかもしれないが,実際のところ,Windows XPであればProfessional,Windows VistaならUltimate,Business(と,一般販売の行われていないEnterprise)なら,物理CPUソケット2個をサポートするので,問題なく認識される。
テスト環境は表のとおり。基本的には,評価キットに「GeForce 8800 GTX」を差したものと理解してもらえればOKだ。メモリは4GB分搭載しているが,OSには32bit版Windows XP Professionalを利用しているため,OSから認識されるのは2.47GBとなる。
このほか,Video/Audio Settingsの設定は以下のとおりとした。基本的には,選べる限り高い設定を選択している――「影の品質」は,今回の環境だと「中」までしか選べなかった――が,あまりにも描画負荷を高くしすぎるとグラフィックスカードがボトルネックとなり,CPUコア数の違いがフレームレートに与える影響が見えなくなってしまう可能性があるため,アンチエイリアシング設定は「オフ」としている。
●テストに当たっての描画設定
- FPSの表示:オフ
- アンチエイリアス:オフ
- HDR:高
- テクスチャフィルタ:バイリニア
- テクスチャ解像度:高
- モデルの詳細:高
- 影の品質:中
- 影の解像度:高
- モーションブラーの品質:高
- エフェクトの解像度:高
- エフェクトの品質:高
- エフェクトのボリューム:高
- ライティングの品質:高
- ディスプレイの解像度:1024×768ドット/1600×1200ドット
- ディスプレイの周波数:※垂直同期をオフにしているので設定する理由なし
- フルスクリーン:オン
- 垂直同期:オフ
- アスペクト補正:オフ
- 並列処理:テストによる(※1〜8)
- 並列レンダリング:オン
- マルチGPU:オフ
■1コアと8コアでは最大2.6倍の差に
では,本当にスレッドの数による影響はあるのだろうか。
ロスト プラネットの体験版に用意されているベンチマークモードは,「Snow」と「Cave」という,二つのデモシークエンスから成り立っている。それぞれについて,「並列処理」設定を1〜8の範囲で変更しつつ,1024×768/1600×1200ドット時に平均フレームレートを計測。その結果をまとめたのが,グラフ1,2である。
念のため,スコアに変化のなかったSnowで,本当にマルチスレッド処理されているのかを確認してみた。そのうち,1スレッド,3スレッド,5スレッド,8スレッドについては,以下のとおり画面で示すが,「並列処理」の設定内容に応じて,使われるCPUコアの数が増えていっているのが分かる。
このとき,設定したスレッド数よりも一つ多くCPUコアが使われているように見えるが,これはおそらく「並列処理」では,ゲームに関する処理のすべてをマルチスレッド化しているのではないためだろう。常に高いCPU負荷を示すのがメインのスレッドで,それ以外のマルチスレッド化できるところを,「並列処理」数に応じて増やしていっている,といった感じだろうか。
■ついに登場した“8コア最適化ゲーム”
■次世代のゲーム環境はどうなる?
これまで,ゲームに強いCPUというのはほとんどの場合,1スレッドをより高速に実行できるCPUのことを指していた。これはもちろん,ゲームがマルチスレッドを意識せずに作られていたためだ。そのため,同じマイクロアーキテクチャで製造されるCore 2 DuoとCore 2 Quadでは,動作クロックが同じだとゲームのフレームレートにほとんど違いがなく,結果として4Gamerでは,クアッドコアCPUの意義はほとんどないと判断してきた。
しかし,ロスト プラネットのように,マルチスレッドを前提としたゲームでは,評価が変わってくる。グラフィックスカード性能による頭打ちという深刻な問題は残るものの,逆にいえば,NVIDIA SLIやCrossFireによってこの問題が解決すると,ゲームのフレームレートは向上させられるのだ。もっといえば,8コアCPUに,2枚や4枚のグラフィックスカードによるマルチGPU構成を想定した,SkulltrailやFASN8(&Quad FX)というコンセプトは,将来のゲーム環境を見据えたときに,そう間違ったものではないということになる。
ウルトラハイエンドをターゲットとするゲーマー向けPCの実現には,この問題――消費電力もそうだが,それ以上に「どうやって冷却するか」のほうがより重要――がある。ただ,これまでほとんど意味のなかった4コア以上のCPUについて,ゲームにおけるメリットを実感できる例を確認できたのは大きな収穫だ。
もちろんこれまで同様,「今後,マルチスレッド対応ゲームは本当に増えるのか」という根本的な疑問への答えは未だないわけだが,少なくとも,最前線で2コアを超えるマルチコアCPUへの対応が始まっていることは,ゲーマーとして,憶えておく必要があるだろう。(ライター:Jo_Kubota)
- 関連タイトル:
Core 2
- 関連タイトル:
ロスト プラネット エクストリーム コンディション
- この記事のURL:
キーワード
(C)2006 Intel Corporation
Character Wayne by (C)Lee Byung Hun /BH Entertainment CO., LTD, RIGHTS RESERVED. (C)CAPCOM CO., LTD. 2006,2007 ALL RIGHTS RESERVED.