Commit Graph

192 Commits

Author SHA1 Message Date
Grochowski, Stanislaw
e652679b95 fix: correct pollForCompletion in aub on program termination
Related-To: NEO-14867

Signed-off-by: Grochowski, Stanislaw <stanislaw.grochowski@intel.com>
2025-07-17 12:59:00 +02:00
Grochowski, Stanislaw
8180e95e0f fix: ensure pollForCompletion in aub on program termination
Related-To: NEO-14867

Signed-off-by: Grochowski, Stanislaw <stanislaw.grochowski@intel.com>
2025-07-10 08:32:00 +02:00
Szymon Morek
6a7f6f1ad6 fix: add noexcept to move operators
Without it, copy operator is selected, even if move is explicitly defined.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-06-09 10:32:23 +02:00
Mateusz Hoppe
0d57dcfdf0 feature: add L0 API querying priority levels - zeDeviceGetPriorityLevels()
Related-To: NEO-14572

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-23 09:24:16 +02:00
Lukasz Jobczyk
df2c776aab refactor: Remove unused cmdq round robin engine assign
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-09 11:03:57 +02:00
Dominik Dabek
75e313ce28 feature: prepare for l0 usm device pooling
Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-04-28 14:55:03 +02:00
Brandon Yates
4651e72b0b fix: Fail device init if kernel debugging is misconfigured
Also print error to stderr

Related-to: GSD-10780

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-04-02 21:06:30 +02:00
Fabian Zwoliński
7ef3880793 feature: implement pool allocator for gpuTimestampDeviceBuffer
The patch applies to Level Zero.
Only allocations < 2MB will be fetched from the pool.
Allocations are shared and reused within a given device.

Additionally, I added a new debug flag to control the allocator:
EnableTimestampPoolAllocator

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-04-02 14:28:56 +02:00
Lukasz Jobczyk
0a11a96a53 refactor: Add dedicated method to check if any ULLS light enabled
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-31 16:36:20 +02:00
Dominik Dabek
915d657420 fix: flag to limit usm reuse based on memory usage
Host usm and device usm for igfx checks system memory usage.
Device usm for dgfx checks local memory usage.

If used memory is above limit threshold:
- no new allocations will be saved for reuse
- cleaner will use shorter hold time of 2 seconds
- cleaner will free all eligible allocations, regardless of async
deleter thread having work

Motivation: in case of gfx memory being full, making resident new
allocations will require evictions which leads to massive slowdown on
enqueue calls.
This change aims to minimize cases where extra memory usage from usm
reuse mechanism leads to above situation.

Related-To: NEO-6893, NEO-14160

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-03-27 10:25:19 +01:00
Compute-Runtime-Validation
a89113fa1a Revert "fix: Fail device init if kernel debugging is misconfigured"
This reverts commit c122bc51f9.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-26 13:27:12 +01:00
Brandon Yates
c122bc51f9 fix: Fail device init if kernel debugging is misconfigured
Also print error to stderr

Related-to: GSD-10780

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-03-25 20:40:25 +01:00
Jitendra Sharma
dda7876d3a feature: Introduce SipClassType::externalLib
Related-To: NEO-13737
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2025-03-19 11:06:03 +01:00
Compute-Runtime-Validation
6ee39ed94c Revert "fix: Fail device init if kernel debugging is misconfigured"
This reverts commit b0c92ea425.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-10 12:23:07 +01:00
Brandon Yates
b0c92ea425 fix: Fail device init if kernel debugging is misconfigured
Also print error to stderr

Related-to: GSD-10780

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-03-08 05:02:42 +01:00
Damian Tomczak
81b0cac65f fix: raytracing heapless missing allocation
Related-to: NEO-12737

Signed-off-by: Damian Tomczak <damian.tomczak@intel.com>
2025-03-06 17:26:09 +01:00
Filip Hazubski
6b6202446b fix: Add asserts to ensure NonCopyable and NonMovable 3/n
Related-To: NEO-14068

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 17:16:03 +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
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
Mateusz Jablonski
6ec92ac082 refactor: move groupDevices logic to shared code
update platforms used in unit test

Related-To: NEO-14062
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-13 21:42:43 +01:00
Dominik Dabek
474b91aa36 fix: move device usm reuse max size to device
Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-01-20 18:05:37 +01:00
Jaroslaw Warchulski
a180afa2e6 fix: respect affinity mask with COMBINED hierarchy in OCL
Related-To: GSD-9560
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-01-13 15:38:39 +01:00
Dominik Dabek
e61d04a881 fix(ocl): track buffer pool count per device
Track amount of created buffer pools per device. Do not allocate extra
pools if limit is reached. New contexts will have pooling disabled if
limit is reached on device.

Related-To: NEO-13461

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-12-16 11:38:05 +01:00
Maciej Plewka
8151224501 fix: add microsecond resolution for timeout
Related-To: NEO-13445
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-12-13 09:32:18 +01:00
Compute-Runtime-Validation
484210d656 Revert "fix: limit usm device reuse based on used memory"
This reverts commit 1252b10ba9.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-05 23:17:51 +01:00
Dominik Dabek
1252b10ba9 fix: limit usm device reuse based on used memory
Calculate available memory for usm device reuse based as (total device
memory - used memory) * fraction for reuse.

Use sys mem allocs for devices without local memory.

Related-To: NEO-12902

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-12-04 08:11:23 +01:00
Szymon Morek
e6d11eb04b performance: stop ULLS for BCS during migration
Related-To: NEO-13340

When regular copy CSR has enabled direct submission,
stop it before migration on internal CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-12-02 17:57:12 +01:00
Compute-Runtime-Validation
bced7e4621 Revert "performance: stop ULLS for BCS during migration"
This reverts commit 81ba52aac4.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-11-29 04:42:26 +01:00
Szymon Morek
81ba52aac4 performance: stop ULLS for BCS during migration
Related-To: NEO-13340

When regular copy CSR has enabled direct submission,
stop it before migration on internal CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-11-27 20:06:50 +01:00
Dominik Dabek
e55aa958b7 fix: track usm reuse usage in multiple contexts
Add tracking of memory used for usm reuse mechanism when multiple cl
contexts are used.
Tracking for device added to NEO::Device, for host added to
NEO::MemoryManager.

This fixes usm reuse using x% of memory per each context instead of
globally.

Related-To: NEO-13308

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-11-26 16:00:45 +01:00
Wojciech Konior
6b40f9bc5a refactor: engineInstancedType removed
Related-To: NEO-12594

Signed-off-by: Wojciech Konior <wojciech.konior@intel.com>
2024-10-09 16:30:48 +02:00
Filip Hazubski
ebc19b4a70 feature: Add logic to disable bindless addressing via AIL
Add mockable Device functions to get ReleaseHelper and AILConfiguration.

Resolves: NEO-12699

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-09-18 13:49:51 +02:00
Kamil Kopryk
c4306a13b2 fix: set debugSurface in subdevices
Related-To: NEO-10681

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-09-11 15:10:04 +02:00
Dominik Dabek
b2fc7345cf performance: redesign usm alloc reuse mechanism
Dedicated pools for different allocations size ranges.
Additional reused allocations will create their own pools.
Do not reuse allocations >256MB.

Related-To: NEO-6893, NEO-12299, NEO-12349

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-09-10 18:12:14 +02:00
Mateusz Hoppe
9d5f8eb587 refactor: save hpCopyEngine in Device
- remove loop iteration to get hpCopyEngine

Related-To: NEO-11983

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-09-06 17:56:53 +02:00
Mateusz Hoppe
d9864eca7a feature: add context group support for root device engine
Related-To: NEO-12257

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-27 10:07:28 +02:00
Bartosz Dunajski
ce0ecf5939 fix: download L0 Event TBX allocation on related subdevice if needed
Related-To: HSD-18038498579

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-19 18:34:58 +02:00
Mateusz Hoppe
b6299b8a21 feature: add support for HP copy engine context
- add support for contect group with HP copy engine
- choose HP copy engine when available

Related-To: NEO-11983

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-19 12:23:03 +02:00
Compute-Runtime-Validation
7ad15639fc Revert "feature: add support for HP copy engine context"
This reverts commit 3fbcbcaef2.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-18 21:02:14 +02:00
Mateusz Hoppe
3fbcbcaef2 feature: add support for HP copy engine context
- add support for contect group with HP copy engine
- choose HP copy engine when available

Related-To: NEO-11983

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-18 16:07:07 +02:00
Mateusz Hoppe
14a1bbfe12 feature: allow dynamic count of HP contexts in context group
- HP contexts may use up to half contexts in group

Related-To: NEO-7824

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-09 20:41:38 +02:00
Filip Hazubski
922286633b fix: Correct debugger and SIP init logic
Initialize debugger and SIP kernel explicitly once during root-device init.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-07-05 12:04:13 +02:00
Jitendra Sharma
51fc9059c2 feature: program debug surface address
Related-To: NEO-7986
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-07-01 16:30:14 +02:00
Bartosz Dunajski
ca77ace883 fix: download TBX Event allocation on Secondary CSRs
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-26 16:33:52 +02:00
Filip Hazubski
230d3e903b fix: Move first submission programming to a separate function
Call the new function after debugger and sip kernel are initialized.

Related-To: HSD-18038645398, HSD-18038819112

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-25 10:10:02 +02:00
Filip Hazubski
2f6eaf149a fix: Update SIP kernel initialization logic
Initialize SIP kernel when shared device is being initialized
instead of api-specific device.

Initialize debugger when shared device is being initialized
instead of during platform or driver initialization.

Add missing makeResident calls for SIP kernel in heapless paths.

Related-To: HSD-18038645398, HSD-18038819112

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-20 18:30:46 +02:00
Bartosz Dunajski
da9c009b88 feature: assign unique interrupt to queue
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-07 10:06:31 +02:00
Bartosz Dunajski
e88127dcc3 refactor: remove not used multi context per engine code
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-06 11:41:15 +02:00
Bartosz Dunajski
88ed909e57 feature: assign secondary BCS engines at queue creation
Related-To: NEO-7824

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-03 09:41:43 +02:00
Bartosz Dunajski
0a74d718f2 refactor: allow using different engine types for secondary contexts
Related-To: NEO-7824

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-05-24 09:39:46 +02:00