Oodle新技術助力PS5數據壓縮率大增峰值I/O帶寬達到17.38GB/s
自Epic首席執行官Tim Sweeney解釋了PS5與PC和競爭對手平台相比的架構優勢以來,這款次世代遊戲主機的輸入/輸出(I/O)系統已經引發了許多討論。理論上,同樣採用PCIe 4.0接口的三星980 Pro NVMe SSD,有望在原始性能上超越PS5內置的固態存儲。但從索尼官方列出的I/O帶寬來看,該機在不壓縮數據的情況下,就已能夠達成5.5 GB/s的傳輸速率,啟用壓縮後更是相當於8-9 GB/s 。
然而WCCFTech 的新報導稱,與Oodle 的深度合作,有望讓PS5 在壓縮數據提升峰值I/O 帶寬上走得更遠。該公司宣稱,索尼已經獲得了Oodle Texture 技術的授權,可針對GPU 紋理壓縮進行優化。
作為一個軟件庫,Oodle Texture 允許開發人員在內容創建時,借助它將源碼編譯成可用於GPU 的BC1-7 格式。儘管已有許多遊戲在使用GPU 紋理編碼器,但此前從未有像Oodle Texture 這樣來優化壓縮的。
需要指出的是,並未所有即將登陸PS5 平台的遊戲,都會用上這項新穎的技術。不過我們還是希望它的廣泛採用,可以推動平均壓縮率和有效I/O 帶寬達成更高的水平。
據悉,Kraken 是一款功能強大的通用型壓縮器,可對具有重複模式或結構的數據進行良好的壓縮。然而因為某些類型的數據存在“加擾”,導致Kraken 難以找到可壓縮的點位。
以遊戲應用為例,GPU 紋理就是這樣的狀況。除非以正確的方式進行調製,否則很難實現高效的壓縮。
好消息是,通過與Oodle Texture 配合使用,Kraken 能夠為遊戲主機帶來更大的優勢。通常大多數遊戲內容都是有損的BC1 – BC7 GPU 紋理格式,可將4×4 像素塊編碼為8 或16 字節塊。
Oodle Kraken 的組合設計,能夠以這種細粒度對模式進行建模。但若採取傳統的BC1 – BC7 紋理編碼器,幾乎不可能找到任何模式點位,Zip 和Kraken 都對此無能為力。
該方案能夠改善Kraken 可感知的圖案中改善壓縮效果—— 通過查找數據中的某些結構重複,匹配長度、偏移量和匹配間隔、並用更少的比特對其進行編碼—— 但肉眼仍難以發現這種細微的差別。。
據Oodle所述,之前的8-9 GB/s數據吞吐量,是索尼在PS5 SSD的5.5 GB/s峰值帶寬、乘以1.45 / 1或1.64 / 1的標準壓縮比而實現的。
但當同時考慮到Oodle Kraken 和Oodle Texture 時,開發者可在近期的遊戲中觀察到令人印象深刻的3.16 / 1 紋理壓縮比,從而將I/O 峰值帶寬提升到17.38 GB/s 。