Commit Graph

283 Commits

Author SHA1 Message Date
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
c76edaba4e fix: enable usm reuse limit based on memory usage
Related-To: NEO-14160, NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-03-27 15:14:08 +01: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
Maciej Plewka
36fa6d66ae fix: lock csr in stopDirectSubmission if needed
Related-To: NEO-13875, NEO-14143, HSD-16026538384, HSD-16026780358
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-03-18 09:30:38 +01:00
Mateusz Hoppe
9d052cd8ee fix: pass rootDevice when creating secondary contexts
- fix initialization of gfxCoreHelper in drm and wddm

Related-To: NEO-7824, NEO-8171

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-03-17 16:03:27 +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
John Falkowski
4d281cf51d feature: Implement appendMemoryPrefetch for Shared System USM allocations
Related-To: NEO-12989

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2025-03-13 06:26:38 +01:00
Compute-Runtime-Validation
fa2e3adad3 Revert "feature: Implement appendMemoryPrefetch for Shared System USM Allocat...
This reverts commit 97799b3faf.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-12 05:55:32 +01:00
John Falkowski
97799b3faf feature: Implement appendMemoryPrefetch for Shared System USM Allocations
Related-To: NEO-12989

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2025-03-11 09:12:48 +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
Kamil Kopryk
b1ffe640bb refactor: correct typo
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-17 23:31:27 +01:00
Fabian Zwoliński
ad968550e8 fix: separate isUsmPoolAllocatorSupported for host and device
Related-To: NEO-12287, HSD-18041505773

Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-17 11:47:34 +01:00
Mateusz Jablonski
24a61d096d fix: correct logic of groupDevices function
discrete devices should be exposed before integrated devices

Related-To: NEO-14062
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-16 14:27:44 +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
Lukasz Jobczyk
c7c7ae9d49 refactor: Remove redundancy around gemCloseWorker in csr
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-13 21:42:28 +01:00
Mateusz Hoppe
6e35d055f2 feature: make contextGroupSize dependent on number of processes
Related-To: NEO-12952

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-03 18:13:33 +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
4dd1c80362 refactor: use enum class instead of enum for DeviceHierarchyMode
Related-To: GSD-9560
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-01-16 15:49:44 +01:00
Krzysztof Sprzaczkowski
a17745532c performance: Move preemption allocation init to the first submission
Related-To: NEO-12323
Signed-off-by: Krzysztof Sprzaczkowski <krzysztof.sprzaczkowski@intel.com>
2025-01-15 20:22:50 +01:00
Jaroslaw Warchulski
6a7bee67e9 refactor: unify device hierarchy mode
Related-To: GSD-9560
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-01-14 21:08:44 +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
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
Chandio, Bibrak Qamar
ab2e831a4a fix: zeDeviceGetGlobalTimestamp to use submisison
Related-To: GSD-10253, GSD-9467, GSD-9381, NEO-11908

When EnableGlobalTimestampViaSubmission is set then
zeDeviceGetGlobalTimestamp uses immediate cmd submission
method to get GPU time.

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2024-12-04 19:10:07 +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
Alicja Lukaszewicz
68dc7fb33b feature: add calculation of stack count for sync RT
Related-To: NEO-10830

Signed-off-by: Alicja Lukaszewicz <alicja.lukaszewicz@intel.com>
2024-11-18 14:52:00 +01:00
Marcel Skierkowski
49d999abe6 fix: remove defaultProfilingTimerResolution from RuntimeCapabilityTable
Related-To: NEO-12275
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2024-11-04 12:02:11 +01:00
Tomasz Biernacik
c982981dde feature: add number of rt stacks to capability table
Related-To: NEO-12138

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2024-10-17 14:46:19 +02: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
Andrzej Koska
dad53a13c3 fix: set stackSizePerRay appropriately for release
Related-to: NEO-12816

Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2024-10-09 11:33:42 +02:00
Mateusz Hoppe
8000133b2a refactor: add method to adjust regular context count
Related-To: NEO-12258

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-09-25 13:46:46 +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
Brandon Yates
9b68736074 fix: Fix check for sysfs entry at debugger init time
Related-to: NEO-12656

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-09-17 13:42:49 +02:00
Bartosz Dunajski
7ce0ef9e82 fix: dont create preemption allocation for secondary csr
Related-To: NEO-8171

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-09-17 13:42:05 +02:00
Jitendra Sharma
f6a89bbc03 fix: initialize debugger before creating engines
Related-To: NEO-12571
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-09-12 18:12:12 +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
ae3edba369 feature: limit contexts in group based on number of CCS engines
Related-To: NEO-12258, HSD-14023076222

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-30 19:55:31 +02:00
Mateusz Hoppe
482e077252 feature: add regular and hp contexts in group without dedicated hp engine
- if no hp copy engine available, create group with regular and hp
contexts

Related-To: NEO-11983

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-28 14:01:10 +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
Lukasz Jobczyk
d1c354d5bf fix: Init device with first submission when metrics enabled
Resolves: NEO-7642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-08-20 14:34:16 +02:00