diff options
author | Samuel Pitoiset <[email protected]> | 2018-11-02 12:20:48 +0100 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2018-11-05 09:47:55 +0100 |
commit | dc3419195cb57a9fa041c61fd92727cb0a81f36b (patch) | |
tree | f506c0b1a708f497ab20978c12af3e9e194c2b89 /src | |
parent | 64a9ed8848ed5c2c909b59e0e4b600b2b01bba28 (diff) |
radv: remove useless sync after copying query results with compute
The spec says:
"vkCmdCopyQueryPoolResults is considered to be a transfer
operation, and its writes to buffer memory must be synchronized
using VK_PIPELINE_STAGE_TRANSFER_BIT and VK_ACCESS_TRANSFER_WRITE_BIT
before using the results."
VK_PIPELINE_STAGE_TRANSFER_BIT will wait for compute to be idle,
while VK_ACCESS_TRANSFER_WRITE_BIT will invalidate both L1 vector
caches and L2. So, it's useless to set those flags internally.
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/vulkan/radv_query.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/src/amd/vulkan/radv_query.c b/src/amd/vulkan/radv_query.c index 57ea22fb847..4153dc2f679 100644 --- a/src/amd/vulkan/radv_query.c +++ b/src/amd/vulkan/radv_query.c @@ -755,10 +755,6 @@ static void radv_query_shader(struct radv_cmd_buffer *cmd_buffer, radv_unaligned_dispatch(cmd_buffer, count, 1, 1); - cmd_buffer->state.flush_bits |= RADV_CMD_FLAG_INV_GLOBAL_L2 | - RADV_CMD_FLAG_INV_VMEM_L1 | - RADV_CMD_FLAG_CS_PARTIAL_FLUSH; - radv_meta_restore(&saved_state, cmd_buffer); } |