(1/3)AMDの新API「Mantle」でどれだけ性能が上がるのか。Next)世代のGPUで利用できる新API「Mantle」。4のパッチがリリースされ、ようやくこれを試せるようになった。R9ビデオカードで検証してみた。4(場合によってはアップデートが必要)と、GCN世代のRadeon搭載グラフィックスカード、対応するドライバという3点が必須だ。V1.3」がリリースされた。4におけるマルチGPUのサポートといったあたりで、そのほかMantleに関してFixがされたかどうかは不明。270Xが挙げられていた)は将来のドライババージョンで最適化される予定という一文があった。V1.3で対応したのか、少なくとも現時点では文言が見つからない。このように、まだいくつか条件があるようだ。条件外ではどういった挙動をするのか、という点にも興味がある。290X/280X/270Xの3枚を用意した。FRAPSは使えない。11とMantleとを切り替え可能になる。4のビデオのオプションにAPIを選ぶ項目が表示されるようになる。逆に、これが表示されない場合は、どちらかが欠けているということになる。Mantleが使用可能になったわけだが、フレームレートを計測してその効果を比較しようとなると、もう1つ問題が出てくる。それはFRAPSを利用できないことだ。FRAPSは、DirectXゲームにおいて、フレームレートを計算する機能を備えたユーティリティ。DirectX用であるため、APIをMantleに切り替えると、FRAPSの機能すべてが利用できなくなる。4側に備わったコンソールコマンドを用いて計測することになる。コンソールコマンドの呼び出し方だが、日本語キーボードの場合は「半角/全角」キー、英語キーボードの場合は「〜」キーを使う。日本語キーボードの場合は注意が必要だ。日本語入力モードのまま「半角/全角」キーを押すと、日本語入力に切り替わり、しかもコンソールを閉じられなくなるなどかなりやっかいなことになる。4ユーザーにはお馴染みの回避方法だが、まずコントロールパネルの「地域」から「管理」→「システムロケールの変更」を開き、「現在のシステムロケール」で「英語」を選択し、OKボタンを押す。次に(これは必要な方だけでよいと思われるが)「言語」を開き、先の作業で追加された「English」キーボードの設定を「日本語」キーボードの上に移動させる。すると、タスクバーの入力モード欄が「ENG」、つまり英語用に切り替わる。これで「半角/全角」キーを押す度にコンソールがオン/オフと、正しく切り替わるようになる。コントロールパネルからシステムロケールに「英語」を指定(画面=左)。言語の設定でも「English」を優先しておくと便利。すると、初期時は英語入力になり、Windowsキー+スペースキーで日本語と切り替えられる状態になる(画面=右)フレームレート計測時に用いるコンソールコマンドは「PerfOverlay.FrameFileLogEnable」だ。入力途中に「Tab」キーを押せば自動補完してくれるので、スペルミス防止に活用しよう。このコマンドの後ろに半角スペースを挟み「1」でログ取得開始、「0」でログ取得終了になる。ログファイルは、カンマ区切りのCSVファイル。4」フォルダ内に、FrameTimeLog001.csv......FrameTimeLog002.csvといった具合でログファイルが生成される。ログファイルは、1フレームの描画に要した時間をミリ秒単位で記録している。これで平均フレームレートを算出するならば、1フレームの描画に要した時間で平均を出し、それを1000ミリ秒から割って求めればよい。開始も終了も手動なので、計測時間にも誤差が出る。誤差を最小に留めるならば、1分間(60000ミリ秒)までをカウントし、そこまでのデータで切り捨てしたうえで平均を出すのがよいだろう。非常に手間がかかるので、今回は計測回数を増やす方向で誤差を抑えることにした。計測には、キャンペーンのシナリオ6「TASHGAR」の冒頭シーンを用いた。最初、空母のムービーが流れるが、この後、ジープで疾走する自動で進行するシーンが出てくる。画面の切り替わりと同時に計測を開始し、およそ1分10秒後に戦闘車両をやり過ごすために停車するシーンで計測終了とすることで、計測時間のバラつきを抑えた。11版もコンソールコマンドから計測している。目の前を戦闘車両がゲートを通り過ぎるタイミングで計測を終了した。結局は手動で開始・終了するので、どうしてもバラつきがでる。そこで、3回計測したうえで平均を出すことにした。利用規約ITmediaはアイティメディア株式会社の登録商標です。