shader: materialize exact buffer capacity through shared clean reads

Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com>
This commit is contained in:
nmzik
2026-10-04 11:42:09 +04:00
parent 92ac54a493
commit 3ba0e971e9
15 changed files with 333 additions and 176 deletions
@@ -306,10 +306,7 @@ void RenderExecutor::DispatchDirect(uint64_t submit_id, CommandBuffer& buffer,
std::copy(std::begin(input_info.dispatch_threads_num), std::end(input_info.dispatch_threads_num),
bindings.shader_data.begin() + program.bindings.dispatch_thread_dword);
}
const auto dispatch_threads_x = use_thread_dimensions
? uint64_t{input_info.dispatch_threads_num[0]}
: uint64_t{thread_group_x} * input_info.threads_num[0];
FindBuffers(bindings, dispatch_threads_x, input_info.threads_num[0]);
FindBuffers(bindings);
if (program.info.uses_dma) {
m_context.PrepareBda();
}