Commit Graph

3120 Commits

Author SHA1 Message Date
Zbigniew Zdanowicz
bc68b70b40 fix: perform full host synchronization upon immediate cmdlist destruction
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-10 22:00:44 +01:00
Zbigniew Zdanowicz
fc770cacf2 feature: enable dispatch primary batch buffer from immediate
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-10 17:33:34 +01:00
Raiyan Latif
80168b194f refactor: Set external semaphore version in L0
Related-To: NEO-14295

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2025-03-08 01:57:15 +01:00
Zbigniew Zdanowicz
f8be8414ac feature: add support for wait event preamble in append command list
- add mechanism in queue to trigger start command from queue to regular
- add detection in immediate command list need to dispatch extra start in queue
- fix secondary linear stream in immediate case as it should not use container
- modify tests for primary batch buffer dispatch as default mode
- remove invalid or obsolete tests

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-07 20:31:09 +01:00
Maciej Plewka
c5e1fcf313 fix: Copy tiled 1D array per array element with BLT
Related-To: NEO-14147, HSD-14024424096, HSD-14024424178
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-03-07 17:29:04 +01:00
Matias Cabral
7cc2db3a32 feature: metrics group calculate properties
Resolves: NEO-13993

Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2025-03-06 23:01:26 +01:00
Zbigniew Zdanowicz
2b370f6a6f feature: handle passing separate epilogue immediate command buffer
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-06 14:52:34 +01:00
Zbigniew Zdanowicz
bb61dafd72 feature: add support for local memory in check available space
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-06 14:52:19 +01:00
Zbigniew Zdanowicz
566e52f72b feature: add main lock for both execute and flush
- both execute and flush have their own locks
- spliting these locks makes race condition
- obtain lock at higher level
- do not lock in queue when calling execute from immediate
- pass main lock to flush so can be unlocked before synchronize

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-05 18:40:49 +01:00
Kamil Kopryk
4c795027e3 refactor: add check if event L3 flush is needed
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-05 18:25:29 +01:00
Lukasz Jobczyk
c1a986c71c performance: Signal inOrder counter with pipe control, part 8
Allow wait for in order allocation when latest submit does not have
optmized counter based event.

Resolves: HSD-18041399091
Related-To: NEO-13441

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-03 14:39:18 +01:00
Zbigniew Zdanowicz
f4f779f5b2 feature: save parent immediate cmdlist stream as starting stream
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-03 12:06:55 +01:00
Compute-Runtime-Validation
84eafda460 Revert "feature: add main lock for both execute and flush"
This reverts commit a8ea63d638.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-01 03:44:32 +01:00
Zbigniew Zdanowicz
d344c1cb69 fix: flush task count in copy engine when immediate command list is required
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-02-28 17:12:54 +01:00
Zbigniew Zdanowicz
a8ea63d638 feature: add main lock for both execute and flush
- both execute and flush have their locks, but split makes race condition
- save start stream processed by queue, so immediate can use it in flush

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-02-28 15:29:33 +01:00
Zbigniew Zdanowicz
cae3bb1d0a feature: add internal interfaces to manage all dispatch models of command lists
- add new enum type for command list flush from immediate
- add new argument for flushing immediate command list - regular command list
- add capability to provide additional stream for epilogue commands
- add pointer to provide external csr mutex to lock both execution and flush

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-02-28 12:02:22 +01:00
Zbigniew Zdanowicz
b3e10a3d16 fix: correct estimation for command queue stream in heapless mode
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-02-28 11:46:00 +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
Chodor, Jaroslaw
aa0075a845 refactor: L0 module input handling refactor
Related-To: NEO-14135

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-02-26 14:32:23 +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
Filip Hazubski
51f275dc09 performance: Pass argument by reference in MapBasedAllocationTracker::insert
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-25 15:39:58 +01:00
Bartosz Dunajski
e2ecdb8e51 fix: correct allocation handling for increment CB event
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-25 13:23:06 +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
Lukasz Jobczyk
beb859a53a performance: Signal inOrder counter with pipe control, part 7
On non DC flush platforms without heapless, use pipe control to handle in order
implicit dependencies only when latest append has optimized counter
based event.

Resolves: HSD-18041394395, HSD-18041399091
Related-To: NEO-13441

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-25 10:21:14 +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
Kamil Kopryk
7c3468794e fix: add option to enable/disable heapless in ocloc
Related-To: GSD-10681
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-24 17:06:26 +01:00
Mateusz Jablonski
b10c6b4703 feature: add global driver dispatch as prework for DDI handles extension support
As per DDI handles extension, global ddi table pointers will be included
in every L0 handle.

This change is focused on initialization of the global objects and reuse
of them within zeGet...ProcAddrTable functions to avoid duplication
of per component ddi table definitions

Related-To: NEO-13121, NEO-13917
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-24 15:46:51 +01:00
Bartosz Dunajski
546e8fa230 feature: dont reset combined TS packets
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-21 14:52:01 +01:00
Bartosz Dunajski
0b34ed6793 fix: disable copy offload for dcFlush platforms
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-21 13:06:49 +01:00
Mateusz Hoppe
24ed89ed24 refactor: simplify debug attach capability detection
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-21 12:10:40 +01:00
Compute-Runtime-Validation
9d249580fa Revert "feature: add global driver dispatch as prework for DDI handles extens...
This reverts commit dce4ca8ce7.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-21 01:52:55 +01:00
Bartosz Dunajski
85b0d1f84d fix: clear all TS packets for combined CB event
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-20 19:24:15 +01:00
Bartosz Dunajski
c637431157 feature: signal correct TS node for combined CB Event
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-20 19:24:00 +01:00
Mateusz Jablonski
dce4ca8ce7 feature: add global driver dispatch as prework for DDI handles extension support
As per DDI handles extension, global ddi table pointers will be included
in every L0 handle.

This change is focused on initialization of the global objects and reuse
of them within zeGet...ProcAddrTable functions to avoid duplication
of per component ddi table definitions

Related-To: NEO-13121, NEO-13917
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-20 17:44:36 +01:00
Mateusz Jablonski
3e45cf2a6c feature: add debug key to expose L0 DDI Handles extension
Related-To: NEO-13121, NEO-13917
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-20 17:24:33 +01:00
Bartosz Dunajski
20191f4ccf feature: handle combined CB event TS residency and reset
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-20 11:11:14 +01:00
Fabian Zwoliński
bf20ae7ae8 fix: configure ISA Pool params based on productHelper
When is2MBLocalMemAlignmentEnabled returns true,
increase pool size for builtins from 64k to 2MB.

Additionally, set appropriate alignment for kernel ISA heap allocations.
Additionally, configure isaAllocationPageSize based on productHelper

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-20 08:42:35 +01:00
Filip Hazubski
4be1153253 fix: Remove pragma once from inl files
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 20:19:15 +01:00
Bartosz Dunajski
ee6dbfc011 feature: combined CB event profiling support
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-18 16:44:07 +01:00
Mateusz Hoppe
aed5b6c22a refactor: add validateLaunchParams() function
Related-To: NEO-13954

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-18 15:15:01 +01:00
Filip Hazubski
6b2b42972a fix: Add asserts to ensure NonCopyable and NonMovable 1/n
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 09:41:20 +01:00
Compute-Runtime-Validation
72a5e52385 Revert "refactor: add validateLaunchParams() function"
This reverts commit aafefda74f.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-18 08:02:04 +01:00
Mateusz Jablonski
87f4cd8e83 feature: expose separate L0 driver handle per product family in Core/Tools path
Related-To: NEO-14062
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-17 18:54:07 +01:00
Mateusz Hoppe
aafefda74f refactor: add validateLaunchParams() function
Related-To: NEO-13954

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-17 17:06:41 +01:00
Lukasz Jobczyk
84eaca3330 fix: Restore wait for inOrder counter in heapless mode
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-17 16:11:45 +01:00
Filip Hazubski
4c7900008f refactor: Change wording from NonCopyableOrMovable to NonCopyableAndNonMovable
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-17 14:19:10 +01:00
Filip Hazubski
855581d03d fix: Add assert that ExternalSemaphoreController is NonCopyableOrMovable
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-17 10:43:35 +01:00
Maciej Bielski
6924a48ca6 refactor: prepare CLOS logic for extension
Prepare cache setup and reservation logic to be extended w.r.t other
cache-levels.

Conceptually this change is like adding a switch-statement, in several
places, in which existing code makes a single (and only) case. This is
caused by splitting larger development to ease the review. Further cases
will be added in following steps. Such approach sometimes creates code
which may seem redundant but it is meant to simplify plugging following
extensions in an easy way.

Related-To: NEO-12837
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-02-17 10:43:08 +01:00
Lukasz Jobczyk
356d89d608 performance: Disable USM cleaner for ULLS light
Realted-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-14 12:38:16 +01:00
Kamil Kopryk
899abf3aac feature: add NonCopyableOrMovable and NonCopyable concepts
Inheriting from NonCopyableOrMovableClass or NonCopyableClass
does not prevent derived classes from accidentally defining
their own copy or move constructors, violating the intended design.

This commit introduces two concepts:
- NonCopyableOrMovable
- NonCopyable

Using static asserts with these concepts will guarantee the intended
copy and move limitations.

Related-To: NEO-14068
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-14 03:55:50 +01:00