為了在硬件和軟件上持續(xù)保持領(lǐng)先, CDD 與業(yè)內(nèi)領(lǐng)先企業(yè)頻繁交流,不斷改進自研軟件以提升虛擬拍攝影棚的制作體驗。
客戶挑戰(zhàn)
在虛擬影棚中,LED 立面屏幕被分割為多個顯示區(qū)域,每個顯示區(qū)域由不同的工作站驅(qū)動,其呈現(xiàn)的內(nèi)容則由其搭載的 GPU 渲染完成。
在實時拍攝過程中,需要 LED 光照、實時攝像機追蹤和實時渲染投屏三者的結(jié)合,實現(xiàn)前臺演員和虛擬背景之間的完美整合。這種拍攝方案消除了對綠幕合成的需求,讓攝像機直接拍攝最終成像。
而所有需要在大型 LED 立面屏幕上顯示實時渲染內(nèi)容的行業(yè)都面臨著一個普遍挑戰(zhàn),即每個渲染節(jié)點其實是一個獨立運行工作站,在實際拍攝制片過程中,不僅需要消耗大量的計算資源用于渲染高分辨率高幀率的高品質(zhì)實時內(nèi)容,還需要同步所有渲染節(jié)點間的技術(shù)參數(shù),同時推進所有顯示媒介的呈現(xiàn)內(nèi)容。目前鮮有人在這一領(lǐng)域取得突破,原因可以歸納為以下幾個方面:
每臺工作站需要獨立渲染特定顯示區(qū)域的內(nèi)容,在保證高標準畫面渲染細節(jié)的同時還需要維持面板刷新一致,對 GPU 性能提出了極高要求。
節(jié)點間存在通訊障礙,普通同步方式不能保證所有節(jié)點的幀同步,一旦出現(xiàn)不同步就會造成畫面撕裂影響觀看體驗。
節(jié)點間參數(shù)同步和數(shù)據(jù)傳輸占用了大量的網(wǎng)絡帶寬和 CPU 資源,進一步造成節(jié)點間時間同步的不可預測。
由于上述瓶頸導致渲染平臺整體無法進一步提升成片的幀率和分辨率,無法進一步滿足人們對于高幀率渲染實時內(nèi)容的需求。
應用方案
客戶的超大分辨率渲染平臺通過集成 NVIDIA Rivermax 整體方案,解決了這些難題。完成集成后的系統(tǒng)架構(gòu)如下圖所示:
圖 1. 系統(tǒng)架構(gòu)圖
新的平臺由 NVIDIA RTX A6000 承擔分布式實時渲染任務。RTX A6000 擁有 48GB 顯存,可以將拍攝場景需要的模型和紋理數(shù)據(jù)全部加載到顯存中,在拍攝過程中按需調(diào)用。渲染節(jié)點支持多 GPU 進行視口渲染,此模式支持創(chuàng)作者指定一個 GPU 渲染特定視口,并通過 NVLink 將渲染結(jié)果直接復制到另一個 GPU 上顯示輸出。而多個顯示區(qū)域則通過 NVIDIA Quadro Sync II 同步 vsync 信號,并結(jié)合 NVIDIA 專業(yè)顯卡提供的 NVAPI swapgroup/barrier 技術(shù)將渲染結(jié)果完美的拼合在一起。
此外整個渲染平臺通過添加 NVIDIA BlueField-2 DPU 和 NVIDIA Spectrum-3 交換機,具備了運行 NVIDIA Rivermax 整體方案的硬件能力。
NVIDIA Rivermax 提供了高性能的流媒體傳輸服務,這種服務在 Windows 平臺上實現(xiàn)了 GPU Direct P2P 支持,消除了額外的 GPU 顯存到系統(tǒng)內(nèi)存的拷貝,降低了操作系統(tǒng)層面的延遲,同時也降低了 CPU 資源的占用,從而讓整個渲染平臺的運行更為可靠。啟用 NVIDIA Rivermax 后,單顆 CPU 核心可以輕松收發(fā) 100Gbps 的媒體流。
圖 2. 單顆 CPU 核心收發(fā) 100Gbps 媒體流
而且整個平臺也具備了部署 DOCA Firefly 的條件。DOCA Firefly 是 NVIDIA 提供的基于硬件的精確時間同步服務。在 NVIDIA BlueField-2 DPU 上部署 DOCA Firefly 可以實現(xiàn)納秒級別的時間同步精度,其典型值如下表所示:
使用效果及影響
騰訊 CDD 綜合 NVIDIA 提供的各項產(chǎn)品,使用 NVIDIA RTX A6000 實時渲染,使用 NVIDIA Rivermax 在 GPU 顯存間直接傳輸數(shù)據(jù),使用 NVIDIA BlueField-2 DPU 部署精確時間服務 DOCA Firefly 來同步所有渲染節(jié)點的系統(tǒng)時鐘,使用 NVIDIA Spectrum-3 交換機復制 GPU 顯存數(shù)據(jù)并承載時鐘網(wǎng)絡,通過這一系列改進措施,最終實現(xiàn)了在 LED 立面屏幕上以超低延遲呈現(xiàn)數(shù)字流資產(chǎn)的能力。