Commit Graph

358 Commits

Author SHA1 Message Date
Mateusz Hoppe 7cd9a2aa60 refactor: change name of variable
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-09-13 03:06:44 +02:00
Bartosz Dunajski 4f1262645b refactor: pass extra walker params
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-09-10 15:30:03 +02:00
Filip Hazubski beaddb55e0 fix: Minor code changes
Remove needless checks for module and cmdList.
Add explicit check for surfaceState in setArgImageWithMipLevel.
Explicitly initialize WddmResidencyController::csr.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-09-10 13:31:15 +02:00
Zbigniew Zdanowicz 0628d97ee1 feature: update processing kernel residency
- save position of kernel internal container when allocation can change
- reuse the same position when new allocation arrives
- add index container for additional allocation of image argument
- save position of additional allocation of image argument
- reuse position when for new image argument

Related-To: NEO-11719

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-09-09 14:10:02 +02:00
Fabian Zwoliński 38e1614f4a fix: create and use new allocation type for syncBuffer
Related-To: NEO-11533
Related-To: HSD-18039788811
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-09-06 14:11:33 +02:00
Mateusz Jablonski 14fd9f3f24 fix: correct using L0 loader functions
use zelLoaderTranslateHandle for translating handle to internal handle
get pointer to zelSetDriverTeardown during global ctor
don't load loader library by name
get loader function pointers directly from current process

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-04 17:30:25 +02:00
Mateusz Jablonski 7adfa344c0 performance: get reference from getBindlessInfo
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-03 12:50:52 +02:00
Mateusz Hoppe d5e275cb49 performance: optimize surface state programming
- eliminate read-modify-write on gfx memory when global bindless mode
enabled

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-09-02 15:31:30 +02:00
Fabian Zwoliński 6a50320f3c fix: use gpuAddress when patching sync buffer
Related-To: NEO-11533
Related-To: HSD-18039788811
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-08-28 17:47:35 +02:00
Mateusz Jablonski d45c16dfc2 fix: add fallback for invalid handles in extension functions
handle context, commandlist, driver, device, event, image and kernel handles

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-28 17:22:35 +02:00
Mateusz Hoppe c9e8931a18 fix: global bindless offsets for implicit args
- do not patch bindless offsets for implicit args in with global bindless
allocator, the offsets are patched at kernel initialization time and
do not change

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-23 13:21:27 +02:00
Winston Zhang 0590b34cfa feature: refactor and rewrite setErrorDescription
Related-To: NEO-8379

Signed-off-by: Winston Zhang <winston.zhang@intel.com>
2024-08-21 17:26:25 +02:00
Dominik Dabek ad229377b9 fix: disable indirect detection if any stack calls
Don't know if kernels will be initialized in the order needed to check
for indirect accesses in stack calls.

Remove now unused functionPointerWithIndirectAccessExists and reading
this value from zebin.

Related-To: NEO-12235

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-08-07 14:48:58 +02:00
Fabian Zwoliński b1a50104a8 fix: include dynamic SLM in clGetKernelWorkGroupInfo and zeKernelGetProperties
Current implementation only takes static slmInlineSize into account.
With this change we also include dynamic SLM passed as a kernel arguments.

Related-To: NEO-5761
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-07-30 17:59:45 +02:00
Zbigniew Zdanowicz 42bf58a800 refactor: do not add all mapped physical allocations to kernel residency
Related-To: NEO-11719

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-07-24 15:43:48 +02:00
Zbigniew Zdanowicz 1c1e437d4b refactor: split kernel residency into internal and argument containers
Related-To: NEO-11719

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-07-23 17:22:16 +02:00
Zbigniew Zdanowicz f61ab615e7 refactor: do not add bindless heaps to kernel residency
Related-To: NEO-11719

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-07-22 22:44:30 +02:00
Mateusz Hoppe 4c49a08017 feature: add inline samplers bindless addressing support
- inline samplers in bindless addressing mode requires bindless offset
passed in cross thread data

Related-To: NEO-11748

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-06-24 13:02:08 +02:00
Bartosz Dunajski 692def2c79 feature: region group barrier allocation support
Related-To: NEO-11031

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-03 18:34:54 +02:00
Zbigniew Zdanowicz 3e1d276233 fix: add missing new line character in print log
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-05-23 17:51:15 +02:00
Zbigniew Zdanowicz 294c3b77ba refactor: add level zero console logging for kernel buffer arguments
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-05-23 11:01:38 +02:00
Dominik Dabek ae8c7589dc refactor: move implicit arg has indirect access
Move implicit arg has indirect access boolean to kernelAttributes

Related-To: NEO-11396

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-05-15 13:11:04 +02:00
Dominik Dabek fd47030ad6 fix: use igc indirect detection v3
Update to use igc indirect detection v3. Fix for not detecting indirects
passed as implicit arguments.

Related-To: NEO-11396

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-05-15 06:35:42 +02:00
Mateusz Hoppe 76af952fcb feature: Bindless sampled image support
Related-To: NEO-10352

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-05-08 17:50:37 +02:00
John Falkowski f1c2ea0b69 fix: kernel access to multiple stateful virtual regions
Related-to: NEO-8350

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2024-04-26 11:18:24 +02:00
Compute-Runtime-Validation 04c32d9e4e Revert "fix: allow kernel access across multiple virtual regions"
This reverts commit b9c1ef65dd.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-04-24 04:00:15 +02:00
John Falkowski b9c1ef65dd fix: allow kernel access across multiple virtual regions
Related to: NEO-8350

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2024-04-23 18:20:52 +02:00
Zbigniew Zdanowicz c60b19a8ba fix: use required walk order when local ids are software generated
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-04-19 08:48:30 +02:00
Zbigniew Zdanowicz 96347c7847 fix: reset per thread size after local id hw generation enabled
Related-To: NEO-10066

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-04-17 14:16:06 +02:00
Mateusz Hoppe f86d4220a5 feature: add bindless samplers support to level zero
- samplers using bindless adressing require patching bindless offsets to
sampler states on kernel's cross thread data

Related-To: NEO-10505

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-03-29 08:07:28 +01:00
Katarzyna Cencelewska da7b03dd15 fix: to always use grfs count in calculateNumThreadsPerThreadGroup
grf size != grf count

Related-To: GSD-8437
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-03-22 11:03:18 +01:00
Katarzyna Cencelewska dd1d52259e refactor: add param rootDeviceEnvironment to calculateNumThreadsPerThreadGroup
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-03-21 22:25:14 +01:00
Zbigniew Zdanowicz b3be51fc35 refactor: add checker for stateless only kernels
Related-To: NEO-10381

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-03-21 21:54:55 +01:00
Mrozek, Michal f71f6d2b72 refactor: remove not needed code
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2024-03-08 18:18:55 +01:00
John Falkowski cebedb50c7 feature: get kernel max group size
Implementing support for ze_kernel_max_group_size_ext_properties_t

Resolves: NEO-9617

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2024-02-27 08:40:55 +01:00
Dunajski, Bartosz 5085300449 feature: query to get kernel/module register sizes
Related-To: NEO-7357

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-02-15 13:00:00 +01:00
Fabian Zwolinski f55cb596c7 fix: remove unnecessary allocation add to residencyContainer
Image implicit args allocation is not related to redescribed image
and is already added to the residencyContainer in setArgImage.

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-02-02 16:26:33 +01:00
Mateusz Jablonski a697a3f718 refactor: create new members for storing spill and private memory in scratch
rename private scratch space into scratch space slot 1 as it can be generic

Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-23 12:42:25 +01:00
Compute-Runtime-Validation f9f9035b95 Revert "refactor: create new members for storing spill and private memory in ...
This reverts commit 87eb5f554a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-01-23 09:13:00 +01:00
Mateusz Jablonski 87eb5f554a refactor: create new members for storing spill and private memory in scratch
rename private scratch space into scratch space slot 1 as it can be generic

Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-22 19:48:48 +01:00
Dunajski, Bartosz b77e1a6a71 feature: improve reporting max cooperative group count
Related-To: NEO-8210

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-01-22 14:56:15 +01:00
Dunajski, Bartosz 6f4ed10919 refactor: unify getMaxWorkGroupCount logic
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-01-22 11:16:45 +01:00
Dominik Dabek e0ccf22557 fix: indirect access in external functions
Read indirect_stateless_count in module external functions.

If greater than 0, mark all kernels that have the has_stack_calls flag
set from this module as having indirect accesses.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-01-18 15:29:41 +01:00
Dominik Dabek b3b402cad2 feature(zebin): read indirect detection version
Read indirect detection version intel compat notes from zebin.

This is to prepare for enabling indirect access optimization in AOT
built kernels.

Related-To: NEO-7712

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-01-12 14:20:52 +01:00
Fabian Zwolinski a3bd629aff fix: store image implicit args in bindless slot 1
bindless slot 0: image
bindless slot 1: image implicit args
bindless slot 2: redescribed image

Redescribed image moved one slot higher.
Separate allocation is created for new bindless slot.

Related-To: NEO-9740
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-01-12 13:09:06 +01:00
Fabian Zwolinski 903e581b5f fix: add support for bindless implicit args
Support for:
global_base and const_base in bindless addressing mode.

Related-To: NEO-9855
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-01-12 01:27:17 +01:00
Mateusz Jablonski a73fb4d2fe fix: correct reporing kernel private size on L0
unify the logic across APIs

Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-09 09:54:05 +01:00
Compute-Runtime-Validation f2c9d7172a Revert "fix: store image implicit args in bindless slot 1"
This reverts commit b6d572ddb8.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-12-23 12:01:42 +01:00
Dunajski, Bartosz f17f45d63f feature: initial support for patching region params
Related-To: NEO-8070

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-20 21:38:39 +01:00
Fabian Zwolinski b6d572ddb8 fix: store image implicit args in bindless slot 1
bindless slot 0: image
bindless slot 1: image implicit args
bindless slot 2: redescribed image

Redescribed image moved one slot higher.
Separate allocation is created for new bindless slot.

Related-To: NEO-9740
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-12-20 19:09:14 +01:00