ニュース
Microsoft、ゲームのデータ読み込みを高速化する「DirectStorage 1.1」をリリース
「GPU decompression」「GDeflate」でCPU負荷を劇的に削減
2022年11月10日 08:22
米Microsoftは11月7日(現地時間)、「DirectStorage 1.1」をリリースした。GPUを用いた圧縮データの展開(GPU decompression)がサポートされている。
「DirectStorage」は、ゲームのロード時間を短縮する技術。最近の3Dゲームは小さなデータを大量に読み込む処理が多用され、しかもそれはフットプリント(ファイルサイズ)を減らすため圧縮されていることが多い。そのため、一般的なファイル読み込み関数と展開処理ではCPUの負荷が爆発的に増えてしまう。
そこで、小さなデータを大量にロードするケースでもCPUのオーバーヘッドを最小限に抑えるために開発されたのが「DirectStorage」だ。この技術は「Xbox Series X/S」でも導入されており、「DirectStorage」対応タイトルを簡単にPCへ移植できるように、APIの統一化も図られている。PCではWindows 10/11で利用可能だ(Windows 11が推奨)。
「DirectStorage 1.1」の目玉は、「GPU decompression」と「GDeflate」(NVIDIAによるGPUに最適化されたデータ圧縮技術)が利用可能になったこと。GPUを積極的に活用することで、CPU負荷を劇的に引き下げることができる。
「GPU decompression」はNVIDIA製GPUに限らず、「DirectX 12」と「Shader Model 6.0」に対応していれば利用可能。「DirectStorage 1.1」では各GPUメーカーが用意している追加の最適化技術(メタコマンド)を利用できるようになっており、ハードウェアのポテンシャルを引き出せるのが特徴となっている。ただし、そのためには各社の最新ドライバーを利用する必要がある。
- AMD:AMD support for Microsoft DirectStorage 1.1 - GPUOpen
- Intel:DirectStorage on Intel GPUs
- NVIDIA:Accelerating Load Times for DirectX Games and Apps with GDeflate for DirectStorage | NVIDIA Technical Blog
加えて、Windows以外のプラットフォームでデータを圧縮したいというニーズに応え、「GDeflate」圧縮・解凍処理を行うC++ソースコードと解凍のHLSLリファレンス実装を公開するとのこと(Apache License 2.0)。これは2022年末を目標に行われる。
そのほかにも「EnqueueSetEvent」が追加され、完了通知にWin32イベントオブジェクトを利用できるようになった。パフォーマンスの向上と不具合修正も行われている。