path: root/src/amd/vulkan/si_cmd_buffer.c
diff options
authorDave Airlie <>2017-02-10 00:20:44 +0000
committerDave Airlie <>2017-02-13 20:00:28 +0000
commit8b47b97215af7157bc15676167cab73aa5a61a76 (patch)
tree451ff29b67e73101485e0d4a90238965e71ead45 /src/amd/vulkan/si_cmd_buffer.c
parentd49d275c415d60ae08dc3e52d8db11f19a44010f (diff)
radv: detect command buffers that do no work and drop them (v2)
If a buffer is just full of flushes we flush things on command buffer submission, so don't bother submitting these. This will reduce some CPU overhead on dota2, which submits a fair few command streams that don't end up drawing anything. v2: reorganise loop to count first then malloc, rename some vars (Bas) Reviewed-by: Bas Nieuwenhuizen <> Signed-off-by: Dave Airlie <>
Diffstat (limited to 'src/amd/vulkan/si_cmd_buffer.c')
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/vulkan/si_cmd_buffer.c b/src/amd/vulkan/si_cmd_buffer.c
index 1c99b2282c6..b94c1f10797 100644
--- a/src/amd/vulkan/si_cmd_buffer.c
+++ b/src/amd/vulkan/si_cmd_buffer.c
@@ -828,7 +828,7 @@ static void si_emit_cp_dma_clear_buffer(struct radv_cmd_buffer *cmd_buffer,
static void si_cp_dma_prepare(struct radv_cmd_buffer *cmd_buffer, uint64_t byte_count,
uint64_t remaining_size, unsigned *flags)
+ cmd_buffer->no_draws = false;
/* Flush the caches for the first copy only.
* Also wait for the previous CP DMA operations.