值得注意的是,此次性能提升是针对FSR2示例应用程序的测试结果,而非FSR2算法本身的改进。RADV作为Linux上AMD GPU的开源Vulkan驱动,一直因其开源特性和广泛的社区支持而受到用户的青睐。然而,在过去近两年里,RADV在启用FSR 2时的性能表现一直不如AMD官方的AMDVLK/AMDGPU-PRO驱动。
这一瓶颈的突破得益于Valve工程师Samuel Pitoiset的精湛技艺。他通过重新编写仅十余行代码,成功解决了RADV在FSR 2中处理特定特性原始对象剔除(culling)时存在的问题。原始对象剔除是一种在渲染前剔除不必要对象(如三角形和线条)的技术,旨在节省性能和功耗。
据Samuel Pitoiset分析,RADV在处理W位置为零的原始对象剔除时效率较低。导致额外的计算负担,从而降低了FSR 2应用的性能。为了解决这个问题,他调整了AMD NIR代码,强制在W位置为零时进行剔除。这一改动使得RADV驱动在RDNA 2 GPU上启用FSR 2时的性能实现了质的飞跃,提升幅度高达228%。
(9154108)
相关教程
2023-05-30
2023-06-08
2024-10-03
2024-10-22
2023-05-05
2024-06-17
2023-06-02
2023-06-10
2024-08-13
2023-04-28
2024-11-18
2024-11-18
2024-11-16
2024-11-16
2024-11-15
2024-11-14