Commit Graph

641 Commits

Author SHA1 Message Date
Dominik Dabek
07639401c5 performance: enable pat index, mtl linux
Enable programming pat indexes on mtl linux by default.

Related-To: NEO-7896

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-16 18:31:21 +01:00
Dominik Dabek
0120d8a58d performance: program pat index on mtl linux
Enable programming pat indexes on mtl linux for device buffers.

Change DrmMemoryManager::allocateMemoryByKMD to use gemCreateExt.

Set mmap flags based on coherency.
Map as write back on legacy and coherent.
On non-coherent map as write combined.

Changes currently disabled, to enable use debug keys:
DisableGemCreateExtSetPat=0
UseGemCreateExtInAllocateMemoryByKMD=1

Reorder BufferObject to decrease padding.

Related-To: NEO-7896

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-16 17:33:07 +01:00
Compute-Runtime-Validation
7b340775c6 Revert "performance: program pat index on mtl linux"
This reverts commit 8e0b23db84.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-02-15 02:06:03 +01:00
Dunajski, Bartosz
88c5872682 feature: debug flag to flush tlb before copy
Related-To: HSD-18036669673

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-02-14 20:05:57 +01:00
Dominik Dabek
8e0b23db84 performance: program pat index on mtl linux
Enable programming pat indexes on mtl linux for device buffers.

Change DrmMemoryManager::allocateMemoryByKMD to use gemCreateExt.

Related-To: NEO-7896

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-14 18:42:04 +01:00
Yoon, Young Jin
97ef964bc4 feature: Add keys to override sync mode for immediate command list
Added OverrideImmediateCmdListSynchronousMode to override synchronous
mode for immediate command list

Related-To: NEO-10316
Signed-off-by: Yoon, Young Jin <young.jin.yoon@intel.com>
2024-02-08 08:35:32 +01:00
Lukasz Jobczyk
486cc71b76 refactor: Add GDI profiling
Resolves: NEO-9236
Related-To: NEO-10036

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-02-07 18:44:11 +01:00
Dominik Dabek
371788210d performance: limit usm host allocation recycle
Query system total memory size and limit usm host allocation recycle to
use at most x%.
x is read from ExperimentalEnableDeviceAllocationCache for device and
ExperimentalEnableHostAllocationCache for host.

Related-To: GSD-7497

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-07 17:45:41 +01:00
Dunajski, Bartosz
f31fafb1e2 refactor: improve debug flag to override bcs mocs
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2024-02-05 20:23:54 +01:00
Kamil Kopryk
a4f7dda98f refactor: Add xe print debug key
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-02-02 16:39:51 +01:00
Katarzyna Cencelewska
e6ba9766bd feature: add debug flags to force pat index
for cached recouces: OverridePatIndexForCachedTypes
for uncached resouces: OverridePatIndexForUncachedTypes

Related-To: NEO-10157

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-02-02 16:11:34 +01:00
Dominik Dabek
2cad595a0d performance: debug flag for usm host alloc recycle
set ExperimentalEnableHostAllocationCache=1 to recycle host usm
allocations

Related-To: GSD-7497

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-01 16:47:59 +01:00
Compute-Runtime-Validation
fb46066abc Revert "fix: enable cache env variables for level-zero"
This reverts commit 743904d2df.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-01-31 08:33:05 +01:00
Fabian Zwolinski
743904d2df fix: enable cache env variables for level-zero
Related-To: NEO-10045
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2024-01-30 14:01:42 +01:00
Compute-Runtime-Validation
fa9c79fb63 Revert "refactor: Add GDI profiling"
This reverts commit 524ae7713a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-01-30 10:47:34 +01:00
Lukasz Jobczyk
524ae7713a refactor: Add GDI profiling
Resolves: NEO-9236
Related-To: NEO-10036

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-01-29 11:36:04 +01:00
Zbigniew Zdanowicz
a25eedb5ac feature: add print of cpu flags and address size upon detection
Related-To: NEO-9737

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-01-24 11:03:30 +01:00
Compute-Runtime-Validation
e949ba7144 Revert "refactor: Add GDI profiling"
This reverts commit 8d56f8fb6b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-01-23 06:13:02 +01:00
Lukasz Jobczyk
8d56f8fb6b refactor: Add GDI profiling
Resolves: NEO-9236
Related-To: NEO-10036

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-01-22 14:24:08 +01:00
Mateusz Jablonski
7b40b01f54 feature: add debug key for toggling bit in 57bit GPU VA for specific allocations
Related-To: NEO-9419
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-01-15 19:37:00 +01:00
Dominik Dabek
997bdfa010 performance: add windows thread priority debug key
Set windows thread priority to "above normal" on wddm init if flag is
set.

Related-To: NEO-8215

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-01-15 08:14:46 +01:00
Young Jin Yoon
4ccae1dbb4 feature: support memory policy for GEM_CREATE
Modified ioctl_helper_prelim to support the extension of gem_create_ext,
i.e. prelim_drm_i915_gem_create_ext_mempolicy.

Added two debug variables to be used for the mempolicy extension.

Modified functions in memory_info and drm_memory_manager to support extension

Added numaif.h from https://github.com/numactl/numactl/tree/master,
v2.0.14

Related-To: NEO-8276
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-01-04 23:49:10 +01:00
Mateusz Hoppe
31e9b5e9fa feature: add support for secondary contexts in group
Related-To: NEO-7824

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-12-28 13:31:08 +01:00
John Falkowski
138f22f684 fix: correct calculation for chunking size
Resolves: NEO-9562

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-12-27 16:27:09 +01:00
Dunajski, Bartosz
df66a0276f refactor: remove not used logic to check dynamic postsync layout
Related-To: NEO-8210

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-27 13:12:11 +01:00
Dominik Dabek
2fe3804cc2 performance(ocl): add usm allocation pooling flag
EnableDeviceUsmAllocationPool and EnableHostUsmAllocationPool for device
and host allocations respectively.

Pool size will be set to flag value * MB.

Allocation size threshold to be pooled is 1MB.

Pools are created per context.

Related-To: NEO-9700

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-12-27 11:42:01 +01:00
Naklicki, Mateusz
08f7e7be18 fix: align NEO to new Xe KMD header
Align to the new PAT and cache coherency support

There is an issue with coherency=non_coh, which
is default option for some platforms.
Add temporary W/A until this issue is resolved.

xe_drm.h header is generated from the series
"PAT and cache coherency support"
from https://patchwork.freedesktop.org/series/123027/

Related-To: NEO-9421, NEO-8324
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2023-12-22 16:44:26 +01:00
Zbigniew Zdanowicz
7418cff844 feature: add debug flags and instrumentation of waitpkg calls
Related-To: NEO-9737

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-12-22 08:34:13 +01:00
Compute-Runtime-Validation
570b4d3d39 Revert "fix: align NEO to new Xe KMD header"
This reverts commit f68b8a2c97.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-12-14 10:23:31 +01:00
Naklicki, Mateusz
f68b8a2c97 fix: align NEO to new Xe KMD header
Align to the new PAT and cache coherency support

xe_drm.h header is generated from the series
"PAT and cache coherency support"
from https://patchwork.freedesktop.org/series/123027/

Related-To: NEO-9421, NEO-8324
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2023-12-13 14:14:35 +01:00
Dunajski, Bartosz
8b58cbbad8 feature: create duplicated storage for in-order counter
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-08 18:19:03 +01:00
Lukasz Jobczyk
c8c3f862f4 refactor: Add key to force zero copy without coherency
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-12-07 07:56:54 +01:00
Mateusz Jablonski
da957d1a37 refactor: correct naming of enum class constants 1/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 14:26:42 +01:00
Dominik Dabek
6cf6a8def8 performance: add power throttling debug key
Set windows process power throttling hint to HIGH on wddm init

Related-To: NEO-8215

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-12-04 15:03:33 +01:00
John Falkowski
911acd81a2 feature: add SetBOChunkingSize debug variable
Resolves: NEO-9562

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-12-04 06:21:01 +01:00
Compute-Runtime-Validation
9add9f12dc Revert "feature: add SetBOChunkingSize debug variable"
This reverts commit e1df8f9112.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-12-03 03:28:16 +01:00
Dunajski, Bartosz
2c921ec940 feature: support to use mi_atomic for signalling in-order counter
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-12-01 15:35:12 +01:00
John Falkowski
e1df8f9112 feature: add SetBOChunkingSize debug variable
Resolves: NEO-9562

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-12-01 09:39:47 +01:00
Mateusz Jablonski
c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Mateusz Jablonski
36194c4e7d refactor: correct variable namings
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-29 23:49:03 +01:00
Dunajski, Bartosz
5772b17924 refactor: Add debug flag to check Device State on failed Wddm submission
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-29 18:44:25 +01:00
Dunajski, Bartosz
aba1cd8f9c feature: improve waiting and signaling Events via KMD calls
Related-To: NEO-8179

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-23 14:53:27 +01:00
Baj, Tomasz
c49a9b9787 refactor: remove ReturnSubDevicesAsApiDevices from shared code
Related-To: NEO-9437

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2023-11-22 15:13:29 +01:00
Kacper Nowak
1b932bf119 fix: allow legacy device binary validation logic for Blender on DG2 and MTL
Temporarily opt-out from additional compatibility checks
on DG2 and MTL for Blender and its derivatives AOT-compiled kernels.
This prevents a long kernel recompilation.

Additionally, same behavior can be enforced for other applications
manually via NEO debug key named DoNotUseProductConfigForValidationWa.

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-9240
2023-11-21 16:05:17 +01:00
Dominik Dabek
6562828095 performance: prealloc internal heap on mtl
Preallocate 1 internal heap allocation per csr on mtl

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-11-17 13:36:21 +01:00
Dunajski, Bartosz
a0beb96db8 feature: initial support for implicit convertion to CounterBased Events
Related-To: NEO-8145

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-11-08 14:59:12 +01:00
John Falkowski
f0175b3916 feature: set device allocation chunking as default
Device allocation chunking only applies for multi-tile mode for implicit scaling

Related-To: NEO-9051

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-11-07 10:58:17 +01:00
Zbigniew Zdanowicz
20c3f45998 refactor: add ulls diagnostic flag to select monitor fence input
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 15:09:36 +01:00
Zbigniew Zdanowicz
e0ce08bb77 fix: detect gpu hang or page fault at direct submission flush to gpu
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 14:22:02 +01:00
Michal Mrozek
ed897c302d performance: Implement V2 version of tg dispatch size algorithm.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
Related-To: NEO-6989

-Prevent imbalance in multi dimensional dispatches
-Make sure to utilize as much Eus as possible
-Prefer highest possible tg dspatch count possible
-Make sure that xe_core doesn't have uneven workgroups
2023-11-03 15:54:04 +01:00