Fix gang item wait on dependency signals

Gang items have to wait on dependency signals as well as the leader.
Copies should not start if shaders are still operating on memory
to be copied.

Change-Id: I99703b420045ebcba2c9da39ec64678129dc140f


[ROCm/ROCR-Runtime commit: ed260ea970]
Αυτή η υποβολή περιλαμβάνεται σε:
Jonathan Kim
2024-02-27 12:37:17 -05:00
γονέας a0ebf06e6e
υποβολή 1e46d28ee6
@@ -963,10 +963,9 @@ hsa_status_t GpuAgent::DmaCopy(void* dst, core::Agent& dst_agent,
hsa_status_t stat;
size_t chunk = std::min(remainder_size, (size + gang_factor - 1)/gang_factor);
if (!blit->GangLeader() && !gang_signals.empty()) {
std::vector<core::Signal*> dep_signals_null(0); // only leader has to wait on dependencies
stat = blit->SubmitLinearCopyCommand(reinterpret_cast<uint8_t*>(dst) + offset,
reinterpret_cast<const uint8_t*>(src) + offset,
chunk, dep_signals_null,
chunk, dep_signals,
*gang_signals[gang_sig_count], gang_signals);
gang_sig_count++;
} else {