Radeon R300 Driver Lands NIR-To-TGSI Code, Old NVIDIA Driver Eyes It Too
As covered yesterday, this is about making use of Mesa's NIR-to-TGSI path and ultimately allowing the R300 Gallium3D driver to be able to leverage the excellent NIR intermediate representation and common optimizations and features already in use by other Mesa drivers. For end-users more efficient shaders should be generated that should equate to quicker game load times and performance improvements, at least for OpenGL games capable of running on these roughly two decade old ATI graphics cards.
This NIR usage work has been merged and will be part of next quarter's Mesa 22.0 stable release.
Emma Anholt who spearheaded this NIR-to-TGSI work also opened a merge request yesterday implementing a similar NIR-to-TGSI switch for the Nouveau NV30 driver code. Results there are looking good there too:
total instructions in shared programs: 20930790 to 18424742 (-11.97%)
instructions in affected programs: 20769162 to 18263114 (-12.07%)
total gpr in shared programs: 109299 to 111329 (1.86%)
gpr in affected programs: 90633 to 92663 (2.24%)
The NV30 Gallium3D driver supports both NV30 and NV40 families, spanning the GeForce FX through GeForce 7000 series.
Old NVIDIA graphics cards stand to benefit from the NV30 NIR-to-TGSI usage too... This in turn can allow more code to be deleted from Mesa once all the drivers are on the NIR bandwagon. But don't expect too much in the way of exciting R300g and NV30 era exciting work to continue.