Commit Graph

458 Commits

Author SHA1 Message Date
Jack Myers
9a14fe2478 fix: regression caused by tbx fault mngr
Addresses regressions from the reverted merge
of the tbx fault manager for host memory.

This fixes attempts by the tbx fault manager
to protect/unprotect host buffer memory, even
if the host ptr was not driver-allocated.

In the case of the smoke test that triggered
the critical regression, clCreateBuffer was
called with the CL_MEM_USE_HOST_PTR flag.
The subsequent `mprotect` calls on the
provided host ptr then failed.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-18 23:16:36 +01:00
Compute-Runtime-Validation
6c5d9a6ed7 Revert "feature: extend TBX page fault manager from CPU implementation"
This reverts commit 51c0e80299.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-12 12:30:22 +01:00
Jack Myers
51c0e80299 feature: extend TBX page fault manager from CPU implementation
In TBX mode, the host could not write to host buffers after access from device
code due to the lack of a migration mechanism post-initial TBX upload.
Migration is unnecessary with real hardware, but required for TBX.

This patch introduces a new page fault manager type that extends the original
CPU fault manager, enabling automatic migration of host buffers in TBX mode.

Refactoring was necessary to avoid diamond inheritance, achieved by using a
template parameter as the base class for OS-specific fault managers.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-11 09:09:50 +01:00
Bartosz Dunajski
9629ab3cc3 fix: disable fence wait if not supported on given CSR type
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-12-02 15:32:23 +01:00
Mateusz Jablonski
b1f7a3d125 test: remove not used usings/typedefs in shared tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-29 16:31:25 +01:00
Mateusz Jablonski
d4e201db86 test: remove not used usings/typedefs/variables in shared tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-29 10:46:10 +01:00
Bartosz Dunajski
5e1fa75676 refactor: adjust code to compile with c++20
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-29 10:27:29 +01:00
Zbigniew Zdanowicz
6453a5ec31 fix: correct sequence of estimates to get correct size for start command
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-11-27 09:38:39 +01:00
Bartosz Dunajski
dab4166837 fix: add missing aub polls on sync points
Related-To: HSD-14023925176

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-21 09:17:54 +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
Compute-Runtime-Validation
ef1b569a85 Revert "performance: Do not create global fence allocation on integrated"
This reverts commit 6bf5183eff.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-01 08:14:39 +02:00
Lukasz Jobczyk
6bf5183eff performance: Do not create global fence allocation on integrated
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-09-30 13:13:27 +02:00
Compute-Runtime-Validation
6cb0e45330 Revert "performance: Do not create global fence allocation on integrated"
This reverts commit 50eb6af9ac.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-09-27 11:48:01 +02:00
Lukasz Jobczyk
50eb6af9ac performance: Do not create global fence allocation on integrated
Resolves: NEO-12324

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-09-27 09:32:42 +02:00
Lukasz Jobczyk
c93998bcb9 performance: Do not program additional synchronization on integrated
Related-To: NEO-12324

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-09-26 10:54:31 +02:00
Bartosz Dunajski
5b1bd4b088 refactor: dont mix aub and hw wait prints
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-09-26 08:51:23 +02:00
Maciej Plewka
80f75ceace fix: submit dummy exec to pin memory during zeContextMakeMemoryResident call
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-09-23 14:43:59 +02:00
Wojciech Konior
c1edd23fd2 test: removing isEngineInstanced from tests
Related-To: NEO-12594

Signed-off-by: Wojciech Konior <wojciech.konior@intel.com>
2024-09-20 15:08:12 +02:00
Mateusz Hoppe
4a068c8eab fix: correclty program StateBaseAddress in global bindless mode
- prepare bindful ssh when kernel requires ssh heap and
SurfaceStateBaseAddress
- remove lastAppendedKernelBindlesMode - local ssh heap may be needed
for bindless kernels with scratch or misaligned buffer args
- use ssh heap gpu address to program SurfaceStateBaseAddress, global base is
used for BindlessSurfaceState and DynamicState

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-09-20 11:57:05 +02:00
Mateusz Jablonski
7e218a5f70 test: simplify IsAtLeastGen12lp and IsAtMostGen12lp matchers
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-17 13:42:19 +02:00
Bartosz Dunajski
d3d8b5fcc1 fix: inherit work partition allocation from primary root csr
Related-To: NEO-8171

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-09-16 18:45:16 +02:00
Kamil Kopryk
20c4a75171 test: correct expectation in ults if heapless enabled
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-09-13 09:57:26 +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
Compute-Runtime-Validation
d842f65cf1 Revert "fix: submit dummy exec to pin memory during zeContextMakeMemoryReside...
This reverts commit f9b87d53e6.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-09-05 03:28:03 +02:00
Maciej Plewka
f9b87d53e6 fix: submit dummy exec to pin memory during zeContextMakeMemoryResident call
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>

Related-To: NEO-11879
2024-09-04 14:07:29 +02:00
Szymon Morek
e6abfafa16 fix: drain paging fence queue before waiting for resources
Related-To: NEO-12197

If ULLS controller waits for CSR lock, and driver must
wait for resources due to OOM, then draing paging fence queue
directly

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-09-03 07:45:25 +02:00
Bartosz Dunajski
db611962f7 fix: improve task count handling in tbx download path
Related-To: HSD-18039789178

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-28 15:32:15 +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
Kamil Kopryk
fc3646b58c test: correct expectations in shared ults if heapless enabled
Related-To: NEO-10641
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-08-26 09:51:19 +02:00
Compute-Runtime-Validation
956dd8e17d Revert "fix: set properly resource params when setAllocationType"
This reverts commit 2e0884a301.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-08-24 05:01:38 +02:00
Katarzyna Cencelewska
2e0884a301 fix: set properly resource params when setAllocationType
gmm params: usage, cachable and resource info
should be set properly when override allocation type

Resolves: HSD-22020344331
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-08-23 16:57:23 +02:00
Szymon Morek
b8f181d50e performance: remove trim candidate list
Related-To: NEO-11755

Removing trim candidate list reduces overhead
caused by residency handling. Allocations required
for eviction are placed in eviction container managed
by CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-23 12:21:50 +02:00
Bartosz Dunajski
696b02bfd3 fix: improve TBX downloading after L0 Event sync
Related-To: HSD-18038498579

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-23 10:42:17 +02:00
Mateusz Jablonski
70bb654c15 fix: fix compilation issues with gcc14
- don't populate buffer objects by direct access - use push_back method
- remove template-id from constructor definitions
- correct allocating minimum memory size for mock objects

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-22 16:10:49 +02:00
Mateusz Jablonski
7ac41615cd fix: create thread with function pointer
don't create async thread in neo shared tests

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-21 18:02:37 +02:00
Aravind Gopalakrishnan
cb8063f71d feature: Append recorded command list into immediate (3/N)
- Use correct stream for dispatch
- Add capability to append signal event
- Check available space globally in immediate append call

Related-To: NEO-10356

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2024-08-16 17:40:28 +02:00
Kamil Kopryk
a9e23130d1 refactor: correct typo
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-08-16 15:44:54 +02:00
Bartosz Dunajski
d76ac1d1de fix: scratch controller residency
Related-To: HSD-18039519400

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-09 14:47:56 +02:00
Mateusz Hoppe
4c172a406d fix: correct maxOsContextCount with multiple subdevices and context group
Related-To: NEO-12257

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-08 11:04:36 +02:00
Szymon Morek
d7d6996464 performance: initialize timeout params once
Currently this is done per each enqueue
which is not really needed

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 14:35:12 +02:00
Szymon Morek
d4c1631ac7 performance: don't wait for paging fence on user thread
Related-To: NEO-12197

Currently for new resources user thread must wait before submitting
actual workload. With this commit, instead of waiting on user thread,
request is sent to background ULLS controller thread and additional
semaphore is programmed. ULLS controller will perform actual wait
and signal semaphore when paging fence reaches required value.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 08:30:51 +02:00
Bartosz Dunajski
24cfd203ab fix: dont download tbx allocations on heapless first device submission
Related-To: HSD-18039476929

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-08-06 14:03:42 +02:00
Fabian Zwoliński
674c4a15ad fix: use correct gpu address when bindless heaps helper is enabled
Related-To: NEO-7063
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-08-05 15:09:57 +02:00
Kamil Kopryk
1971a87da2 test: disable heapless or heapless state init in inappropriate ults 2/n
Related-To: NEO-10641
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-07-31 12:45:39 +02:00
Bartosz Dunajski
8e8b2582d8 fix: wait for first submission in TBX mode
Related-To: HSD-18039343751

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-07-30 16:28:17 +02:00
Michal Mrozek
5dc01e5764 Revert "performance: remove not needed logic"
This reverts commit 0ec4e9333d.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2024-07-30 07:21:40 +02:00
Michal Mrozek
0ec4e9333d performance: remove not needed logic
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2024-07-29 19:11:19 +02:00
Kamil Kopryk
b6bea06c3a test: correct checking sip address
Related-To: NEO-10641
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-07-29 12:24:30 +02:00
Mateusz Hoppe
83ad60eb29 fix: account for hp engines when calculating max context count
Related-To: NEO-11983

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-26 12:15:14 +02:00
Mateusz Hoppe
1e7f1df80e refactor: Release HardwareContext with aubManager
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-24 14:01:43 +02:00