Commit Graph

429 Commits

Author SHA1 Message Date
Naklicki, Mateusz
0c619299d0 refactor: cleanup header includes in level_zero
Related-To: NEO-15383
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2025-10-07 19:58:31 +02:00
Maciej Bielski
a440a3e8ea refactor: use Clonable type for pImplicitArgs
Clonable is a helper type which eases proper management of
dynamically-allocated resources. It allows to reduce the amount of
manual handling.

Related-To: NEO-16017
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-09-29 15:34:24 +02:00
Jaroslaw Warchulski
195bf66a49 refactor: fix typos
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-09-22 12:46:41 +02:00
Maciej Bielski
d68cfab86c performance: R&R - optimize appendLaunchKernel family
Related-To: NEO-16017
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-09-17 17:10:55 +02:00
Naklicki, Mateusz
4ae656e2ce feature: include kernel details on graph dump
Related-To: NEO-15377
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2025-09-11 16:32:05 +02:00
Vysochyn, Illia
f4bd4e603d refactor: Use else if instead of nested else-if conditions
Replaces nested else-if with else if for consistency and readability.
No functional changes.

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2025-09-11 16:20:59 +02:00
Maciej Bielski
91a4809a79 refactor: move Kernel data members to KernelImp::sharedState
The class Kernel is abstract and as such it should not have any members.
Move its members to sharedState as this is what they represent.

Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-29 16:40:40 +02:00
Maciej Bielski
25fd35d9df refactor: move state-members of KernelImp to KernelSharedState
These members are common for all clones of a given KernelImp instance,
thus can be shared via shared_ptr (instead of being copied);

Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-29 11:24:16 +02:00
Maciej Bielski
5a31d4f237 refactor: rename KernelImp::state to ::privateState
A step towards better kernel's state encapsulation.

Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-28 15:23:43 +02:00
Fabian Zwoliński
a2f60af5c6 fix: change global Var/Const Buffer type to SharedPoolAllocation
This is prep work for the future implementation of pooling these allocations.

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-08-19 17:29:34 +02:00
Maciej Bielski
d6a7468246 refactor: dynamicStateHeapData as std::vector
Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-13 11:00:22 +02:00
Maciej Bielski
581cd3bbdf refactor: surfaceStateHeapData as std::vector
Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-11 15:10:15 +02:00
Maciej Bielski
fe174328eb refactor: crossThreadData as std::vector
Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-08 18:44:07 +02:00
Michal Mrozek
52e413f69e performance: reuse allocation data if available
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-08-08 09:36:35 +02:00
Michal Mrozek
f85e4935e2 performance: reuse allocData if available
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-08-07 18:26:36 +02:00
Mateusz Hoppe
b7a73653a2 fix: set sync buffer ptr in implicit args
Related-To: NEO-15737

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-08-04 14:22:46 +02:00
Maciej Bielski
a0231c2d22 feature: allow for cloning KernelImp instances
From the `cloneWithStateOverride()` perspecitve the `KernelImp` has
two logical parts handled differently:
- `KernelMutableState`: separate for both regular and cloned instances,
may be optionally overriden when cloning
- rest: separate for regular instances but shared with all clones
(shallow copy), the original instance owns these resources

Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-08-01 11:51:45 +02:00
Maciej Bielski
c396367411 feature: Record&Replay support for appendLaunchKernel
Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-07-28 12:19:30 +02:00
Mateusz Hoppe
be483491bf feature: extract indirect access buffer major version from ELF's notes
- use version from ELF to create correct layout of implcit args
Related-To: NEO-15574

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-07-25 14:50:49 +02:00
Maciej Bielski
a755ad131d feature: implement KernelMutableState operator=
Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-07-25 14:37:04 +02:00
Mateusz Hoppe
575fe7fe33 fix: remove local dispatch support
Related-To: NEO-14561

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-07-24 10:31:18 +02:00
Compute-Runtime-Validation
357fd3108e Revert "refactor: move surface state programming method to base class"
This reverts commit 5893fb08fb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-07-23 04:37:46 +02:00
Zbigniew Zdanowicz
5893fb08fb refactor: move surface state programming method to base class
Related-To: NEO-15374

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-07-22 19:09:03 +02:00
Mateusz Hoppe
b17ed79618 fix: update implicitArgs versions
- fix layout of implicit args
- add enqueued local size and sync buffer ptr

Related-To: NEO-15160

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-07-22 15:12:55 +02:00
Maciej Bielski
35ecde70df refactor: extract parts of KernelImp data for easier capturing
`KernelImp` is virtual class so capturing the current kernel state
cannot be done by a simple copy-instance of the class. However, this can
be done by extracting the relevant data to a separate class and
capturing a copy of its instance.

Related-To: NEO-15374
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-07-17 23:00:22 +02:00
Zbigniew Zdanowicz
ef5efeac0c refactor: add kernel properties and move implementations to imp class
Related-To: NEO-15374

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-07-15 15:08:44 +02:00
Zbigniew Zdanowicz
442c11b5ba feature: add mutable command list implementation
Related-To: NEO-10492

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-06-25 16:32:08 +02:00
Mateusz Hoppe
b7580a3998 fix: store image arg size in kernel descriptor
- use arg size when patching bindless offset

Related-To: HSD-18042502539

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-06-23 13:37:44 +02:00
Kamil Kopryk
cdf087f3da fix: correct bindless offsets for L0 bindless images extension with heapless
Related-To: NEO-14710
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-06-16 11:50:18 +02:00
Damian Tomczak
5cd1423bab feature: packed surface format
Resolves: NEO-13669

Signed-off-by: Damian Tomczak <damian.tomczak@intel.com>
2025-06-12 17:32:16 +02:00
Mateusz Hoppe
534f7837fe refactor: add validateWorkgroupSize() method
Related-To: NEO-14209

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-06-11 18:17:57 +02:00
Compute-Runtime-Validation
9fd521f471 Revert "refactor: add validateWorkgroupSize() method"
This reverts commit 708b81bab5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-06-07 17:25:49 +02:00
Mateusz Hoppe
708b81bab5 refactor: add validateWorkgroupSize() method
Related-To: NEO-14209

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-06-06 09:45:45 +02:00
Bartosz Dunajski
d9ec4b1a18 refactor: improve thread data size getter
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-06-04 11:27:56 +02:00
Chodor, Jaroslaw
46c60290b9 refactor: introducing igfxfmid_wrapper
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-05-30 19:26:04 +02:00
Katarzyna Cencelewska
e357e7e404 fix: correct limitation for num threads per thread group
taking into account the max work group limit
when simd1 don't use the same limitation as for simd32

Resolves: NEO-14922
Related-To: NEO-11881
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2025-05-29 16:34:40 +02:00
Compute-Runtime-Validation
593c9e76f2 Revert "fix: correct limitation for num threads per thread group"
This reverts commit 6ad4ad41b1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-23 02:51:17 +02:00
Katarzyna Cencelewska
6ad4ad41b1 fix: correct limitation for num threads per thread group
taking into account the max work group limit

Resolves: NEO-14922
Related-To: NEO-11881
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2025-05-22 00:06:21 +02:00
Mateusz Jablonski
0dd2535674 refactor: change type of stype member in L0 Core driver extensions
use uint32_t-alias type to avoid casting out of ze_structure_type_t enum range
Related-To: NEO-12901

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-18 15:02:31 +02:00
Vysochyn, Illia
146a7f7b9b feature: Add support for BUFFER_SIZE explicit argument
Related-To: NEO-13972

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2025-04-07 14:15:26 +02:00
Filip Hazubski
504440fc4d feature: Add ftrHeaplessMode flag
Pass hwInfo to isHeaplessModeEnabled and isForceBindlessRequired functions.

Related-To: NEO-14526

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-04-02 21:06:05 +02:00
Mateusz Jablonski
2394f9fd91 feature: update base layout of L0 handles to match ze_handle_t layout
this layout is required by L0 DDI Handle extension

Related-To: NEO-13121, NEO-13917
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-03-28 14:40:20 +01:00
Szymon Morek
ead0842763 feature: add L0 API to query kernel argument info
Related-To: NEO-14358

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-27 16:43:33 +01:00
Szymon Morek
f8ae044db9 fix: correctly set workgroup size for kernels
Related-To: NEO-14367

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-17 14:53:17 +01:00
Kamil Kopryk
2c77d2c698 refactor: add SetMaxBVHLevels debug flag
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-14 16:59:48 +01:00
Kamil Kopryk
c23f3c0666 fix: correct programming inline samplers with bindless addressing L0
Related-To: NEO-14216
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-12 09:01:29 +01:00
Mateusz Hoppe
7aee5e1b7e refactor: extend patchRegionParams with group count
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-27 11:54:18 +01:00
Compute-Runtime-Validation
9785e5c11e Revert "feature: update base layout of L0 handles to match ze_handle_t layout"
This reverts commit 276c606329.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-26 02:37:14 +01:00
Mateusz Hoppe
291745cdf7 feature: add support for ImplicitArgs versioning
- define ImplicitArgs version 1

Related-To: NEO-14115

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-25 10:27:11 +01:00
Mateusz Jablonski
276c606329 feature: update base layout of L0 handles to match ze_handle_t layout
this layout is required by L0 DDI Handle extension

Related-To: NEO-13121, NEO-13917
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-25 01:23:43 +01:00