mesa/src/intel/vulkan/i915
Lionel Landwerlin 49d2d25e24 anv: make device initialization more asynchronous
With this change, the engine initialization batches are build and
submitted at vkCreateDevice() but the function doesn't wait for them
to complete. Instead we wait at vkDestroyDevice() or whenever another
submission happens on the queue, we check whether the initialization
batch has completed (without waiting) and free it if completed.

Seems to be about 25% reduction time of vkCreateDevice()

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28975>
2024-06-13 08:29:25 +00:00
..
anv_batch_chain.c anv: make device initialization more asynchronous 2024-06-13 08:29:25 +00:00
anv_batch_chain.h anv: make device initialization more asynchronous 2024-06-13 08:29:25 +00:00
anv_device.c intel: Move intel_define.h to i915/intel_define.h 2024-02-21 18:10:54 +00:00
anv_device.h anv: create individual logical engines on i915 when possible 2023-09-07 06:39:06 +00:00
anv_gem.c anv: Move i915 handling of imported bos bo_flags 2023-09-13 13:10:59 -07:00
anv_gem.h anv: Move i915 handling of imported bos bo_flags 2023-09-13 13:10:59 -07:00
anv_kmd_backend.c anv: make device initialization more asynchronous 2024-06-13 08:29:25 +00:00
anv_queue.c anv: Create protected engine context when i915 supports vm control 2024-04-05 15:00:24 +00:00
anv_queue.h anv: hide exec_flags selection inside the i915 backend 2023-07-13 17:12:26 +00:00