RadeonSI Lands Another Big Overhead Optimization - "Substantially" Helps In Some Cases
While these days most Linux games exclusively target the Vulkan API and efforts around Valve's Steam Play are focused on mapping Direct3D to Vulkan, OpenGL still has a large presence particularly for workstation software. Over the past year we've seen AMD's driver engineers continue to focus on many RadeonSI optimizations to benefit workstation workloads, in particular using SPECViewPerf as the baseline and often focusing on Siemens NX (Snx).
Over the course of the summer, RadeonSI was crossing the threshold of being faster than the proprietary AMD OpenGL driver available on Linux and Windows. For Linux gaming, the RadeonSI driver has long been superior but workstation took additional tuning and focus. RadeonSI passed that threshold this summer and has been moving beyond that since.
Well known open-source AMD OpenGL driver developer Marek Olšák last week opened the now-merged MR to implement a new low-overhead display list interface that in turn is providing the latest win.
Marek noted in the merge request, "This new interface is designed to be optimal for display lists as implemented by the vbo module. It has much lower CPU overhead in the frontend, threaded context, and the driver." Marek went on to add, "It improves the score of viewperf13/snx substantially."
Marek didn't quantify the "substantially" better SPECViewPerf/Snx performance but he did cite some Piglit micro-benchmark test cases around glCallList ranging from gains between 9% and 265% faster than the prior display list implementation.
These latest RadeonSI changes will be found in Mesa 21.3 due to be released as stable in just over one month's time.