anv: implement VK_EXT_pipeline_creation_feedback
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Tue, 19 Mar 2019 15:23:37 +0000 (15:23 +0000)
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>
Wed, 20 Mar 2019 16:18:35 +0000 (16:18 +0000)
commit6601e5d6fc68cd9f8305508c650289170fef71ff
treeffab8fd33ffe023b916622d75bf15f0764630b63
parent70904eb99ae0c31c7cca8edeec9ba1c6353e4218
anv: implement VK_EXT_pipeline_creation_feedback

An extension reporting cache hit in the user supplied pipeline cache
as well as timing information for creating the pipelines & stages.

v2: Don't consider no cache for cache hits (Jason)
    Rework duration accumulation (Jason)

v3: Fold feedback creation writing into pipeline compile functions (Jason/Lionel)

v4: Get cache hit information from anv_device_search_for_kernel() (Jason)
    Only set cache hit from the whole pipeline if all stages also have that bit (Lionel)

v5: Always user_cache_hit in anv_device_search_for_kernel() (Jason)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/intel/vulkan/anv_extensions.py
src/intel/vulkan/anv_pipeline.c
src/intel/vulkan/anv_pipeline_cache.c
src/intel/vulkan/anv_private.h