Join thread in DllMain (which we are not aware of)
can result in hang occurring in DeferredDeleter, if the library is
freed before FreeLibraryAndExitThread call from within the worker thread,
the thread gets stuck, thus the main thread is stuck on worker->join().
Related-To: NEO-14121
Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
Join thread in DllMain (which we are not aware of)
can result in hang occurring in DeferredDeleter, if the library is
freed before FreeLibraryAndExitThread call from within the worker thread,
the thread gets stuck, thus the main thread is stuck on worker->join().
Related-To: NEO-14121
Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
Related-To: NEO-13715
Implements basic functionality for zeCommandListAppendMemoryAdvise for
system allocator
Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
Return early and provide justification, otherwise SIGBUS error is
returned.
Related-To: NEO-14506
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
Align local memory allocations of tag types to 2MB when
2MB alignment is enabled via the product helper
(is2MBLocalMemAlignmentEnabled flag).
Refactored the allocateGraphicsMemoryInDevicePool function to improve
readability and maintainability. Simplified the logic for
determining base size and final alignment by reducing redundant code.
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
If some operatioins requires ULLS light stop, execute such operations
under mutex in pair with ULLS stop to ensure no other thread will start
ULLS.
Related-To: NEO-14406, NEO-13922
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
-skip bo::wait if completion fence not needed
-do not restart exec on evict
Related-To: NEO-13922
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
For the Xe driver, a single tile can have multiple gts. Now the Engine
handles are created for multiple gts available on the single tile as in
the case for the Xe driver.
Related-To: NEO-14401
Signed-off-by: Pratik Bari <pratik.bari@intel.com>
Previously i915 was using a sysfs node to query the amount of local
memory of a tile. For xe such sysfs node does not exist so the function
was useless.
Instead of a sysfs node, leverage the local memory size present in
MemoryInfo (queried at init-stage) so that the output is now the same
for both i915 and xe.
Related-To: NEO-11127
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
Related-To: NEO-13843
DrmMemoryOperationsHandler::mutex is used for residency
handling.
However, this mutex is not being locked during eviction when vm bind
failed.
This is causing races for example when ULLS controller wants to make
resources resident, and user thread wants to evict
them.
Fix is to explicitly obtain lock in problematic path.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
i915 has provided the low latency hint interface, it helps
improve the performance for light workload a lot.
Related-To: NEO-14250
Signed-off-by: Chuansheng Liu <chuansheng.liu@intel.com>