fix: defer initialization of cross root device tag allocations

additional tag allocations are not needed before creating OCL contexts
with multiple root devices

Related-To: NEO-7634

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2023-01-13 10:36:23 +00:00
committed by Compute-Runtime-Automation
parent dff2c2d8e3
commit c4759884d8
6 changed files with 128 additions and 56 deletions

View File

@@ -245,6 +245,9 @@ bool Context::createImpl(const cl_context_properties *properties,
if (pDevice->getRootDeviceIndex() == rootDeviceIndex) {
deviceBitfield |= pDevice->getDeviceBitfield();
}
for (auto &engine : pDevice->getDevice().getAllEngines()) {
engine.commandStreamReceiver->ensureTagAllocationForRootDeviceIndex(rootDeviceIndex);
}
}
deviceBitfields.insert({rootDeviceIndex, deviceBitfield});
}