Commit Graph

622 Commits

Author SHA1 Message Date
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
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
Mateusz Jablonski
8da4a9cbc7 fix: add debug flag to control non walker signalling in in-order cmdlist
set to false by default

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-23 14:43:40 +02:00
John Falkowski
f156a74f54 fix: split chunking prefetch flags
Related-To: NEO-9120

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-10-18 19:20:42 +02:00
Dominik Dabek
75c4844987 feature(internal): logging kernel dispatch params
Use debug flag PrintKernelDispatchParameters to print params used in
thread group dispatch size heuristic when encoding kernel dispatch.

Related-To: NEO-6989

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-10-17 17:31:54 +02:00
Compute-Runtime-Validation
30b066c40e Revert "fix: synchronize host and device timers to avoid device timer overflow"
This reverts commit dae8c34f81.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-16 11:16:23 +02:00
Dunajski, Bartosz
0592390e2b refactor: print gmm compression settings
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-16 09:14:52 +02:00
Mateusz Jablonski
dae8c34f81 fix: synchronize host and device timers to avoid device timer overflow
Related-To: NEO-8394
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-13 17:40:45 +02:00
Dunajski, Bartosz
06a02552ce refactor: debug flag to override PAT index for given memory type
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-12 15:47:28 +02:00
Filip Hazubski
08e92d154f fix: Add getDefaultDeviceHierarchy call to GfxCoreHelper
Added getDefaultDeviceHierarchy call that describes default device
hierarchy for a gfx core. Refactored L0 and OCL paths to use this
value by default and override this value when user sets
ZE_FLAT_DEVICE_HIERARCHY environment variable or
ReturnSubDevicesAsApiDevices debug key.

Updated ReturnSubDevicesAsApiDevices to force COMPOSITE device hierarchy
when set to 0.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-10-06 12:32:41 +02:00
Mateusz Jablonski
110164a52a fix: remove invalid std::forward
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-03 16:41:41 +02:00
Mateusz Jablonski
a033df33ff fix: remove preferSmallWorkgroupSizeForKernel method
Related-To: HSD-18033866078
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-09-29 11:55:09 +02:00
Dunajski, Bartosz
4e8600d8d0 feature: initial support for RelaxedOrdering of in-order Events chaining
Disabled by default.

Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-27 16:45:20 +02:00
Dunajski, Bartosz
42496ac96d feature: initial support for patching regular in-order CmdList
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-21 14:20:50 +02:00
Dunajski, Bartosz
b94f58abaa feature: debug flag to enable in-order events
Related-To: NEO-7966

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-21 11:22:48 +02:00
Dominik Dabek
1b7e178b25 performance(ocl): program barrier pc in taskStream
Program barrier to task stream, before next enqueue kernel.
This will reduce the number of batch buffer starts for sequences of
enqueue, barrier, enqueue, ... .

Related-To: NEO-8147

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-09-19 11:48:02 +02:00