Related-to: NEO-13458
- With new IGC, ze-take-global-address is not needed to ensure global
pointers are allowed. Updates the error message to provide the
correct information on why the query failed and remove the requirement
check for the flag.
Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
- verifyDebugCapabilities() did not fail build when debug_env did not have
systemThreadSurfaceAddress defined
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
- when kernels share single allocation, LOAD address in program headers
should point to correct virtual address including kernel offset
Related-To: NEO-7788, GSD-9836
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
Related-To: NEO-11408
If downloadAllocation happens before makeResident,
such transfer might become outdated (zeroed out).
This commit fixes that by writing memory immediately
to tbx.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
Related-To: NEO-10258
Currently each module has it's own GA
for kernel ISA's. This change allows new modules to
reuse existing allocation.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
Invalidation is requested on both linux and windows,
on Csr's that used Isa allocation.
Related-To: NEO-10045
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
- check releaseHelper support when selecting bindless mode, if not
disabled, prefer bindless mode in L0 API
- bindless mode can be forced with DebugVariable: UseBindlessMode
Related-To: NEO-7063
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
Fixes logic errors:
* When kernel code-sections' allocations are optimized (placed on
a single page) then don't go to outer `else` branch if the section for
a given kernel has already been copied.
* When optimization is not in place for a given module then also skip
kernel code section copying if it has been already done
Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
If several kernel heaps are sharing the same page then use a temporary
buffer to collect all of them and transfer to memory in one shot.
Previously there were several transfers performed (one per kernel) and,
observably, they happened not to be immediately effective at times.
Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
So far, there is a separate page allocated for each kernel's ISA within
`KernelImmutableData::initialize()`. Apparently the ISA blocks are often
much smaller than a 64k page, which leads to poor memory utilization and
was even observed to cause the device OOM error if a single module has
several keys.
Improve the situation by reusing the parent allocation (owned by the
module instance) for modules, which kernel ISAs can fit together within
a single 64k page. This improves the memory utilization on a single
module level.
Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
So far, there is a separate page allocated for each kernel's ISA within
`KernelImmutableData::initialize()`. Apparently the ISA blocks are often
much smaller than a 64k page, which leads to poor memory utilization and
was even observed to cause the device OOM error if a single module has
several keys.
Improve the situation by reusing the parent allocation (owned by the
module instance) for modules, which kernel ISAs can fit together within
a single 64k page. This improves the memory utilization on a single
module level.
Related-To: NEO-7788
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
Enabling on pvc after patch in igc.
Enabling only for JIT kernels because AOT could have been compiled with
IGC older than required.
Related-To: NEO-7712
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
When there is a PRINT_DEBUG_MESSAGE message in module that is
applicable to the user, it is now also set to
Driver::zeDriverGetLastErrorDescription.
ULTs are also added to verify that setErrorDescription successfully
stores the error message.
Related-To: LOCI-4653
Signed-off-by: Zhang, Winston <winston.zhang@intel.com>