Commit Graph

1429 Commits

Author SHA1 Message Date
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
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
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
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
Vysochyn, Illia
afd22999cc refactor: Adjust RENDER_SURFACE_STATE structures naming
Performs minor renaming (mostly capitalization) in order to align with
specification.

Renames L1_CACHE_POLICY to L1_CACHE_CONTROL.

Related-To: NEO-13147

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2024-11-29 09:43:11 +01:00
Mateusz Jablonski
2039b1c41b refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-28 16:16:30 +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
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
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
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
Jaroslaw Warchulski
72efceb8a3 fix: try to lower alignment in heap allocator when it is too big
Related-To: GSD-8948
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-11-13 09:14: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
Lukasz Jobczyk
fe82425fa9 performance: Prefer to assign new gpu va rather than reuse
Resolves: NEO-10734

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-11-05 10:16:03 +01:00
Tomasz Biernacik
c93d4cd3f5 test: enable drm fence completion unit tests
Related-To: NEO-12653

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2024-11-05 08:56:24 +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
aca7875dfd Revert "performance: Prefer to assign new gpu va rather than reuse"
This reverts commit 0f2f3c3764.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-31 05:06:43 +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
Lukasz Jobczyk
0f2f3c3764 performance: Prefer to assign new gpu va rather than reuse
Resolves: NEO-10734

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-10-30 16:48:49 +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
Naklicki, Mateusz
a429f520fb fix: use proper cpu caching for USM allocations
When using USM allocation, placement of BO can be simultaneously set to
local and system memory. This indicatates that migration between them
is allowed, but then we must not allow CPU caching to prevent corruptions.

Related-To: HSD-18040382956
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-10-24 03:24:29 +02:00
Lukasz Jobczyk
e687e11ab1 performance: Add CCS Optimization
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-10-23 11:35:57 +02:00
Jaroslaw Warchulski
2ba5ee2f6b Revert "fix: use full size for HEAP_EXTENDED initialization"
This reverts commit 5afc63df93.

Related-To: GSD-8948
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-10-22 19:27:31 +02:00
Maciej Bielski
45e78fea76 fix: use productHelper in getPatIndexInfoString() on Windows
Fix the PAT-index reporting in logger as currently on Windows reported
values are simply wrong.

The changed logic dependends on `RootDeviceEnvironment` and in order to
avoid introducing such dependencies into logger.[ch] the
`logAllocation()` is no longer a member of `FileLogger` but
a free-function instead (and a separate .cpp file). This is important
because the source files `logger.[ch]` are also used by ocloc library
and there is no point to contaminate ocloc code structure with
unnecessary dependencies.

Related-To: NEO-9421
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-10-22 19:27:13 +02:00
Wenbin Lu
a8a40d2afd feature: support SVM heap in reserveVirtualMem
Related-To: NEO-11981

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-10-22 16:47:14 +02:00
Compute-Runtime-Validation
e10998db45 Revert "performance: Add CCS Optimization"
This reverts commit e7b3a40aa7.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-22 05:52:14 +02:00
Michal Mrozek
18d828421d performance: add debug flag to control huge chunk size on wddm.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2024-10-21 16:51:03 +02:00
Naklicki, Mateusz
a5a11f4a0e feature: add debug key to set MaxSubSlicesSupported
Related-To: HSD-16025421624
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2024-10-21 13:34:43 +02:00
Lukasz Jobczyk
8a647f6a39 Revert "performance: Ensure hostptrs removed before creating new one"
This reverts commit 5b2f2f3d83.

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-10-21 10:36:06 +02:00
Lukasz Jobczyk
e7b3a40aa7 performance: Add CCS Optimization
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-10-21 09:59:14 +02:00
Jaroslaw Warchulski
5afc63df93 fix: use full size for HEAP_EXTENDED initialization
Related-To: GSD-8948
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-10-18 18:14:34 +02:00
Tomasz Biernacik
46f3d27339 feature: initialize regionCount
Related-To: NEO-12138

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2024-10-18 13:33:14 +02:00
Mateusz Jablonski
4154e6666b fix: correct loading L0 loader functions
- don't load ze_loader.dll from file system
- to perform self-open on Windows use getModuleHandleA with proper module name
- don't free library loaded with getModuleHandleA
- as loader may be not available during runtime teardown:
- load translate handle function during global setup
- load setDriverTeardown function during global teardown
- when loader is not available during teardown, unset translate handle
function

Related-To: GSD-10147

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-17 15:39:20 +02: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
Compute-Runtime-Validation
f117b5fb68 Revert "fix: correct loading L0 loader functions"
This reverts commit 9c7b3c5e19.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-10-17 08:20:19 +02:00
Mateusz Jablonski
9c7b3c5e19 fix: correct loading L0 loader functions
on Windows use getModuleHandleA with proper module name
don't load ze_loader.dll from file system

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-16 19:53:05 +02:00