goodgames

メニュー


自己まんブログ


特設BF4正式版 推奨環境ベンチマーク









2013 > 10 > 17-01


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

三人寄れば三つ巴


正しくは「三人寄れば文殊の知恵」です。
間違って覚えて受験に失敗しても責任は負いかねます。(笑)

ここのところ赤丸急上昇中の話題がAMDの新Graphics API Mantle

だいぶ前にソレ系のAPIが投入されるとの噂は何かで見たことはありましたが
「どう考えても流行らない」と思いそれきり忘れておりました。

そのAPIに名前に付けられた名前がMantleだと。

マントルは地殻の外殻だったかな?
すみません。地質学は全くのど素人です。

さてこのMantleですが 技術的には正しい と思います。
「思う」と控えめに表現する必要は無いでしょう。
これは正しい。

そしてAMDには十分に実現出来るだけの能力がある。
元々はATIですから。

でも大人の世界で受け入れられるかどうかは全くの別問題

なぜここで取り上げたのかは申し上げるまでも無く
Windows版Battlefield4に投入されることが発表 されたから。

個人的には「やめときな」と思いつつ忘却の彼方に追いやっていた話題でしたが、
9月末に開催されたAMD主催イベント GPU14にて
最新GPUの発表に併せてMantleの詳細仕様が公開されました。
肝心のモノは12月リリースと発表されていますが、今年の12月かどうかは確認していません。(笑)

その中でもわかりやすいのがこのページ(MANTLE IN FROSTBITE)です。

■いつも通りの超意訳(非重要項目は割愛)
1.Radeon GPUにてDirectX11の代わりに利用可能
2.きわめて低いCPU負荷で描画リソースをGPUへ転送可能
3.完璧な並列(マルチスレッド)処理により8CoreCPUの能力を全て利用可能
4.GPUとシステム(CPU/Memory/PCI-E)間のボトルネックを排除
5.GPUが搭載する全ての機能を利用可能
6.特定GPUに特化したチューニング(最適化)が可能

同じサイトのもう一つのページ(MANTLE BENEFITS)からも一番上だけ訳してみます。

7.無駄なCPU負荷を抑えることにより、時間あたりの描画命令発行回数を9倍に高められる

7.の9倍については少々盛り過ぎな感はありますが全体として概ね事実でしょう。

しかし...
この一覧を見れば大人じゃなくても「おや?」と思うはず。

どこかのベータ版で多くの人が困らせれたあの問題が全て解決しそうです。

7.の9倍が3倍であったとしてもそれだけで全て解決。2倍でもほとんどの問題は解決。

なんか変ですね...

もう一つ、変なことを書いたような記憶が。

BF4ベータモジュールに2回目のリビジョンアップが行われた日の記事より引用。

・4Core及び6Core CPU環境に於ける性能向上のため様々な修正を行った
・2Core CPU環境に於いてロード終了後にクラッシュする不具合対策を行った

このChangeLogを見ると強烈な違和感を覚えるのですが、 
消去法で考えると開発機及びテスト機は全て8Coreのマシンなのでしょうか...

上記3.を再度読んで頂く必要は無いでしょう。

問題その1(たぶんMantle入ってます)


同じシステムズ・アーキテクトとしてまず間違いないと申し上げて良いでしょう。
既にBattlefield4クライアントモジュール内にはMantle相当のレイヤーが組み込まれています。

理由は単純。
DirectX版とMantle版の2つを作るのは無駄だから。

「12月リリースと書いてあるけど?」
「このPCにRadeon入ってないけど?」

はい。おっしゃる通りです。
それでも動くのがこの世界の面白いところ。

スタブ/ドライバ方式などと呼ばれる開発進行手順に近いところがありますが、
Battlefield4のクライアントモジュール本体から見るとMantleに見える
「偽Mantle」が恐らく稼働しています。

偽Mantleの中身は単純でそのままDirectXを呼び出しているはずです。

AMDとしては本当は最初からMantleを投入したかったはず。
ところがMantleの開発が遅れたか、EAの意向によりBattlefield4のリリースが早められたか。
理由はともかくBattlefield4のリリース時点ではMantleが完成する見込みが無くなった。

しかし、Battlefield4本体に対したった2ヶ月後に大規模な修正を行うことは回避したい。
何しろBattlefield4本体を開発しているのはAMDではなくEAですから。

しかし、スタブ/ドライバ方式により連携対象の相手側が存在しなくても、
偽物を用意することで片側だけ完成させることが可能。

つまり、この方式によるメリットは
Mantleが正式にリリースされてもBattlefield4本体を修正しなくて済む こと。

本来ならBattlefield4から直接DirectXを呼び出せばよいところを、
余計な中間層を介してアクセスするため当然性能は劣化します。

ここは単なる予想でしかありませんが、
Mantle正式リリース後も偽Mantleは生き続けると思います。

Battlefield4本体からDirectXを直接呼び出す方式と
Mantleを呼び出す方式の両方を実現するとなると
実装作業や試験工数が倍増します。

そのためにもMantleを使えない環境では永久に偽Mantleが活躍すると考えられます。

もちろん設定画面には「Mantleを使う Yes/No」のような選択肢がありそうですが、
Noを選択しても偽Mantle経由でDirectXを呼び出す方式になりそうです。

問題その2(さらにPCゲームは衰退します)


これは誰でも予想できるでしょう。

近未来にNVIDIAも独自APIで反撃に出ると考えて良いでしょう。
Mantleをネイティブサポートしたソフトウェアは性能面で優位に立てることは確実です。

当然NVIDIAとしても指を咥えてみているわけにはいかない。
一部報道でNVIDIAは独自APIの開発を考えていないとの情報がありましたが、
どう考えてもそんなことはない。

もしかすると既に水面下で開発が始まっているかもしれません。
(ちなみにNVAPIは全くの別物です)

何が問題なのか?
デベロッパーにしたら堪ったもんじゃありません。

今まではDirectXだけで良かったところ、
Mantle対応が必要になり、NVIDIAにも対応する必要がある。

描画処理部については工数が単純計算で3倍に跳ね上がります。
もちろん試験工数も3倍。サポートは3倍とはならなくても相応のコスト増が発生します。

では、今まで通りDirectXだけだったらどうか?
他のソフトウェアと比較して性能面で劣ることから様々な面で厳しい状況に陥るでしょう。

DirectX、Mantle、きっと出てくるNVIDIAの何か。
ほら三つ巴。

一見、ユーザから見たらうれしい争いに感じるかもしれませんが、
とんでも無い大間違いです。

{ こんな面倒なPC用ゲームなんか誰が作るか。

と、多くのデベロッパーは思うに違いありません。
何しろ家庭用ゲーム機なら機種が決まればハードウェアは全て同じものです。
もちろんOSなどのソフトウェア層も完全に同じもの。

それとは異なりPCは一台一台仕様が異なるのが良いところでもありますが、
デベロッパーとしてはそれだけでも大変なのにさらに描画用APIが3種類にもなる。

提供者側から見たコストパフォーマンスは圧倒的に家庭用ゲーム機に軍配が上がります。

儲からないものを相手にし続ける企業はいずれ終焉を迎えます。

獲れなかった狸


しかし、AMDの皮算用通りに事は進んでいないようです。

Mantleの仕様を調べるために海外のサイトを色々と眺めていたところ、
目的とは異なりますが3つほど面白い情報を見つけました。

1.XBOX Oneの描画用APIはMantleと非互換
2.Playstation4も同上
3.AMDはBattlefield4のMantle対応のために約8億円をEAに支払った

googleあたりで調べて頂くといくらでもヒットするでしょう。

1.と2.は皆さん御存知の通り、いわゆる次世代家庭用ゲーム機のハードウェアは
MS/SonyどちらもAMDが提供することになったお話。

しかし、そこにAMD謹製API Mantleは搭載されないとのこと。

前述の通り、家庭用ゲーム機は同じ機種ならハードウェアもOSも1種類ですから、
最初から限界までチューニングしたアプリケーションを投入出来ます。
そのためMantleのようなソフトウェア層はそもそも不要です。

もし、家庭用ゲーム機をMantle一色に出来れば、PC用ゲームも一気にMantleへシフトしたでしょう。
その後は多くのPCにRadeonが搭載される皮算用だったと考えられます。

結果的に8億円支払ってBattlefield4(正しくはFrostbite3)にMantleを投入するだけに終わる公算が高いと言えます。

何もしなてくも漁夫の利


3DAPIは三つ巴の様相を呈してきましたが、常識的に考えると勝者は第四極たるOpenGLでしょう。

知られた中では最も古くから存在する3DAPIであり、
現代に大ブレイクするとは誰も予想しなかったでしょうが
いまや圧倒的なシェアを獲得しています。

みなさんの手元にあるiOSやAndroidに搭載され世界中で数十億のデバイス上で稼働しています。

文字通りOpenであるOpenGLが普及しても原則的には誰も儲かりません。
自分だけ利益を独占しようとしても上手くいかないように出来ているのが大人の世界です。

本当に偽Mantleは入っているのか


調べたいところですがEULAの問題がありますので...
EULAに何と書いてあるか調べようと思いましたが
ベータテストが終わって条項が確認出来なくなりました。(苦笑)

仕方ないのでこのぐらいは許されると思いましょう。


この先は皆さんの御判断で御自由に。


残念なことになるであろうMantleと運命を共にすることになってしまったBattlefield4(Frostbite3)ですが、
せめて普通のCPUで満足に動作するレベルに「偽Mantle」を仕上げて欲しいところです。
本当に「偽」が存在するかはあくまでも不明ですが...

( - )
添付ファイル