Commit Graph

342 Commits

Author SHA1 Message Date
Szymon Morek
558752288f performance: set 1ms ULLS timeout on Windows since Xe2
Related-To: NEO-13843

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-06-17 08:09:24 +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 Jablonski
1b2db22238 refactor: simplify compare operator for RuntimeCapabilityTable
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-06-03 20:20:22 +02:00
Lukasz Jobczyk
332340b02b refactor: Prework for release fence removal leaving acquire fence
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-30 12:01:28 +02:00
Lukasz Jobczyk
19361031fe refactor: Make SemaphoreFenceHelper compliant with rule of three
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-29 15:56:43 +02:00
Maciej Plewka
e6f3ebce5d fix: add pc with stall before barrier with post sync on bmg
Related-To: NEO-14491
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-05-28 09:24:21 +02:00
Lukasz Jobczyk
86e7d5b276 performance: Skip fence after PC when no post sync write
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-23 10:33:28 +02:00
Lukasz Jobczyk
680fa1ec1d refactor: Split direct_submission_hw.inl
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-22 11:27:52 +02:00
Szymon Morek
bff8f74de7 refactor: remove unused parameter
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-15 12:23:27 +02:00
Lukasz Jobczyk
e964ccdf57 refactor: remove unused ulls diagnostic mode
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-09 10:01:51 +02:00
Krzysztof Sprzaczkowski
de72e91269 feature: Native GPU fence synchronization object implementation
Related-To: NEO-10811
Signed-off-by: Krzysztof Sprzaczkowski <krzysztof.sprzaczkowski@intel.com>
2025-05-07 11:00:34 +02:00
Lukasz Jobczyk
1f9cfb8916 fix: Add missing fences when unblock residency semaphore
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-06 08:54:30 +02:00
Lukasz Jobczyk
6c2ddf1120 fix: program system fence address when global fence passed to ULLS
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-30 12:57:04 +02:00
Lukasz Jobczyk
97358acabe fix: use mfence instead of sfence on discrete devices
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-25 13:32:25 +02:00
Szymon Morek
3596522637 refactor: remove unused logic in ULLS controller
Related-To: NEO-13843

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-04-17 18:35:20 +02:00
Lukasz Jobczyk
455209aadc refactor: Simplify fence selection in ULLS
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-15 14:04:47 +02:00
Jaroslaw Warchulski
3e1aa33924 refactor: cleanup headers
Related-To: NEO-5548
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-04-14 14:59:40 +02:00
Kamil Kopryk
dd3d294f87 performance: cache MOCS values
This change caches the most used MOCS values:

* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CONST);
* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);
* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED);
inside gmmHelper class during initialization to avoid repeated
calls of virtual functions, branches and/or gmm lib access.

and adds more readably corresponding getters:
* getL1EnabledMOCS
* getL3EnabledMOCS
* getUncachedMOCS

If force all resources uncached is called,
these 3 cached mocs values are reinitialized

It also changes the order of gmmHelper members, to avoid
not needed padding after addressWidth
and simplifies logic in getMocsIndex function
for xehp and later products.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-04-14 14:12:48 +02:00
Maciej Plewka
286acf30a3 fix: Dispatch residency fence when stopping ulls on windows
Related-To: NEO-14396, HSD-18041496023, HSD-13012953666, NEO-14611
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-04-09 19:51:16 +02:00
Maciej Plewka
bb36614567 fix: add separate counter for tracking ring buffer completion
Related-To: NEO-14396, NEO-9548
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-04-08 16:30:44 +02:00
Lukasz Jobczyk
ca45573dd3 fix: Handle new ring buffer residency when switch ULLS light ring
Related-To: NEO-14406, NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-08 10:12:57 +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
Lukasz Jobczyk
deca36fd32 fix: Stop ULLS light when evict resource
Related-To: NEO-14406

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-02 16:37:43 +02:00
Katarzyna Cencelewska
92e40afc49 feature: update debug flag DirectSubmissionPrintSemaphoreUsage
instead of printf use makro that make flush after printf

Related-To: HSD-14024170600
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2025-03-28 13:36:15 +01:00
Maciej Plewka
1b7bf690d2 fix: update fence values when residency list passed to switch ring buffer
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-03-21 12:26:08 +01:00
Lukasz Jobczyk
8a85a96ed2 feature: Add 3-level wait scheme with tpause intrinsic
Related-To: NEO-14336

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-21 12:12:57 +01:00
Bartosz Dunajski
6e17df4fb3 refactor: improve EncodeAluHelper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-03-19 15:44:34 +01:00
Lukasz Jobczyk
6cb52f71b4 fix: Avoid mutex deadlock when switch ulls light ring buffer
Related-To: NEO-14406

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-19 11:47:40 +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
Lukasz Jobczyk
61fe9ebb8f performance: Allow power efficient waits with ULLS light
Resolves: HSD-18041633458
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-06 14:20:58 +01:00
Szymon Morek
82fba79d9d performance: set 1ms timeout for ulls controller on LNL and PTL
Related-To: NEO-13843

Limit scope to Windows only.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-06 09:13:58 +01:00
Compute-Runtime-Validation
3414abe74a Revert "fix: make global fence always resident on linux"
This reverts commit efb814d979.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-05 02:07:38 +01:00
Szymon Morek
ff4da67979 fix: signal notify field before KMD wait
Related-To: NEO-13870

Currently all monitor fences are triggering
interrupt due to Notify Enable field.
With this change, such field is programmed
right before KMD wait.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-04 15:19:16 +01:00
Szymon Morek
efb814d979 fix: make global fence always resident on linux
Related-To: NEO-13843

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-04 12:32:53 +01:00
Lukasz Jobczyk
6dd948a4b3 performance: Pass residency container as const ptr
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-24 15:18:55 +01:00
Compute-Runtime-Validation
f907c7dcb2 Revert "performance: set 1ms timeout for ulls controller since xe2"
This reverts commit 28c008e438.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-24 15:04:54 +01:00
Lukasz Jobczyk
5961850bbc fix: blink ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-21 13:31:35 +01:00
Szymon Morek
28c008e438 performance: set 1ms timeout for ulls controller since xe2
Related-To: NEO-13843

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-02-19 13:48:26 +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
7cb7229c1c performance: Disable force pin for ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-14 15:31:50 +01:00
Lukasz Jobczyk
bc2b49b958 feature: Introduce ULLS light
Add core implementation of ULLS without VM_BIND interface aka ULLS
light.

Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-12 17:52:02 +01:00
Chandio, Bibrak Qamar
7149743162 fix: Set vmbind user fence when makeMemoryResident
Related-To: NEO-11977, GSD-10293

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-02-10 14:20:09 +01:00
Michał Pryba
75bc74089b refactor: adjust file names after pre-gen12 removal 2/3
Related-To: NEO-12681
Signed-off-by: Michał Pryba <michal.pryba@intel.com>
2025-02-03 15:31:51 +01:00
Compute-Runtime-Validation
d23249b061 Revert "fix: Set vmbind user fence when makeMemoryResident"
This reverts commit 80dc4fb43a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-01-31 11:36:29 +01:00
Compute-Runtime-Validation
768e15bab2 Revert "performance: reduce ULLS controller timeout to 1ms"
This reverts commit 0db7128503.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-01-30 03:41:58 +01:00
Szymon Morek
0db7128503 performance: reduce ULLS controller timeout to 1ms
Currently scope limited to Windows only

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-01-28 22:27:09 +01:00
Chandio, Bibrak Qamar
80dc4fb43a fix: Set vmbind user fence when makeMemoryResident
Related-To: NEO-11977, GSD-10293

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-01-28 22:04:37 +01:00
Szymon Morek
254e7c5c6a fix: set notify enable flag when flushing monitor fence
Related-To: NEO-13848

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-01-24 22:19:24 +01:00
Szymon Morek
f3c9362fc5 fix: check for gpu hang during wait for ring completion
Related-To: NEO-13490

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-01-09 18:44:25 +01:00
Dunajski, Bartosz
37e81d2a11 feature: new heuristic to enable relaxed ordering 2
Related-To: NEO-13431

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-12-09 11:58:42 +01:00