Commit Graph

692 Commits

Author SHA1 Message Date
Szymon Morek 556c0b64c6 performance: use RESOURCE_BARRIER as stalling barrier
Related-To: NEO-14943

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-28 12:30:01 +02:00
Maciej Plewka e6f3ebce5d fix: add pc with stall before barrier with post sync on bmg
Related-To: NEO-14491
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-05-28 09:24:21 +02:00
Lukasz Jobczyk 86e7d5b276 performance: Skip fence after PC when no post sync write
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-23 10:33:28 +02:00
Mateusz Hoppe 8e5b29f55e feature: optimize local ids generation
- only emit local ids for required dimensions

Related-To: NEO-15007

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-23 09:59:31 +02:00
Vysochyn, Illia f99a4c2193 feature: Define thread group dispatch size according to kernel metadata
Related-To: NEO-10945

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2025-05-19 16:02:21 +02:00
Compute-Runtime-Validation 8839d62c79 Revert "performance: use RESOURCE_BARRIER as stalling barrier"
This reverts commit 2a63853349.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-16 20:19:06 +02:00
Szymon Morek 2a63853349 performance: use RESOURCE_BARRIER as stalling barrier
Related-To: NEO-14943

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-16 14:12:18 +02:00
Szymon Morek bff8f74de7 refactor: remove unused parameter
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-15 12:23:27 +02:00
Young Jin Yoon 5221b5b00e fix: patch counter values with additional blit properties
Modified BlitCommandsHelper and CommandListHw to patch counter values
when using additional blit properties and in order command list is
enabled.

Related-To: NEO-13003

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-13 04:32:31 +02:00
Lukasz Jobczyk 1d1414febc refactor: remove unused dc flush mitigation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-09 08:26:26 +02:00
Young Jin Yoon 415fe245d7 feature: apply or set additional blit properties
Modified appendMemoryCopyBlitRegion, appendCopyImageBlit,
appendMemoryCopyRegion, and appendBlitFill in
CommmandListCoreFamily to change behavior when
useAdditionaBlitProperties is used.
Modified dispatchBlitMemoryFill and
dispatchBlitCommandForImageRegion in BlitCommandHelper to
call applyAdditionalProperties when useAdditionalProperties
is enabled.

Related-To: NEO-13003

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-09 00:04:57 +02:00
Naklicki, Mateusz a0e7ef1ce1 fix: explicitly skip programming of unused scratch data ptr
If scratch data is unused, explicitly skip programming.

Related-To: NEO-14130

Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2025-05-08 16:56:42 +02:00
Young Jin Yoon f844dbc88f feature: Add timestamp node to encode post sync args
Added a timestamp node to EncodePostSyncArgs to use
additional timestamp information if required,
Modified event object to use the timestamp added in
EncodePostSyncArgs.

Related-To: NEO-13003

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-02 20:55:15 +02:00
Young Jin Yoon 55e7b6a209 feature: support copy function post-sync [3/n]
Refactored EncodePostSync to use more generic terms by renaming
variables.
Added some helper functions in EncodePostSync.

Related-To: NEO-13003
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-01 19:20:01 +02:00
Compute-Runtime-Validation 0c3b765942 Revert "refactor: add BlitSyncPropertiesExt to BlitSyncProperties"
This reverts commit b5a259aded.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-01 03:23:53 +02:00
Young Jin Yoon b5a259aded refactor: add BlitSyncPropertiesExt to BlitSyncProperties
Added BlitSyncPropertiesExt to provide additional information for
different platform and/or blitter commands.

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-04-30 19:11:34 +02:00
Mateusz Jablonski 523e53c862 fix: passing hw generation of local ids for implicit args patching
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-29 16:28:23 +02:00
Young Jin Yoon 05c6612386 refactor: add EncodePostSyncArgs to EncodeDispatchKernelArgs
Refactored various member variables in EncodeDispatchKernel to directly
include EncodePostSync
Changed command encoder and command list to use the modified
EncodeDispatchKernel.

Related-To: NEO-13003
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-04-17 20:55:40 +02:00
Young Jin Yoon 5a2a792c34 Revert "refactor: add EncodePostSyncArgs to EncodeDispatchKernelArgs"
This reverts commit 40aef1555e.

Related-To: NEO-13003
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-04-17 15:37:05 +02:00
Lukasz Jobczyk d9a40734ae performance: Remove global fence from CW post sync on BMG
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-17 10:23:40 +02:00
Young Jin Yoon 40aef1555e refactor: add EncodePostSyncArgs to EncodeDispatchKernelArgs
Refactored various member variables in EncodeDispatchKernel to directly
include EncodePostSync
Changed command encoder and command list to use the modified
EncodeDispatchKernel.

Related-To: NEO-13003
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-04-16 17:46:07 +02:00
Kamil Kopryk dd3d294f87 performance: cache MOCS values
This change caches the most used MOCS values:

* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CONST);
* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER);
* getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED);
inside gmmHelper class during initialization to avoid repeated
calls of virtual functions, branches and/or gmm lib access.

and adds more readably corresponding getters:
* getL1EnabledMOCS
* getL3EnabledMOCS
* getUncachedMOCS

If force all resources uncached is called,
these 3 cached mocs values are reinitialized

It also changes the order of gmmHelper members, to avoid
not needed padding after addressWidth
and simplifies logic in getMocsIndex function
for xehp and later products.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-04-14 14:12:48 +02:00
Mateusz Jablonski 1c377dc930 fix: ensure payload arguments are patched before walker command is fetched
In case of indirect kernel launch some payload arguments are patched
just before walker command, this change disables prefetch, performs
batch buffer start to next bytes and then re-enable prefetch. All these
operations are performed between MI_STORE_REGISTER_MEM and COMPUTE_WALKER

Related-To: NEO-14584
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-08 11:57:45 +02:00
Brandon Yates c4937991cd feature: Add l0DebuggerEnabled to WalkerArgs
Related-to: NEO-12993

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-04-08 03:53:38 +02:00
Young Jin Yoon 0de024dbf9 refactor: separate post-sync into EncodePostSync
Created EncodePostSync template struct to organize various post-sync
variables/functions from EncodeDispatchKernel

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-04-07 20:06:14 +02:00
Lukasz Jobczyk 8978ea5e5a performance: Do not create global fence allocation on integrated
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-07 11:22:04 +02:00
Compute-Runtime-Validation f332571d96 Revert "performance: Do not create global fence allocation on integrated"
This reverts commit ecf8a07d26.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-04-04 16:26:19 +02:00
Lukasz Jobczyk ecf8a07d26 performance: Do not create global fence allocation on integrated
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-04 11:45:22 +02:00
Mateusz Jablonski bb518adf34 fix: patching payload arguments in inline data in case of indirect kernel
Related-To: NEO-14532
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-03 17:21:28 +02:00
Filip Hazubski 504440fc4d feature: Add ftrHeaplessMode flag
Pass hwInfo to isHeaplessModeEnabled and isForceBindlessRequired functions.

Related-To: NEO-14526

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-04-02 21:06:05 +02:00
Jack Myers 0aa2c4f0cb feature: allow removal of heapful code paths
Related-To: NEO-13007

Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-03-27 01:34:35 +01:00
Bartosz Dunajski 6e17df4fb3 refactor: improve EncodeAluHelper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-03-19 15:44:34 +01:00
Kamil Kopryk 01edd58be4 refactor: add additional check in addFlushRequiredCommand
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-14 13:54:20 +01:00
Zbigniew Zdanowicz f8be8414ac feature: add support for wait event preamble in append command list
- add mechanism in queue to trigger start command from queue to regular
- add detection in immediate command list need to dispatch extra start in queue
- fix secondary linear stream in immediate case as it should not use container
- modify tests for primary batch buffer dispatch as default mode
- remove invalid or obsolete tests

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-03-07 20:31:09 +01:00
Kamil Kopryk 4c795027e3 refactor: add check if event L3 flush is needed
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-03-05 18:25:29 +01:00
Kamil Kopryk 4503972faf refactor: add adjustSamplerStateBorderColor function
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-27 14:05:09 +01:00
Vysochyn, Illia 1eafbc30f8 feature: Enable eu thread scheduling mode override via IDD
Enables eu thread scheduling mode override via the
INTERFACE_DESCRIPTOR_DATA and COMPUTE_WALKER.

Defines encodeEuSchedulingPolicy operating on INTERFACE_DESCRIPTOR_DATA
or Xe3 platform.

Adds tests verifying that thread scheduling mode can be overridden via
COMPUTE_WALKER.

Related-To: NEO-13771, HSD-18041256338, HSD-14013056398

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2025-02-26 17:04:43 +01:00
Mateusz Hoppe 291745cdf7 feature: add support for ImplicitArgs versioning
- define ImplicitArgs version 1

Related-To: NEO-14115

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-25 10:27:11 +01:00
Filip Hazubski 794b21a3fa refactor: Add extra parameters to computeSlmValues function
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-20 15:35:52 +01:00
Filip Hazubski 4be1153253 fix: Remove pragma once from inl files
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 20:19:15 +01:00
Filip Hazubski 4c7900008f refactor: Change wording from NonCopyableOrMovable to NonCopyableAndNonMovable
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-17 14:19:10 +01:00
Kamil Kopryk 899abf3aac feature: add NonCopyableOrMovable and NonCopyable concepts
Inheriting from NonCopyableOrMovableClass or NonCopyableClass
does not prevent derived classes from accidentally defining
their own copy or move constructors, violating the intended design.

This commit introduces two concepts:
- NonCopyableOrMovable
- NonCopyable

Using static asserts with these concepts will guarantee the intended
copy and move limitations.

Related-To: NEO-14068
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-14 03:55:50 +01:00
Compute-Runtime-Validation b3807e7a36 Revert "feature: Append recorded commandlist into immediate (8/N)"
This reverts commit 9db77efd03.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-13 16:35:40 +01:00
Aravind Gopalakrishnan 9db77efd03 feature: Append recorded commandlist into immediate (8/N)
- Add primary dispatch capability for immediate command list
- turn off usage of parent linear stream for copy engine

Related-To: NEO-10356

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-02-12 12:39:38 +01:00
Bartosz Dunajski 18d7a22861 refactor: pass increment address and value to dispatch params
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-10 14:04:34 +01:00
Maciej Plewka 5ef1ff574b fix: Don't check aux capable in case of MSAA surface on xe2 and later
Related-To: NEO-13290
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-02-07 16:47:33 +01:00
Mateusz Hoppe 1877e66bc8 feature: add mechanism to extend cmdlist launch params
Related-To: NEO-13954

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-06 22:05:15 +01:00
Michał Pryba 3c027cfedc refactor: adjust file names after pre-gen12 removal 4/n
Related-To: NEO-12681
Signed-off-by: Michał Pryba <michal.pryba@intel.com>
2025-02-05 15:42:32 +01:00
Kamil Kopryk ef896cc799 refactor: introduce ImageSurfaceState helper class
Moved global functions to the ImageSurfaceStateHelper class,
with declarations in the header file and definitions in the base .inl
file.
This change reduces compilation time by:
- removing unnecessary includes from the header file
- adding explicit template instantiations, which are faster than
implicit template instantiations.

Additionally, the image_skl_and_later.inl file has been removed as it
is no longer needed, and its implementation has been moved to the base .inl

Related-To: NEO-12149

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-01-30 19:20:31 +01:00
Chodor, Jaroslaw 574fe9fb29 refactor: Pass whole kernel descriptor to barrier programming
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-01-27 01:26:49 +01:00