Latest evidence-based health information
Iphone

テスト済み:DirectX 12 の潜在的なパフォーマンスの飛躍は驚異的

テスト済み:DirectX 12 の潜在的なパフォーマンスの飛躍は驚異的
テスト済み:DirectX 12 の潜在的なパフォーマンスの飛躍は驚異的

今年後半に Windows 10 がリリースされると DirectX 12 によってゲームのパフォーマンスが劇的に向上することはすでにわかっていますが、実際にどの程度の「無料」のパフォーマンス向上が得られるかは正確にはわかっていません。

Microsoft幹部は、DX12を現在のDX11 APIと比較した場合、フレームレートが2倍以上になると予想しています。しかし、Futuremarkの新しいAPIオーバーヘッド機能テストを信じるならば、この推定値は控えめなようです。 

MicrosoftとFuturemarkは、最新の3DMarkテストへの早期アクセスを提供してくれました。このテストでは、MicrosoftのWindows 10専用ゲームAPIが前バージョンと比べてどれほど効率化されているかを測定できます。そして、そのパフォーマンスは驚異的です。しかし、興奮しすぎて誇大宣伝が鳴り響く前に、これは理論的なテストであり、実際のゲームエンジンに基づいたものではないことを覚えておいてください。

3dmark12プレビュー PCワールド

3DMark の新しい API Overheat Feature Test は、DirectX11 と新しい Windows 10 専用の DirectX 12 のパフォーマンスの違いを測定します。

テスト方法

テストには、Asus Z87 Deluxe/Dual マザーボードに搭載された Intel Core i7-4770K プロセッサー、16GB DDR3/1600 RAM、240GB Corsair Neutron SSD、Gigabyte WindForce Radeon R9 290X または GeForce GTX Titan X を使用しました。また、Asus マザーボードの「Core enhancement」機能はオフにしました。この機能は、チップをわずかにオーバークロックするものです。すべてのテストは、Microsoft の推奨に従い、1280×720 解像度で実施しました。

3DMarkとMicrosoftは、この新機能テストはGPUを比較するツールではなく、単一のPCのパフォーマンスとAPI効率を測る簡単な方法であると指摘しています。PC YとPC Xを比較したり、GPUテストとして使用したりしないでください。これは、特定のPC構成でDX11を実行した場合のパフォーマンスと、同じPC構成でDX12を実行した場合のパフォーマンスを比較するものです。

さらに嬉しいことに、このテストは3DMarkをお持ちの方なら誰でもすぐにご利用いただけます。ご自身でテストを行いたい方は、以下の手順で実行できます。

このテストは、GPUに画面に何かを描画するように指示することで機能します。この命令は、DX11、DX12、またはAMDのMantle APIを介して送信されます。CPUからGPUへのこれらの「描画呼び出し」をAPIが処理する効率が低いほど、画面に描画できるオブジェクトの数は少なくなります。3DMarkは、フレームレートが30フレーム/秒(fps)を下回るまで、描画呼び出しとオブジェクトの数を急速に増加させます。

最初のテストは、DirectX 11 のシングルスレッドパフォーマンスとマルチスレッドパフォーマンスの比較です。次に、AMD の DirectX 12 に似た Mantle API(ハードウェアが Mantle をサポートしている場合)をテストし、最後に DirectX 12 のパフォーマンスをテストします。

下のグラフからわかるように、DirectX 11のシングルスレッドおよびマルチスレッドのパフォーマンスは期待外れで、Gigabyte WindForce Radeon R9 290Xカードでは30fpsを下回るまでに約90万回の描画呼び出しが発生しています。AMDのMantleを使用すると、1秒あたり1240万回の描画呼び出しという驚異的なパフォーマンス向上が見られます。

どちらのAPIが最初に開発されたのかを実際に断言するのは難しいですが(DirectX 12は何年も前から開発が進められていたという記事を読んだこともありますが、AMDが最初に開発を進めた可能性が高いという記事もあります)、このテストは少なくとも両方の新しいAPIのポテンシャルを示しています。実際、DirectX 12は1秒あたり1,340万回の描画呼び出しをこなし、DirectX 12よりもわずかに効率が良いです。

いずれにせよ、Mantle 対 DirectX の論争は終わった。AMD 自身が開発者に対し、代わりに DirectX 12 または OpenGL のゲームに重点を置いた後継である Vulkan を使用するよう推奨しているからだ。

dx12 API パフォーマンス マントル PCワールド

Mantle と DirectX 12 のパフォーマンスは、古い DX11 API と比べても遜色ありません。

FuturemarkがこれをGPUテストとして使用しないよう指示した部分を覚えていますか?それでもNvidiaハードウェアで確認したいという方のために、R9 290Xの代わりにGeForce GTX Titan Xを使用して上記のテストを繰り返しました。もちろん、MantleはAMD独自の機能なので使用していません。

dx12 API パフォーマンス 4770k タイタンクス PCワールド

ゲームが理論通りに動作すればいいのに。DirectX 12でGeForce GTX Titan Xが動作する様子をご覧ください。

DX12が統合型グラフィックプロセッサ(IGP)にどのような影響を与えるのか、気になるところでしょう。Intelのグラフィックスカードは、AMDやNvidiaのディスクリートカードよりも多くの「ゲーマー」に利用されていることを考えると、確かに気になるところですが、正直に言うと、IGPを使ったゲームは真のゲームとは言えません。IntelのIGPでテストする意味が分かりませんでした。

幸いなことに、MicrosoftはCore i7-4770R「Crystal Well」CPUとIntel Iris Pro 5200グラフィックスを搭載した自社製IGPマシンでの結果を提供してくれました。このクアッドコアチップは、ハイエンドのオールインワンPCやGigabyteのBrix Proに搭載されています。これは、現在Intelチップで得られる最高のパフォーマンスと言えるでしょう。その結果がこちらです。

悪くはないですが、上の AMD と Nvidia のグラフをもう一度見てみると。 

3dmark API テスト 4770r アイリス プロ PCワールド

Microsoft が提供した結果によると、DX12 は確かに Intel の統合グラフィックスを上回っていますが、実際のゲーム性能には程遠いようです。

しかし、DirectX 12はAPIをより効率的にすることで、マルチコアCPUをより有効に活用できるようにすることを目指していることを忘れないでください。これはグラフィックカードに関するものではありません。CPUのパフォーマンスを最大限に引き出し、GPUのボトルネックとならないようにすることが目的です。

それを念頭に、CPUのコア数とスレッド数、そしてクロック速度を様々な構成で変化させ、結果がどのように変化するかを確認することにしました。クアッドコアのCore i7-4770Kを2コアに制限し、ハイパースレッディングのオン/オフを切り替え、CPUの動作クロック速度を制限しました。

圧倒的な勝者は、デフォルト設定(コア4基、ハイパースレッディングオン)のCore i7-4770Kでした。すべてのテストはGeForce GTX Titan Xカードで実施しました。ここではDirectX 12のパフォーマンスのみを比較していますが、これが今回のテストの全てです。

dx12パフォーマンスクロックコア PCワールド

Futuremarkの新しいAPIオーバーヘッド機能テストでは、DirectX 12のパフォーマンスがさまざまなクロック速度とスレッド数にわたってどのように変化するかがわかります。

DirectX 12 に最適な CPU はどれですか?

システムを購入または構築する観点からこれをもう少し理解しやすくするために、さまざまなIntel CPUのクロック、コア数、ハイパースレッディングの状態を模倣してみました。(シミュレーションを試みたチップの詳細を知りたい方は、IntelのARKに詳細をまとめています。) 

これらはシミュレーションによるパフォーマンス結果であることにご留意ください。Core i7-4770Kのキャッシュ容量は8MBですが、Celeronは2MB、Core i5は6MBです。ほとんどのテストにおいて、キャッシュ容量によるパフォーマンスへの影響は見られませんでした。むしろ、キャッシュ容量が大きいため、シミュレーションしたCPUは実機よりも優れたパフォーマンスを発揮しました。もう一つ注意点があります。Core i5-4670Kのシミュレーション中に、CPUのクロックを下げて速度を落とそうとしたところ、問題が発生しました。最低設定可能周波数は3.6GHzで、これは標準のCPUより200MHz高い値でした。 

DX12パフォーマンスシミュレートCPUの更新 PCワールド

「中尉、戦闘ドロップは何個ですか?」「2個です。これも含めて。」これらは、シミュレートされたさまざまな CPU 間での DirectX 12 パフォーマンスのテストです。 

置き換えの代替はない

これらのシミュレートされた CPU テストから得られる教訓は、DirectX 12 のパフォーマンス向上に関しては、スレッド数がクロック速度よりも重要であるということです。

シミュレーションで使用したデュアルコアCore i3-4330の結果を見てください。これは3.5GHzのCPUで、ターボブーストとハイパースレッディングは非搭載です。これを、Intelの低価格の驚異、デュアルコアPentium G3258(オーバークロックで4.8GHz)と比べてみてください。低予算ゲーマーの間でPentium Kの愛称で呼ばれるこのチップは、Intelのラインナップの中で唯一のアンロック対応デュアルコアチップであり、非常に安価です。オーバークロックも容易で、実機であれば誰でも4.8GHzまで動作させることができるはずです。

しかし、ベンチマーク結果を見てください。シミュレーションでCore i3よりも1.3GHz高いパフォーマンスを発揮しているにもかかわらず、Pentium G3258はDX12のドローコールではそれほど優れたパフォーマンスを示していません。これは特に目新しいことではありません。2011年の第2世代「Sandy Bridge」Coreプロセッサまで遡ってCPUテストを行った結果、Core i5チップを1GHzオーバークロックすると、高負荷のマルチスレッドテストにおいて、ハイパースレッディング対応の標準Core i7とほぼ同じパフォーマンスを達成しました。 

DX12はコア数に応じて性能が適切にスケーリングされるようです。もう一度、デュアルコア4スレッドの「Core i3-4330」とクアッドコア8スレッドの「Core i7-4770K」を比較してみましょう。ほぼ2倍の性能差です。

残念ながら、PCWorldの8コアCore i7-5960Xは別の秘密製品の開発に取り組んでいたため、3DMarkの新機能テストでテストする時間がありませんでした。少なくとも、このテストが8コアのハイパースレッドCPUでうまくスケールするとは思えません。

シリコン界の巨頭とも言えるのが、AMDのFXシリーズです。一般的に、AMDのCPUはクロック性能でIntelの同等製品に劣ります。クアッドコアのHaswell CPUは、ほとんどのパフォーマンステストで「8」コアのFXチップをひとまとめにしてしまいます。しかし、このFXチップは共有コアを使用しているにもかかわらず、テストが高度なマルチスレッド処理を施されている場合、Haswellに非常に近いパフォーマンスを発揮し、場合によってはHaswellよりも高速になることもあります。DirectX 12の登場により、AMDのFXシリーズはしばしば見過ごされてきましたが、再び注目を集めるかもしれません。なぜなら、8コアのFXプロセッサがわずか153ドルという低価格で入手できるからです。 

いつか、FX ボックスをスプールして、その利点が DX12 で実際に現れるかどうかを確認したいと思います。 

しかし現実に戻ると

これらのテスト結果を見て、今年後半にはDX12対応ゲームで10倍ものパフォーマンス向上が見られるだろうと妄想するかもしれませんが、そんなことはありません。だから、誇大広告は控えましょう。 

現実的な数値は?Microsoftが主張する50%の改善から、Futuremarkのテストで確認されている数値まで、幅広い範囲で改善が見込めるでしょう。これはゲームの種類やその背後にあるコーディングに大きく依存します。

実のところ、このテストはMicrosoftとGPUベンダーの助言に基づいて作成された理論的なテストです。このテストは潜在能力を明らかにしましたが、その潜在能力を実際のゲームに反映させるのは容易ではありません。 

DirectX 12対応ゲームが実際にリリースされるまでは、確かなことは分かりません。Microsoftは、リリースは今年末になると見込んでいます。 

Otpoo

Health writer and researcher with expertise in evidence-based medicine and healthcare information.