僅改動十幾行程式碼:AMD FSR2效能暴漲228%
Valve的Linux驅動團隊在即將發布的Mesa 24.3版本中,對RADV(Radeon Vulkan)驅動程式進行了改進,提升了AMD FSR 2在RDNA 2硬體上的效能,效能提升高達228%。需要注意的是,這種效能提升是圍繞FSR2範例應用程序,而不是FSR2演算法本身。
RADV驅動是Linux作業系統上AMD GPU的開源Vulkan驅動,因其開源特性而受到社群用戶的歡迎。
先前,RADV驅動在啟用FSR 2時的效能一直不如AMD官方的AMDVLK/AMDGPU-PRO Vulkan驅動,這項效能差距已存在近兩年。
Valve工程師Samuel Pitoiset透過重新編寫僅十餘行程式碼,成功解決了這個問題。
問題的核心在於RADV驅動在FSR 2中處理特定特性的原始物件剔除(culling)的方式,在渲染前,剔除不必要的原始物件如三角形和線條可以節省效能和功耗。
與AMDGPU-Pro驅動相比,RADV在處理W位置為零的原始物件剔除時效率較低,導致額外且不必要的計算,從而降低了FSR 2應用的效能。
Samuel Pitoiset透過調整AMD NIR程式碼,強制在W位置為零時進行剔除,這項改變使得RDNA 2 GPU在啟用FSR 2時RADV驅動的效能提升了228%。
這項改進將作為Mesa 24.3-devel的一部分,透過官方發布提供給用戶,