This patch series adds a simple NIR shader cache that sits right after spirv_to_nir and brw_preprocess_nir and before linking. This should help alleviate some of the added overhead of link-time optimization since most of the NIR-level optimization is now cached prior to linking.
I have no numbers to back this series up; just intuition. Jason Ekstrand (5): anv/pipeline: Move wpos and input attachment lowering to lower_nir anv/pipeline: Hash shader modules and spec constants separately compiler/types: Serialize/deserialize subpass input types correctly anv/pipeline_cache: Add support for caching NIR anv/pipeline: Cache the pre-lowered NIR src/compiler/glsl_types.cpp | 4 +- src/intel/vulkan/anv_pipeline.c | 118 ++++++++++++++++++-------- src/intel/vulkan/anv_pipeline_cache.c | 100 ++++++++++++++++++++++ src/intel/vulkan/anv_private.h | 18 ++++ 4 files changed, 204 insertions(+), 36 deletions(-) -- 2.19.1 _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
