Commit Graph

3211 Commits

Author SHA1 Message Date
Raiyan Latif
ee4be92cc1 feature: Add TimelineWin32 External Semaphore support
Related-To: NEO-14397

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2025-05-01 18:51:58 +02:00
Igor Venevtsev
42efb3d204 feature: add built-in copy kernels for 1D_BUFFER images
Resolves: NEO-14782, HSD-18042093957

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-05-01 07:51:32 +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
3438a14fc4 refactor: remove not used function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-30 17:10:20 +02:00
Fabian Zwoliński
7db6402df9 fix: Add texture cache flush after kernels writing to images on regular cmdlist
- Add `needsTextureCacheFlushOnBarrier` flag to CommandList to track if
a texture cache flush is needed
- Set the flag when appending such kernel to on regular (out-of-order)
command list
- Program texture cache flush in the next barrier and clear the flag
after the flush is programmed
- Clear the flag on command list reset
- Add unit tests

Related-To: NEO-14713
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-04-30 15:19:43 +02:00
Mateusz Jablonski
aaaea67557 feature: add L0 API functions to get default context handle
- zeDriverGetDefaultContext to get default context for given driver
handle
- zerDriverGetDefaultContext to get default context for default driver
handle

Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-30 14:04:28 +02:00
Mateusz Jablonski
f4f208421f feature: allow creating counter based event without specifying descriptor
default setting would point to:
- no profiling
- usable in both regular and immediate command list
- signals visible to the host
- wait scope device
- signal scope host

Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-30 11:50:00 +02:00
Mateusz Jablonski
0d03164625 feature: allow creating host/device/shared USM without specifying descriptor
default setting would point to:
- ordinal 0
- cacheable resource
- host-side initial placement for shared USM

Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-30 10:23:23 +02:00
Bartosz Dunajski
f3ad230c45 feature: initial support for different copy offload submission modes
Related-To: NEO-7067

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-04-30 09:18:02 +02:00
Mateusz Jablonski
da7bcef07c feature: allow to create immediate commandlist without specifying descriptor
created command list will take default descriptor which points to:
- ordinal 0
- index 0
- in-order-execution
- asynchronous execution
- normal scheduling priority
- copy offload hint enabled

Related-To: NEO-14560
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-29 15:14:55 +02:00
Chandio, Bibrak Qamar
58d8c907cd feature: blocking makeResident for mapVirtualMem
Related-To: NEO-14547

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-04-29 01:56:12 +02:00
Dominik Dabek
75e313ce28 feature: prepare for l0 usm device pooling
Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-04-28 14:55:03 +02:00
Bartosz Dunajski
c2266fc69e refactor: remove not used CB event TS logic
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-04-28 14:31:34 +02:00
Michal Mrozek
b37305c821 refactor: remove not needed code
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-04-25 18:34:37 +02:00
Michal Mrozek
7f777814d9 refactor: call synchronized dispatch functions only when enabled
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-04-25 16:54:50 +02:00
Michal Mrozek
c41ac0ad4c refactor: remove not needed code
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2025-04-25 16:44:01 +02:00
Mateusz Hoppe
41efee1e7c feature: add mode to expose single root device
- simplify API to expose and use only single root device. Disallow
returning subdevices. This is experimental mode.

Related-To: NEO-14559

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-04-25 13:20:56 +02:00
Raiyan Latif
e0808523ee refactor: Re-enable external semaphore MT test
Related-To: NEO-11488

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2025-04-23 18:20:38 +02:00
Mateusz Jablonski
0dd2535674 refactor: change type of stype member in L0 Core driver extensions
use uint32_t-alias type to avoid casting out of ze_structure_type_t enum range
Related-To: NEO-12901

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-18 15:02:31 +02:00
Aravind Gopalakrishnan
b4f95a1a26 feature: Add pidfd option for IPC handle import
Related-To: NEO-10380

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-04-18 13:01:27 +02:00
Mateusz Hoppe
990fa0d8a9 fix: assign secondary contexts from correct device
- for root device, copy engines from subdevice are used, secondary
contexts must be selected from subdevice in this case

- return low priority BCS from subdevice

Related-To: NEO-14559

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-04-18 10:55:39 +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
Fabian Zwoliński
ee769f5983 fix: Add texture cache flush after kernels writing to images on imm cmdlists
- add `hasImageWriteArg` flag to KernelDescriptor,
based on image access qualifier
- add `isPostImageWriteFlushRequired` method to productHelper,
to require cache flush only on selected platforms
- if possible, add the `textureCacheInvalidationEnable` arg to the
existing PC, otherwise add a new PC

Related-To: NEO-13427, HSD-18041321008
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-04-17 16:04:31 +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
Zbigniew Zdanowicz
66c8f86fd8 performance: make reservation in residency before adding to the container
Related-To: NEO-13916

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-17 11:02:54 +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
Zbigniew Zdanowicz
908cd0abb7 performance: unify all specific non append method calls into single conditional
Related-To: NEO-13916

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-16 15:01:21 +02:00
Chandio, Bibrak Qamar
bed2ad1ac0 feature: memAdise for System Allocator
Related-To: NEO-13715

Implements basic functionality for zeCommandListAppendMemoryAdvise for
system allocator

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-04-16 07:11:14 +02:00
Chodor, Jaroslaw
a336d5d772 refactor: remove expicitly deleted copy c-tor in ContextImp
Rely on NEO::NonCopyableAndNonMovableClass instead

Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-15 22:48:39 +02:00
shubham kumar
48bbf12eb5 fix: correct gfx_core_helper definitions for EUSS
Related-To: NEO-14337

Signed-off-by: shubham kumar <shubham.kumar@intel.com>
2025-04-15 20:02:36 +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
Zbigniew Zdanowicz
09c9b555f9 fix: correct scope for usm allocations indirect access lock
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-11 19:39:48 +02:00
Zbigniew Zdanowicz
cf7209ddfe refactor: change queue and immediate command list to accept indirect lock
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-11 13:45:29 +02:00
Matias Cabral
25ed9d1989 feature: metrics aggregation for EU Stall
Resolves: NEO-13999

Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2025-04-10 22:38:19 +02:00
shubham kumar
f5b9d6f459 refactor: prework to read EUSS correctly for next gen core
Related-To: NEO-14545

Signed-off-by: shubham kumar <shubham.kumar@intel.com>
2025-04-10 19:28:13 +02:00
Zbigniew Zdanowicz
9e5ff37b5c fix: process immediate command list internal residency
Related-To: NEO-14625, NEO-14624

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-10 17:29:04 +02:00
Zbigniew Zdanowicz
b31c3bb3ca fix: remove doubled operations when executing regular on immediate
- immediate flush does not need to perform below for command list execution
- handling indirect allocations
- performing page fault migration
- making residency of unified shared memory
- perform prefetching when required

Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-09 11:58:03 +02:00
Zbigniew Zdanowicz
6a313a2f04 feature: add assert kernel support when executing regular from immediate
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-08 18:17:00 +02:00
Zbigniew Zdanowicz
679d3a2be5 feature: add printf kernel support when executing regular from immediate
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-08 12:25:17 +02:00
Aravind Gopalakrishnan
f95644fbd7 fix: Fix usage of root device when opening IPC handle
- Use root device if device is implicit scaling capable

Related-To: NEO-13433

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-04-08 00:01:28 +02:00
Raiyan Latif
7a0deb123d fix: Make external semaphore controller thread safe
Related-To: NEO-11488

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2025-04-07 23:23:07 +02:00
Raiyan Latif
2190c8baf7 fix: properly destroy Ext Semaphore proxy events
External Semaphore proxy events were being destroyed too
early, right after signaling, causing sporadic failures.
These should be destroyed when External Semaphore thread
controller is releasing resources.

Related-To: NEO-11488

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2025-04-07 23:22:53 +02:00
Mateusz Jablonski
58faf6e7f5 fix: Ignore ze_driver_properties_t::pNext if base struct stype is not set
Related-To: NEO-14544
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-07 17:16:42 +02:00
Vysochyn, Illia
146a7f7b9b feature: Add support for BUFFER_SIZE explicit argument
Related-To: NEO-13972

Signed-off-by: Vysochyn, Illia <illia.vysochyn@intel.com>
2025-04-07 14:15:26 +02:00
Zbigniew Zdanowicz
58fe89e116 fix: remove doubled memory prefetch operation when executing command list
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-04 13:55:16 +02:00
Chandio, Bibrak Qamar
424b23eb24 fix: blocking zeContextMakeImageResident
Related-To: NEO-11977, GSD-10293

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-04-04 11:19:17 +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
Zbigniew Zdanowicz
f578dc0316 fix: return error when not closed command list is executed
Related-To: NEO-10356

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2025-04-02 14:32:37 +02:00