Introduce new interface for reinitializing level zero device

This change introduce
- new method deviceReinit, which could be used, to reinitialize
existing level zero device.

Related-To: LOCI-2612

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
This commit is contained in:
Jitendra Sharma
2021-10-04 13:05:10 +00:00
committed by Compute-Runtime-Automation
parent afaef2b234
commit cfad41f28a
9 changed files with 103 additions and 14 deletions

View File

@@ -16,6 +16,15 @@
namespace L0 {
void DeviceImp::createSysmanHandle(bool isSubDevice) {
if (static_cast<DriverHandleImp *>(driverHandle)->enableSysman && !isSubDevice) {
if (this->getSysmanHandle() == nullptr) {
// Sysman handles are created only during zeInit time device creation. And destroyed during L0::device destroy.
this->setSysmanHandle(L0::SysmanDeviceHandleContext::init(this->toHandle()));
}
}
}
SysmanDevice *SysmanDeviceHandleContext::init(ze_device_handle_t coreDevice) {
SysmanDeviceImp *sysmanDevice = new SysmanDeviceImp(coreDevice);
DEBUG_BREAK_IF(!sysmanDevice);