Commit Graph

6860 Commits

Author SHA1 Message Date
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
Fabian Zwoliński
204577a91f fix: disable TimestampPoolAllocator
Related-To: NEO-12287, HSD-13012945876
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-04-18 11:30:35 +02:00
Compute-Runtime-Validation
fe1db94454 Revert "performance: Remove global fence from command stream on BMG"
This reverts commit 0c778ef6f4.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-04-18 09:23:16 +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
Slawomir Milczarek
a2d25ca31f feature: Add syscall wrappers for pidfdopen and pidfdgetfd
Related-To: NEO-12952

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2025-04-17 19:50:39 +02:00
Szymon Morek
3596522637 refactor: remove unused logic in ULLS controller
Related-To: NEO-13843

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-04-17 18:35:20 +02:00
Oskar Hubert Weber
1816c8eac4 fix: avoid joining thread in deferred deleter
Join thread in DllMain (which we are not aware of)
can result in hang occurring in DeferredDeleter, if the library is
freed before FreeLibraryAndExitThread call from within the worker thread,
the thread gets stuck, thus the main thread is stuck on worker->join().

Related-To: NEO-14121

Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
2025-04-17 16:17:42 +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
Compute-Runtime-Validation
b96cf55985 Revert "fix: Return max wg count equal one on platforms without dispatch all ...
This reverts commit b8be602bfb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-04-17 12:10:11 +02:00
Chodor, Jaroslaw
a855ce019e refactor: pass underlying allocator by ref
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-17 10:43:21 +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
Chodor, Jaroslaw
eb58e1f964 feature: Allow NEOReadDebugKeys and PrintDebugMessages envs in ocloc
This enables NEO's NEOReadDebugKeys and PrintDebugMessages in ocloc
in the same scenarios as in NEO OCL/L0 RT

Note :
* NEOReadDebugKeys=1 should not be prefixed with NEO_OCLOC_
* PrintDebugMessages=1 should be prefixed with NEO_OCLOC_
(to distinguish from OCL/L0 RT usage), so the full env
is NEO_OCLOC_PrintDebugMessages=1

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-16 18:17:15 +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
Lukasz Jobczyk
0c778ef6f4 performance: Remove global fence from command stream on BMG
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-16 16:01:05 +02:00
Compute-Runtime-Validation
331b515478 Revert "fix: avoid joining thread in deferred deleter"
This reverts commit 38a3667304.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-04-16 15:18:27 +02:00
Szymon Morek
4d60465a9e fix: don't flush texture cache if not required
Related-To: NEO-14645

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-04-16 10:38:24 +02:00
Chodor, Jaroslaw
b423084861 refactor: Change FinalizerInputType debug var to string
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-16 10:33:19 +02:00
Chodor, Jaroslaw
7744251995 refactor: explicit copy/move operations in OpaqueElementAllocator
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-16 10:10:05 +02:00
Oskar Hubert Weber
38a3667304 fix: avoid joining thread in deferred deleter
Join thread in DllMain (which we are not aware of)
can result in hang occurring in DeferredDeleter, if the library is
freed before FreeLibraryAndExitThread call from within the worker thread,
the thread gets stuck, thus the main thread is stuck on worker->join().

Related-To: NEO-14121

Signed-off-by: Oskar Hubert Weber <oskar.hubert.weber@intel.com>
2025-04-16 10:02:10 +02:00
Mateusz Jablonski
f6b92aa5d5 build: update default PTL revision to B0
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-04-16 09:44:58 +02:00
Tomasz Biernacik
eff2d1cde8 performance: change usage for semaphoreBuffer on integrated devices
Related-To: NEO-9421

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2025-04-16 09:07:05 +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
2ce694c52b feature: Enabling support for redirecting FCL to IGC for OCLOC
This allows for invoking IGC as OCL C translator in OCLOC paths

Accepted debug env :
NEO_OCLOC_UseIgcAsFcl=1 ; forces IGC
NEO_OCLOC_UseIgcAsFcl=2 ; forces FCL
NEO_OCLOC_UseIgcAsFcl=0 ; use defaults

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-15 16:44:35 +02:00
Tomasz Biernacik
5bf8b66498 feature: disable getting fd from vmExport
Related-To: NEO-12680


Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2025-04-15 16:08:40 +02:00
Maciej Plewka
b8be602bfb fix: Return max wg count equal one on platforms without dispatch all support
Related-To: NEO-14125, GSD-10725
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-04-15 15:41:23 +02:00
Lukasz Jobczyk
06e375fdc6 refactor: Add debug break for partial make resident
Resolves: NEO-13711

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-15 14:59:28 +02:00
Lukasz Jobczyk
f7939735da refactor: Adjust USM cleaner to ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-15 14:05:02 +02:00
Lukasz Jobczyk
455209aadc refactor: Simplify fence selection in ULLS
Related-To: NEO-14642

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-15 14:04:47 +02:00
Marcel Skierkowski
31f0fd4672 refactor: rename variable slmSize
Max programmable slm size is stored in RuntimeCapabilityTable as slmSize.
That is misleading name
Rename the variable slmSize to better reflect the actual meaning of the member.

Related-To: NEO-12949
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2025-04-14 20:00:29 +02:00
Chodor, Jaroslaw
7bded13638 feature: Enabling support for redirecting FCL to IGC for OCL
This allows for invoking IGC as OCL C translator in OpenCL paths

Accepted debug env :
UseIgcAsFcl=1 ; forces IGC
UseIgcAsFcl=2 ; forces FCL
UseIgcAsFcl=0 ; uses defaults

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-14 18:41:48 +02:00
Jaroslaw Warchulski
3e1aa33924 refactor: cleanup headers
Related-To: NEO-5548
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-04-14 14:59:40 +02:00
Maciej Bielski
6ecf5b373e feature: exit with warning if small bar detected on Linux
Return early and provide justification, otherwise SIGBUS error is
returned.

Related-To: NEO-14506
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-04-14 14:43:25 +02:00
Marcel Skierkowski
e82be94368 refactor: Modernize writeDataToFile function
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2025-04-14 14:28:58 +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
Tomasz Biernacik
194c3058b8 performance: change usage for ringBuffer on integrated devices
Related-To: NEO-9421

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2025-04-14 12:25:38 +02:00
Chodor, Jaroslaw
a079a2654d feature: Enabling support for DisableDeepBind debug env in ocloc
Accepted debug env :
NEO_OCLOC_DisableDeepBind=1

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-12 23:21:19 +02:00
Tomasz Biernacik
18435df04c fix: unify deferring MOCS to PAT
Related-To: NEO-14643

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2025-04-11 20:10:25 +02:00
Chodor, Jaroslaw
72ae27d51e feature: Enabling debug variables reader in ocloc
This allows for using debug variables in ocloc with
a few by-design limitations :
* debug var needs to be prefixed with NEO_OCLOC_
(when setting-up at runtime as environment variable
or using .config file)
* debug var needs to be tagged with S_OCLOC scope
(at compile time, in debug_variable .inl files)

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-11 19:58:53 +02:00
Chodor, Jaroslaw
9e14eaaed1 feature: Adding support for scoped debug variables
This allows for limitting debug variables to specific
components.

Related-To: NEO-14473
Signed-off-by: Chodor, Jaroslaw <jaroslaw.chodor@intel.com>
2025-04-11 17:52:17 +02:00
Mateusz Hoppe
3204411aca refactor: use deviceBitfield from CSR when creating engine
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-04-11 17:30:29 +02:00
Szymon Morek
5b20450162 performance: enable compression on PTL
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-04-11 17:26:29 +02:00
Igor Venevtsev
ef52479ce4 feature: add FillImage1dBuffer built-in kernel
Resolves: NEO-13984, HSD-18041422852

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2025-04-10 14:04:13 +02:00
Marcel Skierkowski
5d01677454 refactor: Mock file system in ULTs
Functions: fileExists and loadDataToFile
use IO functions from namespace IoFunctions

Now tests that use these functions
are mocked by default,
but some still require access to real files
and have been restored the ability to read files.
They will be mocked in next PRs.

Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2025-04-09 19:51:46 +02:00
Maciej Plewka
286acf30a3 fix: Dispatch residency fence when stopping ulls on windows
Related-To: NEO-14396, HSD-18041496023, HSD-13012953666, NEO-14611
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-04-09 19:51:16 +02:00
Szymon Morek
f4815a9b69 performance: enable ULLS on LNL Linux
Related-To: NEO-9004

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-04-09 14:45:46 +02:00
Lukasz Jobczyk
1b5519a880 fix: Adjust standard heaps when on 57 bit address space
Resolves: GSD-10871

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-09 12:51:03 +02:00
Fabian Zwoliński
363aa8cdbd performance: align local memory Tag allocations to 2MB
Align local memory allocations of tag types to 2MB when
2MB alignment is enabled via the product helper
(is2MBLocalMemAlignmentEnabled flag).

Refactored the allocateGraphicsMemoryInDevicePool function to improve
readability and maintainability. Simplified the logic for
determining base size and final alignment by reducing redundant code.

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-04-09 09:59:44 +02:00
Aravind Gopalakrishnan
c7fe7dde90 fix: Correct Xe sysfs paths for ccs mode setting
Fix the sysfs paths for Xe KMD

Related-To: NEO-10378

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
2025-04-09 06:51:18 +02:00
Maciej Plewka
bb36614567 fix: add separate counter for tracking ring buffer completion
Related-To: NEO-14396, NEO-9548
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-04-08 16:30:44 +02:00