週刊アスキー

  • Facebookアイコン
  • Twitterアイコン
  • RSSフィード

eスポーツシーンに変革が起きるかもしれないレイテンシー低減!

謎の新技術「RTX IO」と「NVIDIA Reflex」とは一体何者なのか

2020年09月06日 11時00分更新

CUDAコアは前世代に比べ2倍以上の増加し、RTコアもTensorコアも刷新されたGeForce RTX 30シリーズ。GeForce RTX 3080は9月17日より販売解禁となる。なお、写真のFounders Editionの国内正式販売はない

 前回に引き続き、Ampere世代の新GeForce「RTX 30シリーズ」公式発表後、プレス関係者向けに開催されたオンライン説明会「GeForce RTX 30-Series Tech Sessions」で語られたことの中から、興味深い項目について解説しよう。

 今回は特に注目度の高い新技術「RTX IO」と、ゲーマーにとってかなりのメリットが見込める「NVIDIA Reflex」を採り上げる。

ファイルIOの操作だけでCPUパワーが消費される問題に対処

 先日のGeForce RTX 30シリーズ発表時に前菜のごとくサラッと流された「RTX IO」は、次世代家庭用ゲーム機、すなわち「PlayStation 5」や「Xbox Series X」に搭載される超高性能SSDのエッセンスをWindwos上のゲームでも利用可能にする期待の技術だ。

 この背景にあるのは、最新ゲームにおけるデータ量の増加である。読み込み待ちに苛立った経験は誰しもあるが、この待ち時間増加の原因のひとつ(すべてではない点に注意)に、モデリングやテクスチャーデータの肥大がある。特に近年はマップがより広く精細に、グラフィックもよりリアル志向に、ディスプレー解像度も上を目指す傾向があるのでデータはどんどん大きくなる。レイトレーシングもリアルさ追求に拍車をかけていることは間違いない。

ゲームの世界が広がり、リアリティーも増すほど、ゲームのデータも増える。それはすなわちストレージIOとの闘いを意味する

 PCゲームのデータはストレージ上にデータファイルとして置かれている。これをCPUがWindowsのファイルアクセス用のAPIを経由してファイルを読み取り、メインメモリーに一度置いた後、それをビデオカードのVRAMに転送する。幸い、昨今ではSSDが一般化し、CPUからSSDまでPCI Express Gen4環境で揃えればリード速度で5GB/sは出せる。しかし、その速度に甘えて巨大なデータを無圧縮で読み出そうとすれば、ファイルIOの操作だけでCPUパワーが消費される。

2007年に出たゲームタイトル「Crysis」のデータは10GB程度だったが、今のゲームは100GB以上のタイトルもざらだ。サイズが大きければIOオペレーションが肥大化するし、データ転送量を抑えようと圧縮すればCPUの展開処理が肥大化する、というジレンマを抱えている。つまり、シームレスにデータをゲーム上に展開する設計だと、ファイルIOのAPIがボトルネックになるのだ

シンプルに圧縮しないデータを使った例。CPUがファイルを読み出し、メインメモリーに一度置いた後にVRAMへ転送する。ここではストレージのインターフェースやチップセット間バスの性能がボトルネックになる

PCI Express Gen4接続のSSDで帯域はぐっと広がったが、それでも8GB/sあたりが理論上の限界になる

 ゲームのデータを圧縮してファイルシステム上のデータを小さくすれば、ファイルアクセスのオペレーションは抑えられるが、これもまた難多き手法だ。メインメモリーに圧縮データを置いたら、CPUパワーで元のデータに戻してメモリーへ戻し、そこからビデオカードに転送してVRAM上に配置すると手順が必要になる。圧縮したデータを元に戻すにはCPUのコア数勝負になるとNVIDIAは主張している。

データを圧縮した状態でストレージに置くと、読み込み終えたところでさらにデータ展開という処理が入り、展開済みのデータがGPU経由でVRAMへ送られる。ファイルアクセスのオペレーションは抑えられるが、展開処理にCPUパワーやメモリーの帯域が食われる

この記事をシェアしよう

週刊アスキーの最新情報を購読しよう