Commit Graph

348 Commits

Author SHA1 Message Date
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
Mateusz Jablonski 138fb65401 refactor: correct naming of enum class constants 11/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 14:52:57 +01:00
Mateusz Jablonski dd1b9d6abc refactor: correct naming of enum class constants 8/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 08:18:18 +01:00
Dunajski, Bartosz d99104d5bf refactor: improve ImplicitArg struct handling
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-18 15:19:00 +01:00
Mateusz Jablonski 8c90350f3c refactor: correct naming of enum class constants 5/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 10:06:02 +01:00
Mateusz Jablonski 432142c574 refactor: correct naming of enum class constants 4/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 08:08:51 +01:00
Mateusz Jablonski b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Mateusz Jablonski 6849d33326 refactor: remove redundant definitions KB/MB/GB
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 08:55:18 +01:00
Mateusz Hoppe 8056476d8d fix: program binding table for bindless kernels
- if binding table entries are used in bindless kernel, program Binding
table

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-12-01 19:54:10 +01:00
Mateusz Jablonski c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Lu, Wenbin 37deaf1ae5 fix: serialize printf kernel accesses using device-wise locks
Related-To: LOCI-4114

Signed-off-by: Lu, Wenbin <wenbin.lu@intel.com>
2023-11-27 10:42:51 +01:00