ディープ・ラーニング・スーパー・サンプリング

ディープ・ラーニング・スーパー・サンプリング（（DLSS））は、NVIDIAによって開発され、一部のビデオゲームでリアルタイムに使用するためのの画像アップスケーリングテクノロジーである。本項では略称である『DLSS』を用いて記述する。

概要 
DLSSはその名の通り、ディープラーニング（深層学習）を使用して、低解像度の画像を高解像度にアップスケールし、高解像度のコンピューターモニターに表示する超解像技術の一つである。

NVIDIAは、このテクノロジーが画像を高解像度でネイティブにレンダリングするのと同様の品質で画像をアップスケールするが、ビデオカードによる計算が少なくてすむため、特定の解像度でより高いグラフィック設定とフレームレートが可能になると主張している。NVIDIAは、「DLSS2.0はネイティブ解像度に匹敵する画質を提供する」と主張している。

2023年8月の時点で、このテクノロジーはGeForce RTX 20・GeForce RTX 30・GeForce RTX 40シリーズGPUでのみ利用可能。

歴史 
NVIDIAは、2018年9月に発売されたGeForce RTX20シリーズGPUの主要機能としてDLSSを装備した。当時は、限られたいくつかのビデオゲーム（バトルフィールドV とメトロエクソダス）にのみ対応が限定されていた。またアルゴリズムを対応された各ゲームで個別に調整する必要があり、通常の効果は単純な解像度のアップスケーリングと比較して大きな差はなかった。

2019年、ビデオゲームコントロールには、レイトレーシングと、TensorCoreを使用しなかったDLSSの改良版が付属していた。

2020年4月、NVIDIAはドライバーバージョン445.75を提供し、DLSS 2.0へのバージョンアップが行われた。これは、コントロールや『』などのいくつかの既存のゲームで利用でき、今後のゲームでも利用可能になるとしている。2.0ではTensor Coreを再び使用することでAI学習データを用い、各ゲーム毎での個別調整する必要はないと述べた。ゲーム側の対応と実装は引き続き個別に必要となる。
2.0のデメリットとしてはやなどのアンチエイリアス手法が、適切に効果が発揮されない点がある。この設定の場合DLSSを有効にすると、パフォーマンスに大きな悪影響がある。

2021年11月に2.3へとバージョンアップ。動きの激しい場面で発生するゴーストを、モーションベクトルをより高度に利用するよう改善したことで軽減に成功したとしている。

2022年12月に3.0が提供され、通常のレンダリングと比べて性能が最大で4倍になるとし、加えて従来のアップスケールに加えてフレーム生成が追加された。CPUがボトルネックとなっていてもフレームレートを高めることが可能となる。レイテンシを軽減するためにNVIDIA Reflexが搭載。GeForce RTX 4000シリーズのみで対応している。

リリース履歴

ゲーム画質モード（2.0以降）

バージョン

DLSS 1.0 
NVIDIAはDLSS 1.0について、従来のスーパーサンプリングを使用して「完璧なフレーム」を生成することで、各ゲーム画像毎にニューラルネットワークで学習する必要があると説明した。 2番目のステップでは、初期結果でアンチエイリアシングやVRSといった映像処理をAIの処理に任せるという調整がなされた。

DLSS 2.0 
 ニューラルネットワークは、スーパーコンピューターでの超高解像度のビデオゲームの「理想的な」画像と同じゲームの低解像度画像を使用して、NVIDIAによって学習され、ビデオカードドライバに保存される。 NVIDIAはサーバーを使用してネットワークのトレーニングを実行すると言われている。
 ドライバーに保存されているニューラルネットワークは、実際の低解像度画像を参照と比較し、完全な高解像度の結果を生成するもの。調整されたニューラルネットワークによって使用される入力は、ゲームエンジンによってレンダリングされた低解像度のエイリアス画像と、同じくゲームエンジンによって生成された同じ画像からの低解像度の動きベクトルである。モーションベクトルは、次のフレームがどのように見えるかを推定するために、シーン内のオブジェクトがフレーム間を移動している方向をネットワークに通知している。

DLSS 3.0 
 全く新しいフレームを生成するオプティカルマルチフレーム生成を追加し、最適な応答性を実現するNVIDIA Reflex低遅延技術を統合している。
 DLSS フレーム生成畳み込みオートエンコーダーは、現在と前のゲームのフレーム、オプティカルフローアクセラレータで生成されたオプティカルフローフィールド、モーションベクターや深度などのゲームエンジンのデータの4つの入力を受け取る。アクセラレータは、連続した2つのゲーム内フレームを解析しフローフィールドを計算、フレーム1からフレーム2へピクセルが移動する方向と速度を捉える。
 アクセラレータは、ゲーム エンジンのモーションベクター計算には含まれないパーティクル、リフレクション、シャドウ、ライティングなどのピクセルレベルの情報を取得することが可能であるとしている。

アーキテクチャ 
DLSSは、GeForce RTX 20およびGeForce RTX 30シリーズのGPUで、Tensor Coresと呼ばれる専用の AIアクセラレータでのみ使用できる。

Tensor Coreは、Tesla V100の製品ラインで最初に使用されたNVIDIA  GPUのマイクロアーキテクチャ以降に利用可能。それらの特異性は、各Tensorコアが16ビット浮動小数点4 x 4マトリックスで動作し、コンパイラレベルでもCUDA C ++レベルで使用されるように設計されているように見えることである。

Tensor Coreは、32の並列スレッドでCUDA ワープレベルプリミティブを使用して、並列アーキテクチャを活用する。ワープは、同じ命令を実行するように構成された32スレッドのセットである。

3.0はNVIDIA Ada Lovelaceアーキテクチャの新しい第4世代Tensor Coreとオプティカルフローアクセラレータによってのみ動作する。

脚注

関連項目 
 画像スケーリング
 ディープラーニング
 スーパーサンプリング
 GeForce
 
 テンソル・プロセッシング・ユニット - Googleが開発したAIアクセラレータ特定用途向け集積回路（ASIC）

外部リンク 
 NVIDIA DLSS (Deep Learning Super Sampling)

NVIDIA
3DCG
グラフィックカード
GPU