Intel ANV Vulkan Driver Now Supports Automatic On-Disk Shader Cache
It's been a busy day for the Intel "ANV" open-source Linux Vulkan driver as besides new (NIR) optimizations, they also enabled support for the on-disk shader cache.
With the Vulkan graphics API, exposed to the game engine / application is support for pipeline caching. But unfortunately not all Vulkan-enabled software makes use of the caching support. For those that don't, the Intel ANV driver now supports the on-disk shader cache similar to the recent addition to the Intel i965 OpenGL driver.
This is a similar story to last year the Radeon RADV driver wiring up on-disk shader cache support. While it's ideal when the Vulkan game/application makes use of the pipeline cache for the re-use of objects between runs, the Mesa on-disk shader cache code is now used to automatically re-use compiled shaders on subsequent runs.
The on-disk shader cache helps with reducing load times, particularly for shader-heavy games. As of today the Intel ANV driver has it wired up. Lead ANV developer Jason Ekstrand wrote:
It was just earlier this year that Intel enabled their OpenGL shader cache by default.
With the Vulkan graphics API, exposed to the game engine / application is support for pipeline caching. But unfortunately not all Vulkan-enabled software makes use of the caching support. For those that don't, the Intel ANV driver now supports the on-disk shader cache similar to the recent addition to the Intel i965 OpenGL driver.
This is a similar story to last year the Radeon RADV driver wiring up on-disk shader cache support. While it's ideal when the Vulkan game/application makes use of the pipeline cache for the re-use of objects between runs, the Mesa on-disk shader cache code is now used to automatically re-use compiled shaders on subsequent runs.
The on-disk shader cache helps with reducing load times, particularly for shader-heavy games. As of today the Intel ANV driver has it wired up. Lead ANV developer Jason Ekstrand wrote:
The Vulkan API provides a mechanism for applications to cache their own shaders and manage on-disk pipeline caching themselves. Generally, this is what I would recommend to application developers and I've resisted implementing driver-side transparent caching in the Vulkan driver for a long time. However, not all applications do this and, for some use-cases, it's just not practical.
It was just earlier this year that Intel enabled their OpenGL shader cache by default.
2 Comments