Testing Primitive Binning With Vega 10 On RadeonSI
One month back Marek Olšák landed support in the RadeonSI Gallium3D driver for primitive binning with Vega 10 GPUs but now that feature is likely to be disabled by default.
Marek is moving ahead now to disable primitive binning by default for Vega 10 GPUs but to keep it enabled for upcoming Raven Ridge APUs. He explained in the proposed patch, "Our driver implementation is known to decrease performance for some tests, but we don't know if any apps and benchmarks (e.g. those tested by Phoronix) are affected. This disables the feature just to be safe."
Though the feature can be manually turned back on via R600_DEBUG=dpbb,dfsm. The patch hasn't landed in Mesa Git so I ran some runs to see how the performance looks with our tests currently with Vega primitive binning enabled and then again when it's off (via the nodpbb bit). Testing was done with the newest AMDGPU DC kernel code paired with Mesa 17.3-dev and LLVM 6.0 SVN from a few days ago with the Padoka PPA.
Unfortunately I couldn't run my full onslaught of OpenGL benchmarks due to hitting a number of stability issues with this latest code either from the AMDGPU DRM changes or RadeonSI; haven't had time to dig deeper yet so was just blacklisting the tests that were failing like BioShock Infinite, Dota 2, and then the previous problematic Vega tests like BioShock Infinite and Metro Last Light Redux. (The latest DC code has also regressed 4K HDMI mode-setting support on at least Vega for me, thus 1080p tests here.)
But long story short with the RX Vega 64, the primitive binning really didn't help or hurt the OpenGL tests I was running this weekend. The complete data set in this result file.
Marek is moving ahead now to disable primitive binning by default for Vega 10 GPUs but to keep it enabled for upcoming Raven Ridge APUs. He explained in the proposed patch, "Our driver implementation is known to decrease performance for some tests, but we don't know if any apps and benchmarks (e.g. those tested by Phoronix) are affected. This disables the feature just to be safe."
Though the feature can be manually turned back on via R600_DEBUG=dpbb,dfsm. The patch hasn't landed in Mesa Git so I ran some runs to see how the performance looks with our tests currently with Vega primitive binning enabled and then again when it's off (via the nodpbb bit). Testing was done with the newest AMDGPU DC kernel code paired with Mesa 17.3-dev and LLVM 6.0 SVN from a few days ago with the Padoka PPA.
Unfortunately I couldn't run my full onslaught of OpenGL benchmarks due to hitting a number of stability issues with this latest code either from the AMDGPU DRM changes or RadeonSI; haven't had time to dig deeper yet so was just blacklisting the tests that were failing like BioShock Infinite, Dota 2, and then the previous problematic Vega tests like BioShock Infinite and Metro Last Light Redux. (The latest DC code has also regressed 4K HDMI mode-setting support on at least Vega for me, thus 1080p tests here.)
But long story short with the RX Vega 64, the primitive binning really didn't help or hurt the OpenGL tests I was running this weekend. The complete data set in this result file.
6 Comments