Commit Graph

3275 Commits

Author SHA1 Message Date
Dominik Dabek
ad4d7a2ce8 fix: l0 usm pooling, ipc handling
Move getting usm pool for ptr to its own method.
Move trying to free via pooling to its own method.

Use base ptr of pool for tracking in IPCHandleMap.
Track ipc handle refcount in freeMem.
Return error when trying to use a not allocated ptr within pool.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-05-29 16:07:19 +02:00
Bartosz Dunajski
cdc725e0fe fix: flush split task count
Related-To: NEO-14641

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-29 11:30:38 +02:00
Szymon Morek
0c605f2da1 performance: remove cache flush after transfers
Related-To: NEO-15024

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-29 11:06:37 +02:00
Young Jin Yoon
2773bd8ec0 fix: estimate blitter commands for memory fill
Added getNumberOfBlitsForColorFill, getNumberofBlitsForByteFill,
and getNumberOfBlitsForFill in BlitCommandsHelper to estimate
total number of blitter command generated for
dispatchBlitMemoryColorFill, dispatchBlitMemoryByteFill, and
dispatchBlitMemoryFill, respectively.

Use getNumberOfBlitsForColorFill to determine whether
additionalTimestampNode is required for appendMemoryBlitFill.

Related-To: NEO-13003
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-29 00:21:35 +02:00
Dominik Dabek
cdb088b477 fix: bindless image from usm pooled ptr
Add handling for creating bindless image from usm pooled ptr.
Make relevant ULTs test USM device pool enabled/disabled.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-05-28 15:38:07 +02:00
Szymon Morek
ce1bcb536c performance: don't reprogram SBA when not needed
Related-To: NEO-15024

When defer to pat is enabled, all mocs are
set to 0, so no check for uncached mocs is needed

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-28 15:13:34 +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
Kamil Kopryk
b7681a2e7b refactor: redirect flush L3 host usm to external by default
Related-To: NEO-13163

Rename ForceL3FlushAfterPostSync to EnableL3FlushAfterPostSync
Rename DisableFlushL3ForHostUsm to RedirectFlushL3HostUsmToExternal

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-05-28 08:50:01 +02:00
Bartosz Dunajski
9c19e9eb96 fix: enable single temporary allocations list mode 2
Related-To: NEO-14641

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-27 17:35:17 +02:00
Lukasz Jobczyk
0306b77297 performance: Always allocate l0 events in LMEM on Xe2
Resolves: NEO-13422

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-27 10:39:26 +02:00
Bartosz Dunajski
542f47dfe6 refactor: pass extra param to isDefaultCmdListWithCopyOffloadSupported
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-23 16:57:58 +02:00
Bartosz Dunajski
6cb07b9d1c refactor: remove not needed code
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-23 15:58:06 +02:00
Mateusz Jablonski
98bf872fdd fix: return error when cannot obtain debug surface size
remove default max debug surface size
check state save area size only for debug scenarios
reduce state save area size in unit tests - rely on values from mock

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-23 14:48:08 +02:00
Bartosz Dunajski
efbf505744 refactor: pass additional flag to getDefaultCopyOffloadMode method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-23 14:26:29 +02:00
Bartosz Dunajski
46a5c266b7 feature: copy offload signaling depends on useAdditionalBlitProperties
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-23 13:19:45 +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
0d57dcfdf0 feature: add L0 API querying priority levels - zeDeviceGetPriorityLevels()
Related-To: NEO-14572

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-23 09:24:16 +02:00
Compute-Runtime-Validation
593c9e76f2 Revert "fix: correct limitation for num threads per thread group"
This reverts commit 6ad4ad41b1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-23 02:51:17 +02:00
shubham kumar
a61181f1f9 fix: use correct mask to extract IP in EUSS for all cores
Related-To: NEO-14920

Signed-off-by: shubham kumar <shubham.kumar@intel.com>
2025-05-22 23:37:18 +02:00
Chodor, Jaroslaw
a97563bf48 feature: Adding mechanism for overriding exposed device IP version
Related-To: GSD-10248

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-05-22 11:59:26 +02:00
Katarzyna Cencelewska
6ad4ad41b1 fix: correct limitation for num threads per thread group
taking into account the max work group limit

Resolves: NEO-14922
Related-To: NEO-11881
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2025-05-22 00:06:21 +02:00
Jakub Nowacki
4ca596c535 fix: add missing extension ults
Related-To: NEO-9988

Signed-off-by: Jakub Nowacki <jakub.nowacki@intel.com>
2025-05-20 16:03:18 +02:00
Mateusz Hoppe
b01ab1176d fix: store kernel in cmdlist when printf buffer is created
Resolves: NEO-14993

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-05-20 14:15:32 +02:00
Maciej Bielski
0f8ee57f98 feature: add NEO_LOCAL_MEMORY_ALLOCATION_MODE
Allow the application to force storageInfo.localOnly and get the
out-of-memory returned if not possible.

This is a windows-only feature supported on discrete platforms.

Related-To: NEO-13428
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-05-20 14:15:17 +02:00
Bartosz Dunajski
7f7aa36c52 feature: allow enabling copy offload on default cmd list
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-19 13:28:46 +02:00
Aravind Gopalakrishnan
4f77a581b9 refactor: Remove not necessary code
Related-To: NEO-13003

- remove additionalPacketsInUse as getPacketsUsed is sufficient
- simplify clearTimestampTagData to pass node to clear

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-05-16 02:52:26 +02:00
Compute-Runtime-Validation
0a096f1d50 Revert "fix: propagate error createInternalHandle wddm"
This reverts commit eeddd779f0.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-16 02:41:16 +02:00
Bartosz Dunajski
ef0c525847 feature: copy offload support for images
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-15 18:02:06 +02:00
Dominik Dabek
eeddd779f0 fix: propagate error createInternalHandle wddm
Unify with linux implementation, return -1 on error and 0 on success.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-05-15 15:52:37 +02:00
Mateusz Jablonski
e3081c4db2 refactor: remove not needed NOLINT comments
Related-To: NEO-12901
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-15 13:51:29 +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
Zbigniew Zdanowicz
f2601d8ccf refactor: simplify interface of append launch kernel
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-05-15 10:22:36 +02:00
Bartosz Dunajski
4f60771f65 refactor: add HP param to blit properties
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-15 09:30:00 +02:00
Mateusz Jablonski
041f879e64 refactor: correct location of definition of new L0 API functions
L0 API functions have two definitions, internal and external:
- internal definition is in L0 namespace
- external defintion is in extern C scope and points to internal definition

Below API functions are corrected within this change:
- zeDriverGetDefaultContext
- zerDriverGetDefaultContext
- zerDeviceTranslateToIdentifier
- zerIdentifierTranslateToDeviceHandle
- zeDeviceSynchronize

Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-14 12:20:00 +02:00
Mateusz Jablonski
48881bfb9a feature: add L0 API to append kernel with all params
Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-14 11:13:35 +02:00
Aravind Gopalakrishnan
fd2a073fc6 fix: Fix additional timestamp node logic
Related-To: NEO-13003

- assign additional node only if needed
- ensure kernelEventCompletionData packet count is correct
- add ult for multi tile timestamp event
- remove unneeded function

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-05-14 00:09:24 +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
Bartosz Dunajski
9e92324171 feature: copy offload support for fill operations
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-05-12 10:34:19 +02:00
Young Jin Yoon
4763d7268f fix: Reset additional properties usage after profiling
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-10 02:04:11 +02:00
Compute-Runtime-Validation
9dc734ce44 Revert "fix: set correct bindless offsets for L0 bindless images extension wi...
This reverts commit b048d0e557.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-05-09 09:06:13 +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
195ce3049e fix: avoid updating in-order dependency with useAdditionalBlitProperties
Modified appendMemoryCopyBlitRegion, appendCopyImageBlit,
appendMemoryCopyRegion, appendBlitFill and appendMemoryCopy
in CommmandListCoreFamily to not to update in order dependency
counter if useAdditionaBlitProperties used.

Related-To: NEO-13003

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2025-05-09 03:07:18 +02:00
Mateusz Jablonski
e0041df3cc refactor: remove not needed function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-09 00:45:02 +02:00
Mateusz Jablonski
41ef309ccf performance: cache devices to expose via zeDeviceGet API call
vector with all device handles is initialized only once, during driver init

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-05-09 00:19:23 +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
Dominik Dabek
501aebfc45 fix: getMemAddressRange for pooled usm
Use pool methods for getting base ptr and size if passed ptr is in a usm
pool.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-05-08 23:28:26 +02:00
Michal Mrozek
6f4a397cfc refactor: remove not required parameter
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-05-08 23:13:06 +02:00
Fabian Zwoliński
915e2ff386 fix: ensure texture cache flush after kernels writing to img on regular cmdlist
- refactored texture cache flush logic for regular command list
- replaced `needsTextureCacheFlushOnBarrier` flag with
`textureCacheFlushPending`
- introduced `consumeTextureCacheFlushPending()` for safer flag
management
- updated synchronization points (appendWaitOnInOrderDependency,
appendWaitOnEvents, appendEventForProfiling ...) to integrate
pending flushes into existing PIPE_CONTROLs using the new
consume method
- if a pending flush cannot be merged into an existing PIPE_CONTROL,
a new PIPE_CONTROL will be created before the next compute walker
- added and updated unit tests
- this patch covers both in-order and out-of-order
executions

Related-To: NEO-14713
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-05-08 19:44: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
Kamil Kopryk
b048d0e557 fix: set correct bindless offsets for L0 bindless images extension with heapless
Additionally reorder members in bindless heaps helper.

Related-To: NEO-14710
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-05-08 13:46:46 +02:00