テストレポート
「Mantle」で「Civilization:Beyond Earth」はどれだけ速くなるのか? ベンチマークとムービーでその挙動を確認してみた
2014年11月時点における最速のGPUが「GeForce GTX 980」(以下,GTX 980)であることは論を俟たないと思うが,Beyond EarthをMantleモードで動作させると,Radeon R9 200シリーズの最上位モデルたる「Radeon R9 290X」(以下,R9 290X)はGTX 980よりも高い性能を発揮できると,AMD主張は主張している(関連記事)。
では,実際のところ,Beyond EarthにおけるMantleの実装はどのようなものになっていて,MantleモードではDirectX 11モードと比べて何が変わるのか。本稿では,AMDによる推奨ドライバを用いつつ,そのあたりを確認してみたい。
R9 290Xのほか,上位&下位モデルでもテストを実施
EQAAや「Beyond EarthにおけるCF」の効果も検証
Beyond Earthがどんなゲームかという話は徳岡正肇氏によるレビュー記事を参照してもらうとして,本稿ではさっそくテスト環境の話に入ろう。
また,今回はそれに加えて,デュアルGPUカード「Radeon R9 295X2」(以下,R9 295X2)と,「Graphics Core Next 1.1」準拠の「Tonga」コアを搭載する最新GPU「Radeon R9 285」(以下,R9 285),そして,エントリークラスのGPUを代表して「Radeon R7 250XE」(以下,R7 250XE)でも,その挙動をチェックしてみたいと思う。
以下,2基のGPUによる2-way構成を前提に話をするが,マルチGPU構成を描画の高速化に利用するCrossFire(やNVIDIAのSLI)の場合,あるフレームを1基めのGPUが描画中であっても,次のフレームの描画準備ができたら,2基めのGPUが描画処理に取りかかるAFRを利用が主流となっている。ベストケースでは2基のGPUが完全に並列動作するため,最も高い性能を期待できる……というのは,体験的に知っている人も多いだろう。
それに対し,1つのフレームを上下もしくは左右分割して,2基のGPUがそれぞれの描画を分担するSFRであれば,キューは1フレーム分となるため,「操作が画面上で反映されるまでの待ち時間」はワーストケースにおいてAFR比で半分となる。「CPU負荷が相対的に高いBeyond Earthにおいては,単純にフレームレートが上がることよりも,操作への反応がよくなることのほうが重要である。だからこそ,デベロッパであるFiraxis Gamesは,Mantleの採用にあたり,マルチGPU動作においてSFRを採用したのだ」(AMD)。
要するにR9 295X2は,このあたりの事実関係を確認するために用意したというわけである。
一方,R9 285とR7 250XEを選択した理由はシンプル。前者は,「Beyond Earthが最新世代のGPUコアに対してもMantleの最適化を行っているのかどうか」,後者は「もともと『CPU性能がGPUのそれと比して相対的に低い環境において,CPUの負荷を下げるための技術』であるMantleモードにおける挙動はどうなっているのか」を確認するためのものとなる。
テストに用いたRadeon用グラフィックスドライバは,Mantle版Beyond Earthへの対応が明言されている「Catalyst 14.9.2 Beta」となる。WHQL(Windows Hardware Quality Labs,ウィクル)通過版(=公式版)ドライバ以外のCatalystは,新しくリリースされたバージョンが過去のリリース内容をすべて含んでいる保証がないため,今回,14.9.2βよりも新しいCatalyst 14.11.x Betaシリーズの利用は意図的に避けた次第だ。
対するGTX 980では,Beyond Earthへの最適化が謳われたグラフィックスドライバ「GeForce 344.48 Driver」を用いる。GeForce Driverの場合,より数字の新しいドライバは過去のアップデート内容を含んでいるため,「GeForce 340.75 Driver」を用いるのが筋なのだが,これはテストスケジュールの都合によるものなのでご了承を。
そのほかのテスト環境は表にまとめたとおり。CPUの自動クロックアップ機能「Intel Turbo Boost Technology」は,テスト時の状況によって挙動が変わる可能性を排除すべく,UEFI(≒BIOS)から無効化している。
Beyond Earthの内部ベンチマークツールを利用
MantleモードではAAの処理が変わることに注意
肝心のテスト方法だが,Beyond Earthには標準でベンチマークモードが用意されており,SteamのライブラリからBeyond Earthを選択して右クリックし,「プロパティ」→「一般」→「起動設定」から起動オプション「-benchmark lategameview」を付けて実行すれば,自動的にベンチマークモードが立ち上がる仕掛けになっているので,これを使いたい。
ベンチマークは,ゲーム終盤と推測できるマップに,ところ狭しとユニットが配置された状態で,画面のスクロールと拡大縮小を50秒間実施するというもの。シンプルながら,Civilizationシリーズのファンであれば相応に高い負荷だと想像できるテストになっている。
テストに用いた解像度は,1920
ただし,Mantleモードで実行した場合,MSAAを有効化すると,自動的にEQAA(Enhanced Quality Anti-Aliasing)が適用されることは押さえておきたい。
EQAA自体はNorthern Islands世代のRadeonでサポートされた機能なので,覚えている読者もいるだろうが,簡単にいうとMSAAの拡張版であり,カラー値(Color Sample)比で2倍の深度値(Coverage Sample,Z値)を取ることで,エッジ判定をより厳密に行い,オブジェクトの輪郭線を自然に強調しようというものだ。下に示したのは,2560
いずれにせよ,Mantleモードのアンチエイリアシングは,DirectX 11モードよりも負荷が若干高くなり,しかもそれは変更できないので,その点は注意してほしいと思う。
特定条件でGTX 980を凌駕することよりも
最小フレームレートのブーストが目を引く
以下グラフ中,DirectX 11モードで実行したRadeonのGPU名には「DX11」,Mantleモードで実行したRadeonのGPU名には「Mantle」と付記することを断りつつ,テスト条件ごとに結果を見て行こう。
グラフ1〜3は,標準設定における平均フレームレートと最小フレームレートをまとめたものだ。今回のテストにおける半ば主役といえるR9 290Xを見てみると,1920
Mantleは実質的に,ゲームにおけるCPU負荷を下げる技術なので,相対的にCPU負荷の高いBeyond Earthでは,その恩恵が大きく出て,最小フレームレートを押し上げる効果につながったのだろう。
最小フレームレートといえば,3840
なお,R7 250XEは今回のテスト環境だと,Mantleによるメリットをほとんど得られなかった。Mantleモードであることの恩恵を受けるには,「大きなGPUボトルネックが生じない」ことが条件として挙げられそうだ。
続いてグラフ4〜6は高負荷設定におけるテスト結果である。AMDは,
GPUボトルネックが顕著になる3840
では,この「平均フレームレートはそれほど上がっていないが,最小フレームレートは大きく向上している」事態は,実際のゲームプレイにおいてどのような効果をもたらしているのか。それをムービーで確認してみよう。
ここでは高負荷設定の1920×1080ドット――HDMIで出力し,別マシンに接続したキャプチャデバイス「XCAPTURE-1」で録画する都合上,解像度は1920×1080ドットが上限になる――に設定したうえで,8人設定の「一番簡単」でゲームを進め,250ターン経過したセーブデータを使い,最近景にまでカメラを寄せてから,拡大縮小させつつ,マップをスクロールさせたときの挙動を見ることにした。
下に示したムービーは,
- GTX 980のDirectXモード
- R9 290XのDirectXモード
- R9 290XのMantleモード
- R9 290X2のDirectXモード
- R9 290X2のMantleモード
という順番で,それぞれ約40秒,計3分ちょっとにまとめたものだ。R9 290X2はHDMI出力を持たないこともあり,DVI→HDMI変換アダプター経由となるため,結果としてサウンドが入っていないが,他意はない。
Beyond Earthでは,セーブデータの読み出し後などといったゲームの開始直後は,遠景表示にしたとき,ヘックスがパラパラと現れ,すべて表示されるのに時間がかかることがあるが,これは最初だけ。キャッシュされた後はそういうこともなくなるので,キャッシュされた後の挙動をチェックしてもらえればと思うが,そこに注意して見てもらうと,DirectX 11モードにある“引っかかり”が,Mantleモードでは明らかに軽減されているのが分かるはずだ。
フレームレートではなく体感性能の向上を実現した,Beyond EarthにおけるMantle
まとめよう。平均フレームレートという「数字」を見る限り,Mantleの導入による効果は,せいぜい1割といったところだ。端的に述べて,そのインパクトは全然なく,本稿のグラフだけ流し読みしたら,Beyond EarthにおけるMantleはまったくの期待外れと思うかもしれない。
しかし,Beyond EarthにおけるMantleの効果は,最小フレームレートの向上,より分かりやすく言い換えるならば体感速度の向上にこそある。記事の中盤で,CrossFireの動作モードに関するAMDのコメントを引いたが,MantleモードのCrossFireで,平均フレームレートの大幅な向上は期待できないSFRをあえて採用しているあたりも含め,Firaxis GamesとAMDは,「ターン制ストラテジーにおける『快適さ』とは何か」を理解したうえで,そこに向けた最適化を行ってきたと言っていいのではなかろうか。
スクロールや拡大縮小時における挙動の違いは,プレイ時間が長くなればなるほど“効いてくる”感じだ。Beyond Earthを本気でプレイするためにグラフィックスカードを買い換える場合に,Radeonを選択するというのは一考の価値があるとまとめておきたい。
AMD公式BlogのBeyond Earth関連ポスト(英語)
- 関連タイトル:
Sid Meier’s Civilization: Beyond Earth
- 関連タイトル:
Mantle
- この記事のURL: