Commit Graph

2251 Commits

Author SHA1 Message Date
Mateusz Jablonski
86ecbf3507 fix: explicitly report unhandled event exec queue placements
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-12-16 13:11:39 +01:00
Mateusz Jablonski
8f7bacdd95 feature: add eudebug interface class
eudebug interface is now hidden under EuDebugInterface class
shared code uses generic object and param values

layout of structs is guarded by static asserts

eudebug support is guarded by cmake flags:
- NEO_ENABLE_XE_EU_DEBUG_SUPPORT - enables eudebug in general
- NEO_USE_XE_EU_DEBUG_EXP_UPSTREAM - registers exp upstream uAPI support
- NEO_ENABLE_XE_PRELIM_DETECTION - registers prelim uAPI support

This way we can support two different xe-eudebug interfaces within
single binary.

In unit tests there is mock eudebug interface enabled (even if no
eudebug support is enabled by cmake flag).

Related-To: NEO-13472
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-12-13 17:07:12 +01:00
Mateusz Jablonski
49c028858a fix: optimize bind info in ioctl helper xe
bind info container is needed to distinguish between userptr and handles
with this change it stores only userptrs and their corresponding gpu va

Related-To: NEO-13501
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-12-13 16:07:30 +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
Mateusz Hoppe
0589a70dc7 feature(sysman): reinitialize gfxPartition on reset
Related-To: NEO-13203

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-12-12 16:27:25 +01:00
Damian Tomczak
98331e7d63 feature: is48bResourceNeededForRayTracing specialization for rt encoder
Related-to: NEO-10074

Signed-off-by: Damian Tomczak <damian.tomczak@intel.com>
2024-12-12 13:29:07 +01:00
Lukasz Jobczyk
c2093990d4 fix: Flush monitor fence only to context where needed
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-12-11 10:06:43 +01:00
Compute-Runtime-Validation
924ad580bd Revert "fix: enable scratch pages on xekmd"
This reverts commit 74824f659a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-11 07:10:27 +01:00
Szymon Morek
c3ed6e062a performance: enable timestamp reuse on linux
Related-To: NEO-13456

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-12-10 11:57:45 +01:00
Naklicki, Mateusz
74824f659a fix: enable scratch pages on xekmd
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-12-10 11:48:09 +01:00
Maciej Bielski
1fafd44af5 refactor: use level-specific name for CacheInfo instances
Related-To: NEO-12837

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-12-10 11:45:11 +01:00
Mateusz Jablonski
d78ca38d9b refactor: remove dead code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-12-09 19:26:00 +01:00
Maciej Bielski
c9726dbb10 refactor: simplify tracking CacheRegion reservations
Leverage features of the mechanism to simplify implementation:
- The maximum number of possible cache-region reservations is a small
value known at compile-time
- Each reservation is unique (described by `CacheRegion`) so can have
a dedicated entry with either zero (free) or non-zero (reserved) value

So, there is no need for a dynamic collection (unordered_map here) to
keep track of reservations. A simple array is enough for that purpose.

Also, add some helper-code to enable array-indexing with the values of
`CacheRegion` enum.

Related-To: NEO-12837
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-12-09 16:50:28 +01:00
Dominik Dabek
894c74b62d fix: disable indirects detection on non-PVC
Also add ULTs for getting indirect detection version product helper
methods.

Related-To: GSD-10453

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-12-09 15:11:30 +01:00
Maciej Bielski
4467b1e8de feature: specify cache level when reserving a region
Related-To: NEO-12837
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-12-09 12:54:48 +01:00
Fabian Zwoliński
d2ce3badfc fix: bindlessHeapsHelper handle unavailable external heap
This PR handles the situation in which a component
has reserved a front window space for itself in the external heap,
so that the Compute Runtime cannot access this area.

In such a situation, we perform the following steps:
1. reserve 4GB chunk in heapStandard
2. split our chunk into 2 parts: heapFrontWindow, heapRegular
3. from this point on, map all linearStream allocations in reserved 4GB
chunk

Patch applies to Windows and WSL.
Patch only applies when the bindless global allocator is enabled.

Related-To: HSD-16025889919
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-12-05 14:18:01 +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
Lukasz Jobczyk
d40a804bca performance: Allocate by KMD on BMG
Related-To: NEO-10526

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-12-04 14:41:25 +01:00
Szymon Morek
d5e5c8e59e fix: call flushMonitorFence on BCS CSR
Related-To: NEO-12477

Also, make sure that global fence is always resident

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-12-03 12:48:54 +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
Compute-Runtime-Validation
f5cda5ba53 Revert "fix: call flushMonitorFence on BCS CSR"
This reverts commit fc8aa8246b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-11-30 22:31:30 +01:00
Dominik Dabek
99a353a15a feature: flags for logging indirect detection
Add flag to log information for indirect detection debugging.
Add flag to disable indirect detection by kernel name.
Add flag to force indirect detection enable/disable for CM kernels.

Related-To: NEO-13372

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-11-29 16:37:47 +01:00
Szymon Morek
fc8aa8246b fix: call flushMonitorFence on BCS CSR
Related-To: NEO-12477

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-11-29 16:31:40 +01:00
Mateusz Jablonski
c96f2e2df7 fix: add debug break in case of eviction failure
Eviction failure may lead to device error state

Related-To: GSD-10319
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-27 11:39:15 +01:00
Mateusz Jablonski
974e8ae63f performance: don't call evict with empty handle list
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-27 09:25:36 +01:00
Mateusz Jablonski
db6fe7892c fix: remove destroyed allocations from eviction lists
mark explicitly made resident allocations

Related-To: NEO-13246, GSD-10319
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-25 22:19:54 +01:00
Slawomir Milczarek
edaac6ce43 feature: Add ioctl helper function to synchronize userptr allocations
Related-To: NEO-12846

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-11-22 17:58:25 +01:00
Bartosz Dunajski
5862cbcb9f refactor: add max local region size query
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-22 17:33:22 +01:00
Bellekallu Rajkiran
0c3a767ae6 fix: Enable immediate binding for make resident on linux
Related-To: NEO-11977

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2024-11-22 15:56:18 +01:00
Alicja Lukaszewicz
789efc8909 fix: remove number of RT stacks from capability table
Related-To: NEO-10830

Signed-off-by: Alicja Lukaszewicz <alicja.lukaszewicz@intel.com>
2024-11-21 14:46:50 +01:00
Wenbin Lu
2ba80ce114 feature: support physical host memory
Related-To: NEO-11981

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-11-20 08:19:52 +01:00
Slawomir Milczarek
f005574f3e feature: ioctl helper for allocUserPtr in createAllocWithAlignmentFromUserptr
Related-To: NEO-12846

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-11-19 18:13:46 +01:00
Bartosz Dunajski
ed20069d47 feature: debug flag to override region count
Related-To: HSD-18040537404

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-19 16:46:43 +01:00
Mateusz Jablonski
b46525f556 feature: handle DRM_XE_TOPO_SIMD16_EU_PER_DSS in xe non-prelim path
Related-To: NEO-12012
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-18 13:41:16 +01:00
Slawomir Milczarek
8b7aa340ad feature: Add ioctl helper function to allocate user ptr
Related-To: NEO-12846

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-11-15 22:10:29 +01:00
Filip Hazubski
8797c326b6 refactor: Move isDummyBlitWaRequired function to release helper
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-11-15 13:22:00 +01:00
Bartosz Dunajski
67581f57a4 refactor: unify local dispatch size query
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-11-15 10:00:53 +01:00
Slawomir Milczarek
d745f41a76 feature: Ioctl helper mmap/acquireGpuRange functions in creating usm allocation
Related-To: NEO-12846

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-11-13 16:56:13 +01:00
Mateusz Jablonski
1350441a72 build: fix multiple definitions issue
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-12 15:54:12 +01:00
Lukasz Jobczyk
7f3896d05f performance: Ensure hostptrs removed before creating new one
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-11-12 13:55:15 +01:00
Slawomir Milczarek
a331ffcb55 feature: Add ioctl helper functions to mmap/unmap and acquire/releaseGpuRange
Related-To: NEO-11817

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-11-08 15:22:44 +01:00
Compute-Runtime-Validation
fd1a000ae4 Revert "feature: enable recoverable pagefault"
This reverts commit c6c2eef063.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-11-06 07:39:04 +01:00
Young Jin Yoon
c6c2eef063 feature: enable recoverable pagefault
Enabled recoverable pagefault

Related-To: NEO-13116
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-11-04 21:44:04 +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
Naklicki, Mateusz
64061b623b feature: xekmd vm prefetch
Related-To: HSD-18040382956
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-10-31 13:49:25 +01:00
Compute-Runtime-Validation
45a26c22dd Revert "performance: limit tlb flush scope to DG2"
This reverts commit 10d123ae3e.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-30 22:38:17 +01:00
Szymon Morek
10d123ae3e performance: limit tlb flush scope to DG2
Related-To: NEO-7116

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-10-30 18:27:19 +01:00
Alicja Lukaszewicz
654fdc1345 feature: add query for additional device properties
Related-To: NEO-12590

Signed-off-by: Alicja Lukaszewicz <alicja.lukaszewicz@intel.com>
2024-10-29 20:40:27 +01:00
Young Jin Yoon
ebdded1bb9 fix: change error message for GPU page fault
Change the error message for GPU page fault to match
with the message from gdb output

Related-To: NEO-13093
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-10-26 01:29:50 +02:00
Slawomir Milczarek
2b2bd19845 feature: Add branch dir suffix for ioctl helper xe prelim in cmake
Related-To: NEO-12846

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-10-25 12:20:43 +02:00