雖然晚了幾天,不過也終於在稍早取得 NVIDIA 針對專業技術編輯的 RTX 30 系列的技術簡報,在這份資料文件中, NVIDIA 也進一步針對在 RTX 30 發表時提到的 RTX IO 技術進行說明,並闡述 RTX IO 與微軟 DirectX 當中的 DirectStorage 有甚麼不同。
▲傳統非壓縮材質將會因為檔案過大佔滿頻寬,且會大幅占用硬碟空間
▲材質壓縮雖縮小檔案大小,但受限 CPU 核心數量解壓縮速度無法提升
DirectStorage 與 RTX IO 的目的大致上是相同的,皆是為了解決當代遊戲架構為了避免過大的材質檔案自硬碟到處理器之間的通道不足而採用材質壓縮的困境,目前主流的遊戲檔案因應遊戲品質提升,採用先進壓縮技術將材質檔案縮小,而後透過 PCIe 通道傳輸到 CPU 進行解壓縮,再行輸送到 GPU 。
▲ DirectStorage 與 RTX IO 前者是使 GPU 能直接存取硬碟的壓縮材質,後者界定 GPU 解壓縮的程序
材質壓縮技術雖在近年隨著 SSD 普及與 NVMe SSD 逐漸成為主流獲得相當程度的提升,許多玩家也受益於 SSD 高速存取性能可快速地加載遊戲,尤以下一代 PCIe 4.0 的 NVMe SSD 有望達到 7,000MBps 的傳輸性能,理論上應該可進一步提升遊戲加載速度,但目前面臨的問題是處理材質解壓縮需要的不是單核心效能,而是多核多工,導致 CPU 在核心數量難以增加下,先經過 CPU 解壓縮後才傳輸到 GPU 的程序無法發揮 PCIe 4.0 通道的優勢。
DirectStorage 與 RTX IO 兩者的想法則是既然材質庫最終都是需要傳輸到 GPU ,能否直接使 GPU 讀取 SSD 的壓縮材質、活用 GPU 的多核優勢加速材質解壓縮的流程,畢竟光是 NVIDIA GPU 當中任一個 SM 單元的核心數量就已經遠超一般民用 CPU 的核心數量。
▲拜 GPU 核心數量所賜, RTX IO 較傳統 CPU 材質解壓縮快上許多
根據 NVIDIA 的說明,微軟的 DirectStorage 是定義使 GPU 可直接存取位於 NVMe SSD 當中的壓縮材質的規範,然而 RTX IO 則是在依循此規範使 GPU 能夠在存取資料後進行材質解壓縮的技術,簡單的說, DirectStorage 界定一項使 GPU 能存取 SSD 的標準,而 RTX IO 則是 NVIDIA 一套處理材質解壓的流程技術。
NVIDIA 的 RTX IO 除了使 GPU 能夠透過多核分散處理材質解壓縮外,當 DirectStorage 命令 GPU 能夠進行材質庫的直接存取時, RTX IO 還會進一步命令 GPU 進行 Boost ,以更高的時脈加速解壓縮流程,可徹底發揮 NVMe SSD 的 PCIe 4.0 通道效能。
雖然對 PCIe 3.0 通道而言, CPU 進行材質解壓縮已經足以佔滿頻寬,但仍可藉由 DirectStorage 與 RTX IO 技術減少 CPU 負擔,使 CPU 仍可在遊戲加載時不須處在高負載,或是把運算效能用於其他工作流的處理。
然而,受限微軟目前還未在 Windows 10 正式釋出 DirectStorage API ,預計要等到 2021 年春天後才能在 Windows 10 PC 使用 RTX IO 技術。然而由於 NVIDIA 與微軟的合作,在此次釋出的 Marbles at Night 的展演,就率先使用測試版的 DirectStorage ,使 Marbles at Night 的加載速度大幅提升。