The compile time for shaders for certain graphics APIs can sometimes be unacceptably long. Compilation of shaders during gameplay can, depending on CPU/GPU load, cause awkward rendering pauses (janks) or artifacts in games. This disclosure describes a shader service wherein shaders are pre-compiled for multiple target GPUs and are cached on servers. A game device can download the appropriate pre-compiled, binary shaders from the servers based on various factors such as the version of the game, the model of the user’s GPU, the driver version for that GPU, etc. The described techniques can speed up gameplay by avoiding shader compilation at the start of a game or during gameplay. The techniques can be utilized for video games, game services, or for other GPU applications.
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.
Horn, Doug, "Distributed Shader Cache", Technical Disclosure Commons, (April 20, 2022)