SWDEV-502365 - Track last used command
- This change tries to save extra synchronization packets we may insert as we didnt track the completion signals for every command. We track the current enqueued command until it exits the enqueue stage. We also record the exit scope to know if we flushed the caches - Handle correct release scopes and store completion signal as HW events - Use a new finishCommand implementation to only wait for the command passed as the argument Change-Id: Ie4350c5dd24f5d48dfa6ccbabd892f0544caadcc
Este cometimento está contido em:
@@ -472,9 +472,9 @@ hipError_t ihipModuleLaunchKernel(hipFunction_t f, uint32_t globalWorkSizeX,
|
||||
if (stopEvent != nullptr) {
|
||||
hip::Event* eStop = reinterpret_cast<hip::Event*>(stopEvent);
|
||||
if (eStop->flags_ & hipEventDisableSystemFence) {
|
||||
command->setEventScope(amd::Device::kCacheStateIgnore);
|
||||
command->setCommandEntryScope(amd::Device::kCacheStateIgnore);
|
||||
} else {
|
||||
command->setEventScope(amd::Device::kCacheStateSystem);
|
||||
command->setCommandEntryScope(amd::Device::kCacheStateSystem);
|
||||
}
|
||||
// Enqueue Dispatch and bind the stop event
|
||||
command->enqueue();
|
||||
|
||||
Criar uma nova questão referindo esta
Bloquear um utilizador