ANV Enables UBO Pushing For Another Extra Bit Of Performance
With just seven lines of new code, Intel's ANV Vulkan driver is a few percent faster in some Linux games.
Jason Ekstrand of Intel landed support for UBO (Uniform Buffer Object) pushing. He explained in the commit, "Push constants on Intel hardware are significantly more performant than pull constants. Since most Vulkan applications don't actively use push constants on Vulkan or at least don't use it heavily, we're pulling way more than we should be. By enabling pushing chunks of UBOs we can get rid of a lot of those pulls."
On a Skylake GT4e system, he found that enabling the UBO pushing yielded around a 2.5% boost in performance for Dota 2 and Talos while the Aztec Ruins was up by about 2%, not bad for the small patch.
Jason Ekstrand of Intel landed support for UBO (Uniform Buffer Object) pushing. He explained in the commit, "Push constants on Intel hardware are significantly more performant than pull constants. Since most Vulkan applications don't actively use push constants on Vulkan or at least don't use it heavily, we're pulling way more than we should be. By enabling pushing chunks of UBOs we can get rid of a lot of those pulls."
On a Skylake GT4e system, he found that enabling the UBO pushing yielded around a 2.5% boost in performance for Dota 2 and Talos while the Aztec Ruins was up by about 2%, not bad for the small patch.
4 Comments