mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-19 11:28:15 +02:00
The Xe uAPI is designed to use bind queues such that binds without input dependencies (sync objects) do not block on binds with input dependencies. For example: - Bind A (sparse) is submitted with a list of input dependencies. - Bind B (immediate) is subsequently submitted without a list of input dependencies. If Bind A and Bind B share a single bind queue, Bind B will not be scheduled until Bind A completes. Using individual bind queues decouples Bind A and Bind B, allowing Bind B to make immediate progress. This change creates a separate bind queue for each ANV queue, enabling support for sparse bindings that may have input dependencies. v2: - Bail on bind queue creation failure (Linoel) - Only create bind queue if VK_QUEUE_SPARSE_BINDING_BIT is set (Jose) v3: - Add comment around submit->queue usage (Jose) Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32873> |
||
|---|---|---|
| .. | ||
| anv_batch_chain.c | ||
| anv_batch_chain.h | ||
| anv_device.c | ||
| anv_device.h | ||
| anv_kmd_backend.c | ||
| anv_queue.c | ||
| anv_queue.h | ||