連載
「4Gamerベンチマークレギュレーション20.1」公開。グラフィックスカード消費電力計測ツールの問題へ対処
4Gamerの場合,読者として日本のゲーマーを対象としているため,テストに用いるプログラムも評価基準も基本的にはゲームを想定している。ただ,ご存じのとおりゲームには流行があり,時間の経過とともに「プレイされるタイトル」は移り変わるため,「何を使ってテストを行うか」は,定期的に見直していく必要がある。
結果として,過去約11年にわたって,「どのゲームを使って,どのようにテストするか」を定めたレギュレーション(regulation,規定)を,大枠で19回刷新し,そのたびに読者の便宜のため公開してきたわけである。
ただ,そのなかで,ゲームやハードウェアの進化にレギュレーションが対応しきれなくなるという現実も出てきた。そこで,レギュレーション20世代においては,テスト方法の根幹を見直し,再設計することにした次第だ。
レギュレーション20世代以降のバックナンバーは下の囲みからアクセスしてほしい。また,19世代以前のレギュレーションはその下に示したリンクボタンの先で今後も閲覧できるようにしておくので,過去のテスト方法を知りたい場合は,そちらを参照してもらえればと思う。
更新履歴
バージョン19世代以前のレギュレーショントップページ
本稿で取り上げるベンチマークレギュレーション20.1の詳細項目は,下に並べた記事内リンクから確認してほしい。
■ベンチマークレギュレーション20.1もくじ
GPU性能検証
レギュレーション19世代以前で4Gamerは,まず2種類の描画設定プリセットやそれに準ずるグラフィックス設定(以下,便宜的に「描画設定プリセット」とする)を選択したうえで,その2条件に対して2パターンの解像度設定でテストを行うスタイルを取ってきた。これはベンチマークレギュレーション1.0の頃に「アンチエイリアシングとテクスチャフィルタリングの有効/無効」で描画負荷設定の2条件を既定していた頃の名残だったりもするのだが,レギュレーション20世代以降ではこれを変更したい。ゲームアプリケーションのテストにあたっては,
- 1つの描画設定プリセットを選択し,それに対して3パターンの解像度設定を選択
して,テストを行うことにする。描画設定プリセットをどうするかという話は,アプリケーションごとに行う。
では,レギュレーション20世代において,どのアプリケーションでテストを行うかだが,それは以下にまとめたとおりだ。タイトル名のリンクをクリックすると各論へ飛べるようにしてあるので,参考にしてほしい。
■レギュレーション20.1の採用アプリケーション
- 3DMark
- Superposition Benchmark
- Prey
- Overwatch
- PLAYERUNKNOWN'S BATTLEGROUNDS
- Tom Clancy’s Ghost Recon Wildlands
- ファイナルファンタジーXIV: 紅蓮のリベレーター
- Forza Horizon 3
■ベンチマークレギュレーション20.1関連コラム
テストにあたっては,平均フレームレートだけでなく,最小フレームレートも取得することにした。これまでも4Gamerでは,事前検証で「この程度の最小フレームレートがあればゲームをプレイできる」というおおよその基準を設定し,それを実現できる平均フレームレートを示してきたが,であるなら最小フレームレートも掲載していたほうが,読者には便利だろうというのがその理由である。
特別な事情がない限り,テストに用いるOSは64bit版Windows 10となる。
OSに絡んで1つ述べておく必要があるのは,レギュレーション19世代まで基本的に無効化していた,CPUの省電力機能や自動クロックアップ機能は,レギュレーション20以降,基本的に有効化するということだ。これは,後述するとおり,CPUとGPU(=グラフィックスカード)の消費電力を個別に取得できるようになったので,「であればゲーマーの日常的な環境のほうがテストに適しているだろう」という判断による。
一方で,Windowsの電源プランは,少なくともデスクトップ環境では,CPUが最高性能を発揮できる「高パフォーマンス」を手動で選択する。ノートPCの場合はこの限りではないため,その場合はどの電源プランを選択したかを本文で明記していくことにする。
■3DMark
2013年2月以降,製品名の後ろにあった付帯表記がなくなり,シンプルな製品名となった3DMark。フィンランド時間2016年7月14日公開のVersion 2.1.2852からは,DirectX 12対応のテストである「Time Spy」が追加となり,DirectX 11世代の単体グラフィックスカードが対象の「Fire Strike」,DirectX 11世代のグラフィックス機能統合型CPUおよびAPUがターゲットとなる「Sky Diver」,そしてDirectX 9/OpenGL ES 2.0ベースで,WindowsとAndroid,iOS間の横断的な比較を行えるテストである「Ice Storm Unlimited」というベンチマーク構成になっている。
Time Spy |
Fire Strike |
Sky Diver |
Ice Storm Unlimited |
このうち,主に利用することになるのは,Fire StrikeとTime Spyの2つだ。Fire Strikeには,1920
一方,Time Spyは解像度2560
テスト方法は以下のとおりで,「2回実行し,高いほうを採用する」ことになる。
●実行手順
- 3DMarkを起動
- 「MORE TESTS」を選択
- 「Fire Strike」「Fire Strike Extreme」「Fire Strike Ultra」もしくは「Time Spy」を選択
- 「Include demo」のスライドをチェックし「No」にする
- 「RUN」をクリックしてベンチマークを実行
- スコアデータの取得後,(5)を再度実行
- 「BENCHMARKS」タブを選択し,「Time Spy」の「DETAILS」をクリック
- 「Include demo」のスライドをチェックし「No」にする
- [RUN]ボタンをクリックしてベンチマークを実行
- スコアデータの取得後,(9)を再度実行
■Superposition Benchmark
Superpositionが持つ最大の特徴は,Unigine独自のゲームエンジンである「UNIGINE 2」を採用していること。3DMarkが純然たるベンチマークテストアプリケーションなのと対照的で,実際,Superpositionにはゲームモードがあり,画面内のオブジェクトを動かすことが可能だ。
また,「8K」「VR」をターゲットに,次世代GPUを対象としたストレステスト的な位置づけにもなっており,描画負荷はかなり高い。
VR READY?テスト |
STRESSテスト |
さて,そのPERFORMANCEモードだが,レギュレーション20世代では,「8K Optimized」「4K Optimized」「1080p Extreme」「1080p High」「1080p Medium」「720p Low」と用意された6つの選択肢から,
- 1080p Extreme
- 1080p High
- 1080p Medium
なおSuperpositionでは,「Graphics API」で「DirectX」と「OpenGL」を選択できるが,基本的にはDirectXを選び,DirectX 11ベースでテストを実施することにしている。
事前にテストを行った限りでは,スコアに大きなバラつきは見られなかったので,テストは1回のみ行い,その結果をスコアとして採用したい。それを踏まえた,テスト方法は以下のとおりである。
●実行手順
- Superpositionを起動
- 「BENCHMARK」を選択
- 「PERFORMANCE」を選択
- 「Preset」から「1080p Extreme」「1080p High」「1080p Medium」のいずれかを選択
- [RUN]ボタンをクリックしてベンチマークを実行
- スコアデータを取得
- ベンチマークモードを変更しつつ,4.〜6.を繰り返し実行(※最終的に1080p Extreme,1080p High,1080p Mediumで合計3回実行することになる)
■Prey
ゲームエンジンには,PCだけでなくPlayStation 4やXbox Oneとのマルチプラットフォーム展開に対応した第4世代の「CryENGINE」を採用。マルチGPUソリューションであるNVIDIAのSLIとAMDのCrossFireはどちらも標準で対応済みだ。
そんなPreyをベンチマークレギュレーションで採用するにあたって,今回は以下のとおりのグラフィックス設定を選択することとした。
●ゲーム設定
- バージョン:最新版(Steamによる自動アップデート)
- セーブデータ:4Gamerオリジナル
- セーブデータ保存先:C\ユーザー
\【ユーザー名】 \保存したゲーム \Arkane Studios \Prey \SaveGames \Campaign0 (※Windows 10のデフォルト設定時)
・ゲーム設定:オプション−ビデオ−基本設定
- モニター:1
- 解像度:テストによる
- 表示モード:フルスクリーン
- V-SYNC:オフ
- 明るさ:任意
- プリセット:最高/中
・ゲーム設定:オプション−ビデオ−高度な設定
- オブジェクトディテール:プリセットによる
- シャドウ品質:プリセットによる
- テクスチャ品質:プリセットによる
- 異方性フィルタリング:プリセットによる
- アンチエイリアス:プリセットによる
- SSDO:プリセットによる
- SSR:プリセットによる
- 水平視野角:86
・ゲーム設定:オプション−オーディオ
- BGM音量:任意
- ボイス音量:任意
- エフェクト音量:任意
- オーディオ言語:任意
Preyにおいて,グラフィックス設定は「オプション」の「ビデオ」以下,「高度な設定」にまとまっている。設定項目はさほど多くはないが,それらはまとめて,「基本設定」にある「プリセット」の変更によって切り換えることが可能だ。
そのプリセットは「最高」「高」「中」「低」の4つ。レギュレーション20世代では基本的に描画負荷が最も大きい最高プリセットを利用する。ただし,テスト対象の3D描画性能がそれほど高くないことが想定される場合には,描画負荷が低めの中プリセットも用いることとした。
プレイヤーが操作せねばならず,また,敵の挙動も毎回異なるため,完全に同一な条件でのテストとは言えない。しかし,事前検証では,毎回同じルートを通る限り,フレームレートの極端なブレがないことを確認できたので,2回の平均値をスコアとして採用したいと思う。
以上を踏まえた実行手順は以下のとおりとなる。
●実行手順
- Frapsからベンチマーク計測時間を60秒に設定
- Preyを起動する
- 「オプション」からグラフィックスや解像度など,オプション設定を行う
- 「ロード」から「6 ライフサポート」を選択
- シーンが始まり,操作可能になったらFrapsによる計測スタート
- 操作しながら60秒経過させる
- 計測が終了したら[Esc]キーを押してプレイを中断する
- 4.〜7.を再度実行
- 「オプション」から解像度を変え,4.以降を繰り返す
ちなみにCPUは,ここ数世代のクアッドコアモデルであれば,性能面で特段のデメリットは感じない。2コアモデルでも平均フレームレートに目立った違いは出ないが,最小フレームレートは落ち込む傾向にある。
■Overwatch
Overwatchが採用するゲームエンジンはBlizzardが独自に開発したもので,WindowsとPlayStation 4両対応。グラフィックスAPIとしてはDirectX 11に対応している。また,FPSプレイヤーが選ぶゲーマー向けディスプレイ市場で主流となりつつある,垂直リフレッシュレート120Hzあるいは144Hz以上に対応した製品との相性がよいのも大きな特徴となっている。
高いリフレッシュレートだとVsync有効時にも入力遅延が下がるというのはよく知られているが,Overwatchの場合はむしろそれ以上に「相手の動きが見やすくなる」というのがポイント。身体の向きや肩の挙動などから次の動きを予測しやすくなるため,Overwatchは,より高速なディスプレイと組み合わせたほうがいいのだ。
基本的には描画負荷の低いタイトルだけに,高いフレームレートを狙いやすいが,そんなOverwatchにおけるゲーム側のグラフィックス設定は以下のとおりとなる。項目数は多いものの,テストにあたって行っているのは,画面やフレームレートの設定を除くと,「オプション」の「グラフィック品質」から,あらかじめ用意されたプリセットを選択するだけである。
●ゲーム設定
- バージョン:最新版(Blizzard Appによる自動アップデート)
- セーブデータ:不要
・ゲーム設定:オプション−ビデオ
- ディスプレイ・モード:全画面
- 対象画面:モニター1
- 解像度:テストによる
- 視野角:103
- アスペクト比:16:9
- 垂直同期:OFF
- トリプル・バッファリング:OFF
- バッファリング軽減:OFF
- パフォーマンス統計を表示:OFF
- システムクロックを表示:OFF
- フレームレート上限を設定:カスタム
- フレームレート上限:300
- グラフィック品質:ウルトラ/NORMAL
- ガンマ補正:任意
- コントラスト:任意
- 明るさ:任意
・ゲーム設定:オプション−ビデオ−高度パフォーマンススタッツ
- フレームレートを表示:任意
- GPU温度を表示:任意
- VRAM使用量を表示:任意
- ネットワークPINGを表示:任意
- ラウンドトリップタイムを表示:OFF
- ネットワークディレイを表示:OFF
・ゲーム設定:オプション−ビデオ−詳細設定
- レンダー・スケール:プリセットによる
- テクスチャ品質:プリセットによる
- テクスチャ・フィルタリング品質:プリセットによる
- ローカル・フォグ表現:プリセットによる
- ダイナミック・リフレクション:プリセットによる
- シャドウ表現:プリセットによる
- モデル表現:プリセットによる
- エフェクト表現:プリセットによる
- ライティング品質:プリセットによる
- アンチエイリアス品質:プリセットによる
- リフラクション品質:プリセットによる
- スクリーンショットの品質:プリセットによる
- ローカル:リフレクション:プリセットによる
- アンビエント・オクルージョン:プリセットによる
・ゲーム設定:オプション−色覚サポートオプション
- 色覚サポートモード:OFF
- 色覚サポートのタイプ:任意
・ゲーム設定:オプション−サウンド
- マスター音量:任意
・SE音量:任意
・BGM音量:任意
・インゲーム・ボイス音量:任意 - ボイスチャット音量:任意
- ボイスチャットのマイク音量:任意
- バックグラウンド・サウンド:ON
- グループ・ボイスチャット:自動参加
- チーム・ボイスチャット:自動参加
- ボイスチャット・モード:プッシュ・トゥ・トーク
- ボイスチャット機器:デフォルトの機器
- ヘッドフォン用DOLBY ATMOS:OFF
Overwatchでは,「エピック」「ウルトラ」「高」「NORMAL」「低」と5つのプリセットが用意されているが,レギュレーション20世代では基本的にウルトラプリセットを利用する。最も描画負荷が大きいエピックを用いないのは,プレイヤーの大半がグラフィックスの品質よりも高いフレームレートを望んでおり,その観点から,グラフィックス品質とフレームレートのバランスでは,ウルトラが最も実用的と判断したためだ。
なお,エントリークラスのグラフィックスカードやCPUに内蔵されたグラフィックス機能をテストする場合には,ウルトラよりも描画負荷が2段階低くなるNORMALを使用する。
グラフィックス設定で注意しなければいけないのは,「フレームレート上限を設定」を「カスタム」に変更し,「フレームレート上限」を最大値の「300」に指定する必要がある点だ。初期状態では「フレームレート上限を設定」が「ディスプレイ依存」に設定され,Vsyncが有効になるため,テストにあたっては,スライドバーを最大まで動かして,Vsyncを明示的に無効化する必要がある。
「実際に操作する」という不確定要素があるため,テストの1条件あたり2回連続してプレイを行い,その平均をスコアをとして採用することになる。詳細な実行手順は以下のとおりである。
●実行手順
- Frapsからベンチマーク計測時間を60秒に設定
- Overwatchを起動する
- 「オプション」の「ビデオ」からグラフィックスや解像度などのゲームのオプション設定を行う
- 「トレーニング」から「練習場」を選択
- ヒーローに「D.Va」を選ぶ
- シーンが始まり,操作可能になったらFrapsによる計測スタート
- BOTを倒しながら一定の経路を移動し,60秒経過させる
- [Esc]キーを押してプレイを中断
- 3.以降を,設定変更しながら繰り返す
ただ,せっかくの高リフレッシュレート対応ゲーム。ハイスペックなGPUを搭載する環境では,最小で120〜144fps程度をを期待できる平均165fps以上を目指したいところだ。
なお,CPU性能は,2コア4スレッドタイプのCPUであれば十分。2コア2スレッドタイプのCPUの場合は,ざっくり1割程度パフォーマンスが低下することを覚悟しておきたい。
■PLAYERUNKNOWN'S BATTLEGROUNDS
デュアルGPUソリューションは,NVIDIAが「GeForce 382.53 Driver」でSLIに対応した一方,2017年7月時点でAMDは未サポートとなっているので,この点は注意が必要だろう。
テストにあたってのグラフィックス設定は以下のとおり。PUBGにおけるグラフィックス設定オプションへは,メイン画面右上に見える歯車アイコンをクリックすることでアクセスできる。
ここで注意する必要があるのは,「PUBGにはVsyncに関する設定項目がない」こと。なのでテストにあたっては,「NVIDIAコントロールパネル」や「Radeon Settings」などから,Vsyncを明示的に無効化しておく必要がある。NVIDIAコントロールパネルなら「3D設定の管理」の「垂直同期」,Radeon Settingsなら「プロファイルグラフィック」の「垂直リフレッシュを待機」から,それぞれ無効化可能だ。
●ゲーム設定
- バージョン:最新版(Steamによる自動アップデート)
- セーブデータ:不要
・ゲーム設定:グラフィック−言語
- 言語設定:日本語
・ゲーム設定:グラフィック−画面
- 画面モード:フルスクリーン
- 解像度:テストによる
・ゲーム設定:グラフィック−色
- 輝度:任意
・ゲーム設定:グラフィック−クオリティー
- クオリティー:高/低
- 画面スケール:100
- アンチエイリアシング:プリセットによる
- ポストプロセス:プリセットによる
- 影:プリセットによる
- テクスチャ:プリセットによる
- 効果:プリセットによる
- 植生:プリセットによる
- 距離を表示:プリセットによる
- モーションブラー:プリセットによる
・ゲーム設定:サウンド
- サウンド
・マスター:任意(ボリュームも任意)
・効果音:任意(ボリュームも任意)
・UI:任意(ボリュームも任意)
・BGM:任意(ボリュームも任意) - 音声
・音声:任意
・音声チャネル:任意
「クオリティー」以下にある5つのグラフィックス設定プリセット「ウルトラ」「高」「中間」「低」「非常に低」から選ぶだけである。
事前に検証した限り,PUBGの描画負荷は相応に大きい。またユーザーのほとんどが描画品質よりもフレームレートの高さを重視する傾向にあることから,レギュレーション20世代では高プリセットをメインにテストを行っていく。もっとも,エントリークラスのグラフィックスカードや,統合型グラフィックス機能をテストする場合には,必要に応じて低プリセットも利用し,その場合は記事内で断ることになるだろう。
高プリセット選択時の自動設定内容 | |
低プリセット選択時の自動設定内容 |
実際に操作を行う都合上,グラフィックス設定条件あたり2回テストを行って,その平均をスコアとして採用する。テストにあたっては,テスト開始ポイントへ毎回移動する必要がある点は注意してほしい。
以上を踏まえた実行手順は以下のとおりだ。
●実行手順
- Frapsからベンチマーク計測時間を60秒に設定
- PUBGを起動する
- グラフィックスや解像度などゲームのオプション設定を行う
- [PLAY]をクリックし,ゲームを始める
- マッチングが終了してゲームが始まったら,ソスノフカ島に最も近い場所で輸送機から飛び降りる
- ソスノフカ島南部の,テスト開始ポイントまで移動
- Frapsによる計測をスタート
- 60秒間,プレイヤーキャラクターを真っすぐ東に移動させる
- 6.〜8.を再度実行
- [Esc]キーを押して「設定」を選び,解像度を変更しながら,6.〜9.を繰り返す
一方,ハイクラスのグラフィックスカードなら最小120fps以上……と言いたいところだが,前述したようにPUBGは描画負荷がかなり高いため,あまり現実的ではない。そのため現時点では,比較的高いフレームレートが稼げる目安として,最小フレームレート80fps以上,平均フレームレートでは100fps以上を合格ラインとしておきたい。
ちなみにCPUは,今日(こんにち)的な動作クロックのクアッドコアモデルであれば,その性能が全体の足を引っ張ることはないと考えていい。デュアルコアCPUの場合,2コア4スレッド対応モデルならスコアの低下は見られない一方,2コア2スレッド対応モデルだとベンチマークスコアは最大で約1割弱低下する。
■Tom Clancy’s Ghost Recon Wildlands
ゲームエンジンは,UbisoftグループのUbisoft Montrealが開発した「AnvilNext 2.0」。DirectX 11への対応と,PC以外にPlayStation 4などへ向けたマルチプラットフォーム対応を果たしたエンジンだ。前世代の「AnvilNext」エンジンで初採用となったグローバルイルミネーションやリフレクションマッピングといった主だった機能を継承しつつ,今日(こんにち)的な仕様を獲得したものという理解でいいだろう。
そんなWildlandsのテストにおけるグラフィックス設定は以下のとおり。項目数は多いものの,「設定−グラフィック」の「プリセット」から一括で変更が可能で,レギュレーション20世代でもこのプリセットを用いることになる。
●ゲーム設定
- バージョン:最新版(Uplayによる自動アップデート)
- セーブデータ:不要
・設定:映像
- ディスプレイ:任意
- 表示モード:フルスクリーン
- 解像度:テストによる
- レンダリング解像度:1.00
- V-SYNC:オフ
- リフレッシュレート:60Hz
- フレームレート制限:オフ
- 視野範囲の拡大:0%
- 明るさ:任意
- コントラスト:任意
- ガンマ:任意
- 鮮明化:30%
・設定:グラフィック
- プリセット:ウルトラ/中
- アンチエイリアス:プリセットによる
- アンビエントオクルージョン:プリセットによる
- 描画距離:プリセットによる
- 精細度:プリセットによる
- テクスチャの品質:プリセットによる
- 異方性フィルタリング:プリセットによる
- 影の品質:プリセットによる
- 地形の品質:プリセットによる
- 草木の品質:プリセットによる
- ターフエフェクト:プリセットによる
- モーションブラー:プリセットによる
- 被写界深度(サイト):プリセットによる
- 高品質被写界深度:プリセットによる
- ブルーム:プリセットによる
- ゴッドレイ:プリセットによる
- サブサーフェイス・スキャタリング:プリセットによる
- レンズフレア:プリセットによる
- ロングレンジシャドウ:プリセットによる
・設定:オーディオ
- 主音量:任意
- BGM音量:任意
- 効果音音量:任意
- 音声音量:任意
- バックグラウンドサウンド:任意
- 出力タイプ:任意
- マイク音量:任意
- チーム音量:任意
- オープンマイク感度モード:任意
- オープンマイク:任意
- ボイスチャットモード:任意
- ラジオ:任意
選択できるプリセットは「ウルトラ」「非常に高い」「高」「中」「低」の5つだが,レギュレーション20世代では,描画設定が高い「ウルトラ」をメインで利用する。ただし,エントリークラスのGPU以下を対象とする場合には,それより3段低い「中」を使うこともあるので,この点は注意してほしい。
ベンチマークモードのデモシークエンスは,フライバイ(flyby)で村の中から崖上の建物へと向かい,それを見下ろすまでのシーンを描くものだ。テスト中は画面の右下で,そのときどきのフレームレートやCPUとGPUの使用率,それにシステムメモリとグラフィックスメモリの使用量,GPUの温度を表示し,最後に最小,平均,最大それぞれのフレームレートを示すというものになっている。事前検証した限り,フレームレートのばらつきはそれほど大きくないが,それでも誤差程度には生じるため,ベンチマークレギュレーションでは,平均フレームレートの2回の平均をスコアとして採用することとした次第だ。
というわけで,実行手順は以下のとおりとなる。
●実行手順
- Wildlandsを起動
- 「設定」の「映像」にある「V-SYNC」を「オフ」に設定
- 「解像度」を設定
- キーボードの[F]キーを押して変更を適用する
- 「設定」の「グラフィック」にある「プリセット」を設定
- [F]キーを押して変更を適用する
- [B]キーを押してベンチマークを実行
- ベンチマーク終了後に表示される「平均FPS」と「最低FPS」を記録する
- 7.〜8.を再実行。2回実行し,その平均をスコアとして採用する
- 3.以降を解像度などを変更しながら繰り返す
なお,Wildlandsは2コア4スレッド対応のCPUで十分な性能を発揮でき,それ以上は物理コア数や対応スレッド数を上げてもベンチマークスコアはほとんど向上しない。一方,2コア2スレッド対応のCPUだと,性能はざっくり3割程度落ちることを確認できた。
■ファイナルファンタジーXIV: 紅蓮のリベレーター
ちなみにFFXIV紅蓮のリベレーター ベンチでは,水面の反射がキャラクターなどに映り込むエフェクトである「照り返しの表現」が設定項目として加わった。また,対応OSは64bit版Windows 10・8.1・7のみ,グラフィックスAPIもDirectX 11のみといった具合に,従来から変更が入っている。
そんなFFXIV紅蓮のリベレーター ベンチを使ってテストをするにあたってのグラフィックス設定は以下のとおりとなる。
●ゲーム設定
・グラフィック設定:グラフィック設定1- グラフィック設定プリセット:最高品質/標準品質(デスクトップPC)/標準品質(ノートPC)
- 描画設定−水濡れ表現を有効にする:プリセットによる
- 描画設定−オクルージョンカリングを有効にする(見えないものの描画を簡略化する):プリセットによる
- 描画設定−LODを有効にする:プリセットによる
・グラフィック設定2
- 描画設定−リアルタイムリフレクション:プリセットによる
- 描画設定−アンチエイリアス:プリセットによる
- 描画設定−ライティングの品質:プリセットによる
- 描画設定−細かい草の表示量:プリセットによる
・グラフィック設定3
- 描画設定−背景の細かい凹凸表現:プリセットによる
- 描画設定−水面の凹凸表現:プリセットによる
- 描画設定−照り返しの表現:プリセットによる
- 影の表示設定−自分:プリセットによる
- 影の表示設定−他人:プリセットによる
- 影の表現−キャラクターの影のLODを有効にする:プリセットによる
- 影の表現−影の解像度:プリセットによる
- 影の表現−影の表示距離:プリセットによる
- 影の表現−ソフトシャドウ:プリセットによる
・グラフィック設定4
- テクスチャ品質−テクスチャフィルタ:プリセットによる
- テクスチャ品質−テクスチャ異方性フィルタ:プリセットによる
- 揺れの表現−自分:プリセットによる
- 揺れの表現−他人:プリセットによる
・グラフィック設定4
- 画面効果−周辺減光を有効にする(画面の隅を自然に暗くする効果):プリセットによる
- 画面効果−放射ブラーを有効にする(爆発などで周囲に向かって画面をぼかす効果):プリセットによる
- 画面効果−SSAO(立体感を強調する効果):プリセットによる
- 画面効果−グレア(光があふれる表現):プリセットによる
- カットシーン効果−被写界深度表現を有効にする:プリセットによる
・ディスプレイ設定
- 画面設定−メインディスプレイ選択:テストによる
- 画面設定−スクリーンモード設定:フルスクリーンモード
- 解像度設定−画面解像度プリセット:テストによる
- ガンマ補正:任意
・サウンド設定
- サウンド全般設定−アプリケーションが非アクティブでもサウンドを再生する:任意
- 音量調整−マスターボリューム:任意
- 音量調整−BGM:任意
- 音量調整−効果音:任意
- 音量調整−ボイス:任意
- 音量調整−システム音:任意
- 音量調整−環境音:任意
従来同様,FFXIV紅蓮のリベレーター ベンチも,「グラフィック設定プリセット」でプリセットを選択すれば,各設定項目はそれに合わせて変更される。プリセット以外は,「ディスプレイ設定」以下を確認する程度という理解でいい。
選択するプリセットは基本的に,最も高い画質を期待できる「最高品質」だ。だが,CPU統合型のグラフィックス機能やノートPCのテストでは,デスクトップPCとノートPCで仔細が若干異なる「標準品質」を選択する場合もあるだろう。その場合はどのプリセットを選択したか本文で明記することになる。
残念ながら最小フレームレートは確認できないため,それだけはFrapsから取得する格好だ。
それらを踏まえたテスト方法は以下のとおりとなる。
●実行手順
- ベンチマークソフトを起動する
- 「設定変更」を選択し,設定変更画面へと移行する
- 「グラフィック設定1」タブのグラフィック設定プリセットを適宜選択する
- 「ディスプレイ設定」タブの「画面解像度プリセット」から解像度を選択
- [OK]ボタンをクリックし,メニューへと戻る
- [スタート]ボタンをクリックし,ベンチマークテストを実行
- ベンチマークの実行と同時にFrapsによる計測をスタート
- リザルト画面でFrapsによる計測を停止する
- テスト終了後に表示されるスコアを記録する
- 「レポート出力」をクリックし,平均フレームレートを記録する
- Frapsの出力ファイルから最小フレームレートを記録する
- 2.以降を,グラフィック設定プリセットと解像度を変更しながら繰り返す
スコアの見方だが,スクウェア・エニックスは以下のような指標を示している。
- 7000以上:非常に快適
- 5000〜6999:とても快適
- 3500〜4999:快適
- 2500〜3499:やや快適
- 2000〜2499:普通
- 1500〜1999:設定変更を推奨
- 1000〜1499:設定変更が必要
- 999以下:動作困難
それを踏まえたひとまずの合格点は,スクウェア・エニックスの指標どおりのスコア7000とするが,ハイエンド環境では平均60fps以上を狙えるスコア8500以上を目標にしたいところである。
組み合わせるCPUのほうだと,4コア8スレッド対応モデルまでは,対応できるスレッド数に応じてスコアが伸びていく。逆に2コア2スレッドでは4コア8スレッドに対してスコアは3割ほど低下する。「8スレッドまでなら,スレッド数がスコアを左右する」点はFFXIV紅蓮のリベレーター ベンチの特徴と言っていいだろう。
■Forza Horizon 3
本作が採用するゲームエンジンは,Forzaシリーズ専用となる「ForzaTech」の最新バージョン。この最新版ForzaTechでは,グラフィックスAPIとしてDirectX 12のみをサポートすることで,従来よりも表現力が向上したというのがウリとなっている。
そんなForza Horizon 3におけるグラフィックス設定は以下のとおりとなる。「設定−ビデオ−基本設定」以下にある「ダイナミックオプティマイゼーション」が「ON」のままだと,自動的にグラフィックス設定が変更されてしまうのでここを「OFF」に変更する必要があるのと,「フレームレートスムージング」を有効化するとGPUごとの違いが小さくなる傾向が見られるため,やはり「OFF」にする必要があるのと,可変フレームレートを有効化するため「フレームレート」を「アンロック済み(VARIABLE)」にする必要があるのは,レギュレーション19世代と変わらずだ。
●ゲーム設定
- バージョン:最新版(PC版Xbox Liveによる自動アップデート)
- セーブデータ:不要
・ゲーム設定:設定−ビデオ−基本設定
- フルスクリーン:ON
- フレームレート:アンロック済み(VARIABLE)
- V-Synch(垂直同期):OFF
- モーションブラー:ON
- 解像度:テストによる
- 字幕:ON
- FPS表示:OFF
- フレームレートスムージング:OFF
- UIスケール:100
- ダイナミックオプティマイゼーション:OFF
・ゲーム設定:設定−ビデオ−詳細設定
- プリセット:ウルトラ / ミディアム
- 異方性フィルタリング:プリセットによる
- シャドウクオリティ:プリセットによる
- モーションブラークオリティ:プリセットによる
- 環境テクスチャクオリティ:プリセットによる
- スタティックジオメトリークオリティ:プリセットによる
- ダイナミックジオメトリークオリティ:プリセットによる
- MSAA:プリセットによる
- FXAA:プリセットによる
- リフレクションクオリティ:プリセットによる
- フロントガラスリフレクションクオリティ:プリセットによる
- ミラークオリティ:プリセットによる
- ワールドカーの詳細度:プリセットによる
- デフォーマブルスノークオリティー:プリセットによる
・ゲーム設定:設定−オーディオ
- プリセット:初期設定
- 主音量:任意
- ラジオ音量:任意
- SFX音量:任意
- 音声音量:任意
- クルマ音量:任意
- タイヤ音量:任意
- GPS音声:ON
- ラジオDJ:ON
- クラクション:ON
- マイク:ON
さて,そんなForza Horizon 3では,ベンチマークモードが用意されていないため,実際のゲームシーンをテストに利用することになる。チョイスしたシーンは,「SURFERS PARADISEフェスティバルサイト」近く,海岸沿いを走る一直線の道路だ。この道路の両端には速度のランキングを行う「スピードゾーン」が2か所あり,片方のスピードゾーンに進入したところで計測を開始すると,もう片方のスピードゾーンに差し掛かったあたりでちょうど1分となるから,ここを使おうというわけである。
ほぼ一直線なので,基本的にアクセル操作だけで済むが,とはいえ他車の動きは毎回異なる。そこで今回は,事前に,スピードゾーンの行き帰りでフレームレートに大きな違いが生じないのを確認のうえ,往復それぞれでOCATからフレームレートを計測し,両者の平均値をスコアとして採用することにした。
1つ注意が必要なのは,天候が変化し,雨が降るとフレームレートに大きな変化が生じるということだ。そのため,雨が降っている場合はしばらく時間を置き,晴れもしくは曇りになるのを待つ必要がある。
以上を踏まえた実行手順は以下のとおりだ。
●実行手順
- OCATからベンチマーク計測時間を60秒に設定
- Forza Horizon 3を起動する
- オプションからグラフィックスや解像度などのゲームのオプション設定を行う
- SURFERS PARADISEフェスティバルサイト近くのスピードゾーンに移動する
- 南に車を向け走りだすのと同時にOCATによる計測をスタート
- 操作しながら60秒経過させる
- 車を反転し,走り出すのと同時にOCATによる計測をスタート
- 操作しながら60秒経過させる
- [Esc]キーを押してプレイを中断
- 3.以降を,設定変更しながら繰り返す
フレームレートは,快適にプレイする前提に立つと,最小フレームレートは20fps以上ほしいところで,平均フレームレートでは40fpsが合格ラインということになる。
最小フレームレートで40fpsくらいを確保できると,カク付き感は減るため,この「最小40fps」を実現できる平均60fpsが,ハイクラス以上のGPUにおける合格ラインということになるだろう。
なお,2017年7月末の時点で,Forza Horizon 3はSLIおよびCrossFireをサポートしていない。
ちなみに,CPUは物理コア数が4以上であれば,スコアに大きな違いは出ない。2コア4スレッドのCPUだと若干スコアは落ち気味になるものの,それほど致命的な違いにはならない印象である。
■コラム:OCATおよびFrapsの使い方
4Gamerでは長らく,ベンチマークモードを持たないゲームタイトルのテストにあたって,「Fraps」によるフレームレート計測を行ってきた。だが,DirectX 12(Direct3D 12)やVulkanといった,新世代のグラフィックスAPIを採用するタイトルに対しては,Frapsを利用することができない。
そこで4Gamerでは,Frapsに代わり,オープンソースのGPU対応アプリケーション開発支援フレームワークとしてAMDが提唱する「GPUOpen」から登場した「OCAT」(Open Capture Analystics Tool)を用いる。こちらはDirectX 12やVulkanのベンチマークに特化したツールだからだ。
OCATのメインウインドウ
OCATの入手法およびインストール方法は2016年12月12日の記事を参照してほしいと思うが,フレームレート計測前にOCATを起動して,「Recording Time Period in Seconds」に計測時間を秒単位で入力する。デフォルトは60なので,1分間の測定であれば変更する必要はない。
また,デフォルトのままで大丈夫だが,「Write performance summary」にチェックが入っていないと,平均フレームレートがログファイルに記録されないので,チェックが入っているかどうかは確かめておいたほうがいいだろう。
フレームレート計測を実行するには,まずOCAT上で右下の[Start]をクリック。その状態で計測対象のゲームを起動する。すると,ゲーム画面の右上にフレームレートとフレーム時間がリアルタイムで表示されるようになる。中には表示されないゲームもあるのだが,その場合でもOCATは動作しているので計測には問題はない。
あとは適切なタイミングで[F11]キーを押せば,フレームレートの計測が始まるという流れだ。
なお,この計測開始のホットキーはOCATメニューの「Recording Hotkey」から変更できる。
さて,設定した時間が経過すると計測が終了し,画面右上に計測結果――「平均フレームレート」「平均フレームタイム」「フレームタイムの99%パーセンタイル値」の3つ――が表示される。ただ,フレームタイムのリアルタイム表示が行われないゲームでは計測結果も表示されないので,「C:\ユーザー\(ユーザー名)\ドキュメント\OCAT\Recordings」に書き出されるcsv形式の概要データファイルを参照する必要がある。
こちらはFrapsのメインウインドウ
テストを繰り返すと,概要データファイルに結果が次々と書き足されていくので,結果が上書きされるようなことはない。
一方,DirectX 11やDirectX 9といったゲームでは,これまでと同様にFrapsを用いてフレームレートの計測を行う。
Frapsは,DirectX/OpenGLで動作するアプリケーション向けのキャプチャソフトだ。フルバージョンは29.95ドルするシェアウェアで,4Gamerではボリュームライセンスを取得して利用しているが,開発元であるbeepaのWebサイトからダウンロードできる無料の体験版でも,フレームレートの計測は行える(※キャプチャ周りには制限が入る)。
インストールしたら,フレームレートの計測前にFrapsを起動。メインウィンドウが起動するので,「FPS」タブを選び,「Stop Benchmark automatically after」直後にある入力ボックスに,秒単位で数値を入力する。例えばレギュレーション6.0準拠でCall of Duty 4のベンチマークテストを行うなら,「60」と入力すればいい。
続いて「MinMaxAvg」にチェックを入れ,最少/最大/平均フレームレートがログに書き出されるようにしておく。
フレームレート計測を実行するには,まず,Frapsを最小化して,その状態で計測対象のゲームを起動する。すると,画面の隅に黄色の数値が表示されるはずだが,それがリアルタイムで計測されるフレームレートだ。あとはリプレイを再生し,適切なタイミングでフレームレート計測開始のホットキー(標準では[F11]だが,FPSタブの「Benchmarking Hotkey」で変更可能)を実行すればいい。
ベンチマーク計測中はリアルタイムのフレームレート表示が消え,設定した時間が経過すると計測が終了して,再びフレームレートが表示されるようになる。なお,ログファイルはFrapsをインストールしたフォルダ以下,「\benchmarks」の中に保存されるようになっており,上書きされることはない。
CPU性能検証
CPU性能検証方法は,レギュレーション21世代以降で確定させる予定だ。それまでの間,テスト方法は記事ごとに言及,解説することになる。
GPU&CPU消費電力検証
レギュレーション19世代までの4Gamerは,ログの取得可能なワットチェッカー「Watts up? PRO」を使ってシステム全体の消費電力を記録し,各アプリケーションベンチマーク実行時の最大値をスコアとして採用してきた。システム全体の消費電力は,テスト対象のGPUやCPUを搭載したPCそのものにおける消費電力の目安を知ることができるという意味で価値あるデータと言えるため,PC製品の消費電力計測には今後もWatts up? PROを使い続けたいと考えている。
ただ,言うまでもないことだが,Watts up? PROで計測した消費電力値は,グラフィックスカード単体,あるいはCPU単体の消費電力値ではない。記事でテスト対象となる「主役」がGPUやグラフィックスカード(以下,便宜的にGPUと表記),あるいはCPUである場合,Watts up? PROを用いても,それらの消費電力は間接的にしか窺うことができないのが難点だ。
そこで4Gamerでは,可能な限りGPUもしくはCPUそのものに近いスコアを取ろうと,いろいろ試行錯誤を重ねてきた。以下,その結果としての電力計測方法をお伝えしたい。
■GPU消費電力計測
4Gamer読者には説明するまでもないだろうが,ミドルクラス市場もしくはそれより上の市場をターゲットとするグラフィックスカードは,PCI Express(以下,PCIe)補助電源により電力を賄(まかな)っている。
ただし,PCIeカードスロット経由でもPCIe Gen.3のx16カードの場合,最大75.9Wの電力供給を受けられる仕様なので,そちらを無視するわけにはいかない。またそもそも,エントリークラス以下のグラフィックスカードだとPCIe補助電源コネクタを持たないことのほうが多かったりもする。
そこで4Gamerで用意したのが,オリジナルの計測ツール「4Gamer GPU Power Checker」である。
その制作方法はレギュレーション20.0で詳しく紹介しているが,簡単にまとめておくと,PCIeリンクの+3.3Vと+12V,そしてPCIe拡張電源の+12Vそれぞれの電源ラインにストロベリーリナックスが販売している電流計測モジュールINA226isoシリーズを入れて,各電源の電流および電圧を測定し,そのデータからGPUの生の総合消費電力を調べるというものだ。
INA226isoシリーズのデータ記録用には「Raspberry Pi」(model B+)を用意し,ボタン1つで計測開始・終了を行えるファームウェアを作成して組み合わせた。そのうえで,「INA226isoシリーズとRaspberry Pi model B+を1つのボックスに収めたシステム」を以下のとおり作成している。
そして,最終的にThermaltake製のオープンフレーム型PCケース「Core P3」と組み合わせてできあがったのが,「4Gamer GPU Power Checker Version 1」(以下,4GPCバージョン1)である。その下に示したのは,結線の概略なので,興味のある人は合わせてチェックしてほしい。
1つは,「グラフィックスカードの動作が不安定になる」というもので,一部のグラフィックスカードを使ったとき,GPUに負荷がかかるとOSごと落ちてしまうという症状が出てきた。
もう1つは,改造のしやすさを優先してPCIe延長ケーブルに安価なものを使った結果として,コネクタとケーブルの接合部が脆弱で,抜き差しを繰り返すとあっけなく断線してしまうというものだ。
TT 300mmは高密度ケーブルを使っているため,安価な製品のように「ケーブルの途中を切って引き出す」ことは不可能に近い。改造できる唯一の場所は,PCIeコネクタメス側の端子がむき出しになっている部分だけだ。PCIeコネクタメスの電源部分の端子のみ基板から引き剥がして浮かせ,そこに4Gamer GPU Power Checker本体からの12Vと3.3Vを接続する流れである。
もう1つ,PCIeリンクの電源供給もGPUの動作不安定の原因になりうるので,対策する必要がある。というのも,4Gamer GPU Power Checker側から+3.3Vと+12Vを供給する都合上,ケーブルの引き回しが長くなってしまうからだ。
つまり線路のインダクタンス(≒コイルの成分)がかなり大きいということだが,その場合,激しい電流の変動が生じたとき,安定した電圧の供給を行えない可能性が出て来る。そこで,今回から+3.3V側に4.7μF,+12V側に47μFを入れインダクタンス分の補償を計ることにした。
4GPCバージョン1.1と1.0の違いはPCIe延長ケーブルのみだ。
■CPU消費電力計測方法
CPUの消費電力そのものに近い値としては,電源ユニットから(マザーボードを経て)CPUへ供給されるEPS12Vの電流値を計測することにした。EPS12VはCPU専用の電源供給インタフェースである。
マザーボードによっては,EPS12Vが2系統あったりするが,もちろん,その場合はすべてのEPS12Vの+12Vラインをクランプして測定することになる。
PC20 |
KB-USB20 |
また,PC20は別売りオプションのUSB接続アダプター「KB-USB20」を取り付けてPCに接続することにより,PC側で測定値を確認したり,測定値のログを取ったりできるようになる。EPS12Vの電流測定にあたっては,時間変化を記録する必要があるため,今回はCL33DCにKB-USB20を組み合わせることとしている。
なお,PC20から送られてくる測定値を記録するPC用ソフトウェアには三和製の純正品もあるのだが,4Gamerではこの分野で実績を持つフリーソフトウェア「TsDMMViewer」を使うことにした。
TsDMMViewerは,PCに接続できるテスターのデータロガーとして古くから使われており,PC20以外にもさまざまなテスターに対応しているため,将来,仮に機材を変えても利用し続けられるであろうと判断した次第だ。
どのようなデータが取れるのか,「EPS12VをクランプしたCL33DCの出力」をPC20で測定し,TsDMMViewerから見た例を掲載しておこう。
下のグラフは,「CINEBENCH R15.038」を実行したときに測定できた電流値に12を掛けてワット換算したもので,ピーク時の電流量は6.83Aだったため,ピーク消費電力は81.96Wということになる。
1つ注意すべき点としては,「測定誤差はデジタルマルチメーターの確度とクランプ式電流センサーの精度に依存する」というのが挙げられよう。
大まかな計算では,仮に6Aの電流が測定されたとき±0.32A程度だ。「ワット換算で±4W弱程度の測定誤差はある」ことを織り込んだうえで,レギュレーション20世代以降の測定値やグラフは見てもらえればと思う。
以上のような方法でEPS12Vの電流を測定するわけだが,電流値では直感的に分かりにくいだろうということで,スコアとしては「測定された電流値に12を掛けてワット換算したもの」を採用することにした。
ベンチマーク実行時に記録した最大の電流値に12をかけた値を,そのベンチマークタイトルにおける「CPUの最大消費電力」とし,30分間放置した後の最小電流値に12を掛けた値を「CPUのアイドル時における消費電力」として採用するわけだ。また,必要に応じて,ログを基に消費電力推移のグラフを掲載することもある。
なお,EPS12Vの消費電力はおおよそCPU単体の消費電力に相当するが,マザーボードが搭載する電源部の変換効率による影響を受けるため,「100%完全なCPUそのものの消費電力」ではない。あくまでも「CPU単体の消費電力の目安となるスコア」である。
掲載してあるテスト方法は誤りを含んでいる場合があり,予告なく修正されることがあります。また,リプレイデータを公開する場合,それは,4Gamerの読者が実際にベンチマークテストを行うに当たっての利便性を図るためだけに提供されるものですが,出典を明示し,かつ4Gamerへのリンクを明示的に張る場合に限り,商用/非商用媒体で利用できるものとします。
なお,本稿で紹介しているテスト方法やテスト機材を利用した結果,OSあるいはPC本体,その周辺機器などといったハードウェアに不具合が生じても,筆者および4Gamer編集部,Aetas株式会社は一切その責任を負いません。
- 関連タイトル:
ベンチマーク
- この記事のURL: