Commit Graph

1070 Commits

Author SHA1 Message Date
Mateusz Jablonski
7660b29bbb fix: reduce types for tagSize and tagCount within TagAllocator
Related-To: NEO-16444

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-11-17 10:47:51 +01:00
Jakub Nowacki
be34c1ac86 performance: move instead of copy
Related-To: NEO-15630

Signed-off-by: Jakub Nowacki <jakub.nowacki@intel.com>
2025-11-14 16:30:05 +01:00
Compute-Runtime-Validation
ff27bb12d1 Revert "fix: use condition variables instead of busy waits in worker threads"
This reverts commit 4406889b39.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-11-14 15:55:47 +01:00
Jaroslaw Warchulski
0afcec950e refactor: cleanup includes
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-11-14 11:22:46 +01:00
Mateusz Hoppe
91fe2ec380 refactor: remove not needed debug flag AppendAubStreamContextFlags
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-11-12 16:06:09 +01:00
Kamil Kopryk
129249f022 refactor: correct typo
Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-11-06 15:15:08 +01:00
Kamil Kopryk
8757ecf2f7 refactor: reuse tag allocation for host function data
Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-11-05 14:51:20 +01:00
Lukasz Jobczyk
01885fe362 fix: proper lock order when reinitialize context
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-11-05 09:51:37 +01:00
Lukasz Jobczyk
498f62d7a0 fix: Reset direct submission when reinitialize context
Resolves: HSD-15018564496
Related-To: NEO-16651

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-11-04 13:32:36 +01:00
Kamil Kopryk
f84a5fbee9 feature: add host functions workers
* add common host function worker interface
* add worker as a single thread per csr with 3 modes
* add logic for waiting on internal tag, check gpu hang
* if tag is in pending state, read callback data, run callback
and signal completion
* threads will exit the work loop once stop request
is called in finish
* add multi thread unit tests

Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-11-03 12:11:17 +01:00
Igor Venevtsev
4406889b39 fix: use condition variables instead of busy waits in worker threads
Resolves: NEO-16085, GSD-11678, HSD-14025819208

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-10-31 15:28:54 +01:00
Compute-Runtime-Validation
b7d1c32edd Revert "fix: use condition variables instead of busy waits in worker threads"
This reverts commit 1f6039676f.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-10-24 10:55:27 +02:00
Igor Venevtsev
1f6039676f fix: use condition variables instead of busy waits in worker threads
Resolves: NEO-16085, GSD-11678, HSD-14025819208

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-10-21 17:37:00 +02:00
Mateusz Jablonski
6f83f699d7 fix: unify expect memory functions
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-17 14:30:38 +02:00
Fabian Zwoliński
6102280f71 fix: add missing writeMemory for pooled global surface
Related-To: HSD-18043489182, HSD-18043476772
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-10-17 14:26:54 +02:00
Szymon Morek
64b79723cc performance: enable cmd buffers reuse without DC flush
Related-To: NEO-16348

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-10-17 14:26:37 +02:00
Szymon Morek
c78c1515de performance: reuse cmd buffer without dc flush
Related-To: NEO-16348

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-10-16 16:26:54 +02:00
Mateusz Jablonski
35f6dc12b8 refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-15 16:19:04 +02:00
Lukasz Jobczyk
ce1c5d747b fix: fix data race issue
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-10-13 14:11:28 +02:00
Lukasz Jobczyk
6515e422e9 refactor: move eviction container to residency controller
Related-To: NEO-13315

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-10-13 08:41:34 +02:00
Compute-Runtime-Validation
244dd9b0b4 Revert "fix: use condition variables instead of busy waits in worker threads"
This reverts commit db0b4a616c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-10-11 03:52:05 +02:00
Compute-Runtime-Validation
2eb8928ec5 Revert "performance: increase heap size to 4MB"
This reverts commit f41bb3517a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-10-10 22:23:23 +02:00
Igor Venevtsev
db0b4a616c fix: use condition variables instead of busy waits in worker threads
Resolves: NEO-16085, GSD-11678, HSD-14025819208

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-10-10 21:42:02 +02:00
Mateusz Jablonski
d53ac208fc refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-10 19:31:00 +02:00
Mateusz Jablonski
1918c5e9da refactor: add helper to create uint64 bitmask
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-10 12:54:50 +02:00
Jack Myers
f06bb256c7 refactor: sba type helper
Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-10-10 11:36:36 +02:00
Szymon Morek
f41bb3517a performance: increase heap size to 4MB
Related-To: NEO-16348

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-10-09 13:03:53 +02:00
Mateusz Jablonski
b807b43b35 refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-09 10:51:44 +02:00
Mateusz Jablonski
2b686a588e refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-08 11:48:03 +02:00
Mateusz Jablonski
f3e4ba9ff6 refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-10-07 13:44:30 +02:00
Zbigniew Zdanowicz
24db09e3e9 fix: make pipeline thread arbitration one-time switch property
- detect switch happens by making "is dirty" property
- make sure to call the property setter
- setting to always true will make "is dirty" true only once

Related-To: NEO-16330

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-10-07 11:27:22 +02:00
Mateusz Hoppe
f411dc2e65 fix: debug key for using temp memory when writing to aub
Related-To: NEO-16276

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-10-07 09:43:02 +02:00
Compute-Runtime-Validation
bafb847c73 Revert "fix: use condition variables instead of busy waits in worker threads"
This reverts commit 9d1da44e08.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-10-06 20:38:46 +02:00
Radoslaw Jablonski
54de14a9dc refactor: apply clang-format's InsertBraces rule
Formats code before InsertBraces rule is enabled.

Signed-off-by: Radoslaw Jablonski <radoslaw.jablonski@intel.com>
2025-10-06 15:32:46 +02:00
Igor Venevtsev
9d1da44e08 fix: use condition variables instead of busy waits in worker threads
Resolves: NEO-16085, GSD-11678, HSD-14025819208

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-10-06 13:27:34 +02:00
Kamil Kopryk
f17ac35108 refactor: improve compilation time
Limit bitset includes,
stl bitset is slow to compile

Related-To: NEO-15390

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-10-03 21:21:25 +02:00
Szymon Morek
ee032982a6 refactor: print faulted address when waiting for tag
getDeviceState on Windows prints faulted GPU VA
if OOB access happened.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-10-02 14:59:02 +02:00
Slawomir Milczarek
40ce5eb55e fix: Fix DirectSubmissionController deadlock with try_lock pattern
Related-To: NEO-13325

Replace blocking obtainUniqueOwnership() with tryObtainUniqueOwnership()
in critical paths to prevent deadlock between controller thread holding
directSubmissionsMutex and submission threads holding CSR locks.

Changes:
- Add CommandStreamReceiver::tryObtainUniqueOwnership() method
- Use try_lock in checkNewSubmissions() and context group idle detection
- Skip contended CSRs instead of blocking (conservative approach)
- Add comprehensive unit tests for try_lock functionality

Fixes deadlock scenario where registerDirectSubmission() waits for
directSubmissionsMutex while checkNewSubmissions() holds it and waits
for CSR ownership locks.

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2025-09-29 11:38:26 +02:00
Kamil Kopryk
8c7fb0dde8 fix: data race in host function data initialization
Make sure hostFunctionInitialized bool is set after actual operations
are done

Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-09-25 11:29:01 +02:00
Compute-Runtime-Validation
6736378c4d Revert "fix: use condition variables instead of busy waits in worker threads"
This reverts commit 452475a0b9.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-09-23 17:06:18 +02:00
Igor Venevtsev
452475a0b9 fix: use condition variables instead of busy waits in worker threads
Resolves: NEO-16085, GSD-11678, HSD-14025819208

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-09-23 14:44:39 +02:00
Maciej Bielski
819702ceb8 fix: add various debug-mode asserts
Related-To: NEO-15630

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-09-23 11:33:01 +02:00
Kamil Kopryk
f3ba701a9b refactor: host function data programming
Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-09-23 11:27:35 +02:00
Kamil Kopryk
5f59b4ca08 feature: add host function allocation
Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-09-23 11:10:45 +02:00
Compute-Runtime-Validation
16a6c3ca8a Revert "feature: add host function allocation"
This reverts commit 75b4de70cd.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-09-23 02:33:15 +02:00
Kamil Kopryk
75b4de70cd feature: add host function allocation
Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-09-22 17:55:36 +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
dcfe6c4a26 fix: add lock within processEviction() of TBX
Related-To: NEO-15630

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-09-18 14:17:13 +02:00
Mateusz Jablonski
f13c18be8c refactor: remove not needed debug break
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-09-17 17:00:08 +02:00
Jakub Nowacki
a5025edc20 fix: make initializeEngine() thread-safe
Related-To: NEO-15630

Signed-off-by: Jakub Nowacki <jakub.nowacki@intel.com>
2025-09-17 11:01:33 +02:00