Commit Graph

594 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
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
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
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
Zbigniew Zdanowicz
19586277ca refactor: add debug flag to control delay after waiting for paging fence on cpu
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-03 12:49:39 +01:00
Dominik Dabek
39cf653959 performance(ocl): cmd buffer prealloc per cmdqueue
Add mechanism to preallocate cmd buffer allocations in command stream
receiver reusable allocations list per command queue initialized.

This should limit additional allocations during hot loop.

Needs to be enabled in subsequent commits by setting product helper
method.

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-10-27 16:56:29 +02:00
Mateusz Hoppe
5d572b9c8f feature: allow freeing memory in aubstream
Related-To: NEO-2707

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-26 17:16:23 +02:00
Compute-Runtime-Validation
69f614a8c2 Revert "fix: allow legacy device binary validation logic for Blender on DG2 p...
This reverts commit d3d15542fb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-24 21:00:19 +02:00
Kacper Nowak
d3d15542fb fix: allow legacy device binary validation logic for Blender on DG2 platforms
Temporarily opt-out from additional compatibility checks
on DG2 for Blender 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-10-23 18:20:37 +02:00