zink: use optimal_keys to massively reduce size of pipeline cache comparisons
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Thu, 1 Sep 2022 20:52:27 +0000 (16:52 -0400)
committerMarge Bot <emma+marge@anholt.net>
Mon, 26 Sep 2022 17:12:31 +0000 (17:12 +0000)
commit49866c4f77049adfb43b1b72b27002680cd66380
treed83c168f16af7ae68a1afc4b5459846c8f4cfaa5
parent325c703624a7ccb74356c697ad305755db289a01
zink: use optimal_keys to massively reduce size of pipeline cache comparisons

since the entire pipeline module key is a uint32_t, this value can be used
for comparisons instead of comparing every shader module

ideally in the future more drivers will support the required features for
optimal_keys, allowing the other variant functions to be deleted

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18786>
src/gallium/drivers/zink/zink_program.c
src/gallium/drivers/zink/zink_program_state.hpp
src/gallium/drivers/zink/zink_types.h