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.
afa8f58921 anv: Add support for the on-disk shader cache
src/intel/vulkan/anv_device.c | 36 +++++++++++++
src/intel/vulkan/anv_pipeline_cache.c | 98 +++++++++++++++++++++++++++++++----
src/intel/vulkan/anv_private.h | 3 ++
3 files changed, 126 insertions(+), 11 deletions(-)