mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 17:30:12 +01:00
venus: add NO_TIMELINE_SEM_FEEDBACK perf option
Signed-off-by: Juston Li <justonli@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20500>
This commit is contained in:
parent
493a3b5cda
commit
56c6e4862a
4 changed files with 7 additions and 4 deletions
|
|
@ -41,6 +41,7 @@ static const struct debug_control vn_perf_options[] = {
|
|||
{ "no_fence_feedback", VN_PERF_NO_FENCE_FEEDBACK },
|
||||
{ "no_memory_suballoc", VN_PERF_NO_MEMORY_SUBALLOC },
|
||||
{ "no_cmd_batching", VN_PERF_NO_CMD_BATCHING },
|
||||
{ "no_timeline_sem_feedback", VN_PERF_NO_TIMELINE_SEM_FEEDBACK },
|
||||
{ NULL, 0 },
|
||||
/* clang-format on */
|
||||
};
|
||||
|
|
|
|||
|
|
@ -112,6 +112,7 @@ enum vn_perf {
|
|||
VN_PERF_NO_FENCE_FEEDBACK = 1ull << 4,
|
||||
VN_PERF_NO_MEMORY_SUBALLOC = 1ull << 5,
|
||||
VN_PERF_NO_CMD_BATCHING = 1ull << 6,
|
||||
VN_PERF_NO_TIMELINE_SEM_FEEDBACK = 1ull << 7,
|
||||
};
|
||||
|
||||
typedef uint64_t vn_object_id;
|
||||
|
|
|
|||
|
|
@ -346,7 +346,8 @@ vn_device_feedback_pool_init(struct vn_device *dev)
|
|||
static const uint32_t pool_size = 4096;
|
||||
const VkAllocationCallbacks *alloc = &dev->base.base.alloc;
|
||||
|
||||
if (VN_PERF(NO_EVENT_FEEDBACK) && VN_PERF(NO_FENCE_FEEDBACK))
|
||||
if (VN_PERF(NO_EVENT_FEEDBACK) && VN_PERF(NO_FENCE_FEEDBACK) &&
|
||||
VN_PERF(NO_TIMELINE_SEM_FEEDBACK))
|
||||
return VK_SUCCESS;
|
||||
|
||||
return vn_feedback_pool_init(dev, &dev->feedback_pool, pool_size, alloc);
|
||||
|
|
@ -355,7 +356,8 @@ vn_device_feedback_pool_init(struct vn_device *dev)
|
|||
static inline void
|
||||
vn_device_feedback_pool_fini(struct vn_device *dev)
|
||||
{
|
||||
if (VN_PERF(NO_EVENT_FEEDBACK) && VN_PERF(NO_FENCE_FEEDBACK))
|
||||
if (VN_PERF(NO_EVENT_FEEDBACK) && VN_PERF(NO_FENCE_FEEDBACK) &&
|
||||
VN_PERF(NO_TIMELINE_SEM_FEEDBACK))
|
||||
return;
|
||||
|
||||
vn_feedback_pool_fini(&dev->feedback_pool);
|
||||
|
|
|
|||
|
|
@ -519,8 +519,7 @@ vn_feedback_cmd_pools_init(struct vn_device *dev)
|
|||
.flags = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT,
|
||||
};
|
||||
|
||||
/* TODO will also condition on timeline semaphore feedback */
|
||||
if (VN_PERF(NO_FENCE_FEEDBACK))
|
||||
if (VN_PERF(NO_FENCE_FEEDBACK) && VN_PERF(NO_TIMELINE_SEM_FEEDBACK))
|
||||
return VK_SUCCESS;
|
||||
|
||||
assert(dev->queue_family_count);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue