Intel Linux Driver Lands Workaround To Sharply Speedup Cyberpunk 2077 Shader Compilation
A new per-application workaround/optimization to the open-source Intel "ANV" Vulkan Linux driver has sharply reduced the time required for compiling Cyberpunk 2077 game shaders for this popular title running on Linux by way of Valve's Steam Play.
This addition is a workaround to speedup each register allocation in case of register spilling. The register spilling behavior is being controlled via DriRC on a game/application-specific basis and with this behavior being set for now just with Cyberpunk 2077.
During a test of compiling Cyberpunk 2077 shaders with the Intel ANV driver, it dropped from taking 88 seconds to now just 33 seconds. While shader compilation sped up greatly and in turn game load times, this didn't impact the overall frame-rate being encountered during gameplay.
More details for those interested via this commit now part of Mesa 23.3-devel.
This addition is a workaround to speedup each register allocation in case of register spilling. The register spilling behavior is being controlled via DriRC on a game/application-specific basis and with this behavior being set for now just with Cyberpunk 2077.
"Calling the ra_allocate function after each register spill can take several minutes. This option speeds up shader compilation by spilling more registers after the ra_allocate failure.Required for Cyberpunk 2077, which uses a watchdog thread to terminate the process in case the render thread hasn't responded within 2 minutes."
During a test of compiling Cyberpunk 2077 shaders with the Intel ANV driver, it dropped from taking 88 seconds to now just 33 seconds. While shader compilation sped up greatly and in turn game load times, this didn't impact the overall frame-rate being encountered during gameplay.
More details for those interested via this commit now part of Mesa 23.3-devel.
2 Comments