Commit Graph

294 Commits

Author SHA1 Message Date
Mateusz Jablonski 86a088e13f feature: move L3 bank query from xe-prelim to xe-nonprelim path
Related-To: NEO-11125
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-17 18:14:17 +02:00
Bartosz Dunajski ed05912c40 test: improve handling mock queue id
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-09-16 13:34:37 +02:00
Kamil Kopryk d18d58d4f7 test: correct expectations in ults if heapless enabled
Related-To: NEO-10681
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-09-12 09:20:47 +02:00
Mateusz Jablonski bc5237ca8a feature: add support for query l3 bank count in xe-prelim
Related-To: NEO-11125
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-11 11:28:43 +02:00
Mateusz Jablonski 1c15fa5c70 fix: correct thread-safety in removing from bind info vector in xe path
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-11 02:49:27 +02:00
Fabian Zwoliński ea5b586c37 fix: move pathExists out of sys calls and do not mock it
Moved pathExists from SysCalls to path.h.
In ULTs, use unchanged pathExists and mock stat, getFileAttributesA instead.
Add Windows and Linux ULTs for pathExists.

Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2024-09-10 19:24:45 +02:00
Kamil Kopryk 49a2050312 test: correct drm ults if heapless is enabled
Related-To: NEO-10641

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-09-10 18:12:29 +02:00
Mateusz Jablonski dfbad8029b feature: add support for SIMD16 EU per DSS to xe-prelim helper
Related-To: NEO-12012
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-10 15:35:46 +02:00
Mateusz Jablonski 4bf8e6de2e test: correct expectation for pat index in bind test
Related-To: NEO-10158

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-30 20:16:13 +02:00
Mateusz Jablonski 512dac67fa test: move xe specific mocks to shared/test/common
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-30 11:22:58 +02:00
Mateusz Jablonski c8ead35afa test: correct adding subdirectories in test cmake files
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-29 16:16:05 +02:00
Bellekallu Rajkiran be4570fe10 fix: Read appropriate entry for HBM channels
Related-To: NEO-11949

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2024-08-12 09:44:37 +02:00
Maciej Bielski 790bb84841 refactor: decouple ClosCacheReservation from Drm
The dependency towards `Drm` is unnecessary and only makes testing more
difficult. Instead, dependency towards `IoctlHelper` alone only is
sufficient.

Related-To: NEO-10158
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-31 10:38:35 +02:00
Mateusz Jablonski e24acc6155 fix: ensure memory info is queried before querying engine info
initialization of engine info relies on memory info data

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-26 09:28:50 +02:00
Maciej Bielski 2165154530 feature: add support for L3-cache reservation
Resolves: NEO-7849

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-24 10:10:28 +02:00
Compute-Runtime-Validation 2116808b8d Revert "fix: correct number of slices based on GuC info"
This reverts commit b6a56bcdde.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-23 17:22:31 +02:00
Mateusz Hoppe 8a7923c6ee fix: allow fork() after zeInit()
- do not release resources derived from parent process
- zeInit() in child should initilize new driver

Related-To: NEO-11761

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-23 15:31:50 +02:00
Mateusz Hoppe 0800ab54f5 refactor: remove redundant getPid()
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-22 22:51:47 +02:00
Compute-Runtime-Validation 9625f88d02 Revert "feature: add support for cache reservation"
This reverts commit b8eabdd4ce.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-07-19 20:58:43 +02:00
Mateusz Jablonski 64acb65b08 fix: don't crash when getting pci path for non-render device
Related-To: NEO-11714
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-18 12:27:35 +02:00
Mateusz Jablonski b6a56bcdde fix: correct number of slices based on GuC info
KMD exposes flat subslice info without indicating slice index
This commit calculates slice count based on total subslice count and
max subslice per slice count that we have from device blob

Related-To: NEO-12073
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-07-18 12:12:19 +02:00
Maciej Bielski b8eabdd4ce feature: add support for cache reservation
Resolves: NEO-7849

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-18 12:08:58 +02:00
Maciej Bielski 005b273b1e test: stop abusing ctors in DrmMockCustom and derived types
Calling virtual functions from within constructors is incorrect, the
virtualization mechanism does not work until a constructor completes.
So, instead of performing many operations in constructors, make them
small and use static `create()` methods to construct the object properly
and only then perform additional setup.

Mocks are a prominent example how such practice degrades the code.
A function called from a constructor is basically unmockable. Despite
being overriden by derived type (to alter the execution path as per
needs of a given test-case) the parent versions are always called.

This was making test development more and more painful as at some point
there is no hack to compensate for the lack of standard mechanism.

Related-To: NEO-9754
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-10 08:34:09 +02:00
Maciej Bielski f99846a108 feature: add Drm-specific memoryBanks computation logic
Related-To: NEO-9754

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-07-03 10:01:39 +02:00
Mateusz Jablonski 43ca7c082e fix: query csr size in mb and slm size per dss from device blob
Related-To: NEO-8188, NEO-10774
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-06-26 14:42:18 +02:00
Wenbin Lu e39d478acd fix: read max SS & EU/SS from GuC system info blob
Related-To: NEO-9489

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-06-26 09:30:57 +02:00
Compute-Runtime-Validation d19f58019f Revert "feature: add Drm-specific memoryBanks computation logic"
This reverts commit 11f7166c5a.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-06-25 12:31:26 +02:00
Maciej Bielski 11f7166c5a feature: add Drm-specific memoryBanks computation logic
Related-To: NEO-9754

Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-06-24 11:22:41 +02:00
Filip Hazubski 0d61860af6 fix: Reset builtins pointer after its resources are freed
Add resetBuiltins helper function to MockRootDeviceEnvironment.
Update tests to use the new function whenever builtins unique pointer
is reset to ensure that sip kernels are properly freed.

Related-To: HSD-18038645398, HSD-18038819112

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-20 10:49:56 +02:00
Artur Harasimiuk 8d28f8d90e fix: adjust SysCalls::write signature to match stdlib
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-06-14 16:48:12 +02:00
Bartosz Dunajski da9c009b88 feature: assign unique interrupt to queue
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-06-07 10:06:31 +02:00
Maciej Bielski dc32da2507 feature: prepare StorageInfo for Drm-specific customization
Get the local memory regions count from the primary source (MemoryInfo)
and store for further use when using DrmMemoryManager.
Add a point of dispatch (virtual `createStorageInfoFromProperties`) for
further Drm-specific customizations related to StorageInfo. As the
function became virtual, move one of its callers
(`isLocalMemoryUsedForIsa()`) from the constructor of `MemoryManager` to
respective constructors of all derivative classes. This prevents
bypassing the virtual call dispatch.

Related-To: NEO-9754
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-05-16 12:24:48 +02:00
Maciej Bielski 014720fc29 refactor: use DeviceBitfield where appropriate
Replace less type-safe uint32_t and reduce conversions between both
types.

Related-To: NEO-9754
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-05-14 09:13:11 +02:00
Young Jin Yoon 2c488d9e84 fix: check reset status after completion
Added a logic to check the reset status after the completion to make
sure we go through the logic at least once

Related-To: GSD-8902
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-05-14 06:38:07 +02:00
Bartosz Dunajski e5882e0d31 feature: pass GraphicsAllocation to fence wait
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-05-07 17:59:28 +02:00
Bartosz Dunajski 806da85ec6 refactor: prework to pass interrupt hint
Related-To: NEO-8179

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2024-04-29 11:14:53 +02:00
Mateusz Jablonski 25bed07989 fix: correct calculating system shared memory size
do not exceed system memory region size when region is available

Related-To: HSD-18038050680
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-04-24 18:55:23 +02:00
Maciej Bielski c2b4699cb6 feature: Add mask of tiles to each memory region in Xe
* Derive that information from GT list
* Use it to compute local memory size given the mask of tiles to account
for
* Leverage IoctlHelper to dispatch execution (i915 vs Xe)

Related-To: NEO-9754
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-04-16 14:22:40 +02:00
Mateusz Jablonski 420e1391b2 fix: handle not aligned gtt size reported by i915
when i915 reports gtt size between 47 and 48 bits we consider
it as 48 bit VA space

Related-To: GSD-8215
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-29 07:51:06 +01:00
Wenju He 03078541d7 feature: make global bindless heaps resident when created
Make bindless heaps resident right after heap allocation.
Motivation is that SYCL bindless image can be passed as a value argument
or through memory. Therefore, we're not able to make its bindless heap
resident during kernel initialization or setting kernel arguments.

This fixes SYCL bindless image read_write_*D.cpp tests on DG2.

Related-To: NEO-7063
Signed-off-by: Wenju He <wenju.he@intel.com>
2024-03-20 14:40:11 +01:00
Bellekallu Rajkiran 9736313d10 feature: Support for ccs mode configuration via SysFs
Add support for configuring ccs mode for all applicable devices
before KMD is loaded.

Use ZEX_NUMBER_OF_CCS to configure ccs mode.

Format is as follows:

ZEX_NUMBER_OF_CCS=NumberOfCcs i,e Setting ZEX_NUMBER_OF_CCS
to 4 sets ccs mode to 4 for all devices for which configuration
is supported.

Related-To: NEO-10378

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2024-03-15 15:51:45 +01:00
Young Jin Yoon 82728ff394 feature: add logic to iterate for all contexts to check GPU pagefault
Implemented to go through entire contexts in the process and then query
reset status to check the unexpected GPU segfault.

Added a new debug variable GpuFaultCheckThreshold to change the checking
frequency for each hang check for performance analysis.

Related-To: GSD-5673
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-03-15 07:48:39 +01:00
Neil R. Spruit b5f8a38f19 feature: Enable Per IP euStall Functionality
Related-To: NEO-10220

Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
2024-03-14 16:49:52 +01:00
Artur Harasimiuk c3d884e548 test: improve test timeout configuration
Allow custom values for different test types, i.e. ULT, AUB, etc. can
have custom timeout by using e.g.: NEO_{ULT,AUB,...}_ITERATION_MAX_TIME.
Old behavior with reading NEO_ULT_ITERATION_MAX_TIME for each test type
is preserved but new envirnoment variable has precedence.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2024-02-28 09:05:29 +01:00
Dominik Dabek ed011de03e performance: program pat index on mtl linux
Enable programming pat indexes on mtl linux for device buffers.

Change DrmMemoryManager::allocateMemoryByKMD to use gemCreateExt.

Changes currently disabled, can be enabled with flag
DisableGemCreateExtSetPat=0

Related-To: NEO-7896

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-15 17:15:28 +01:00
Compute-Runtime-Validation 7b340775c6 Revert "performance: program pat index on mtl linux"
This reverts commit 8e0b23db84.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-02-15 02:06:03 +01:00
Dominik Dabek 8e0b23db84 performance: program pat index on mtl linux
Enable programming pat indexes on mtl linux for device buffers.

Change DrmMemoryManager::allocateMemoryByKMD to use gemCreateExt.

Related-To: NEO-7896

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-14 18:42:04 +01:00
Brandon Yates ea7ae7564f feature: Implement read/writeGpuMemory for Xe debugger
- makes prelim read/writeGpuMemory generic
- Implements Xe specific ioctls and fsyncs
- Refactors dbg IoctlHelper to use shared base class
for Xe and i915

Related-to: NEO-9668

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-02-08 22:09:59 +01:00
Yoon, Young Jin 9c7578f5f4 fix: change numa_library to read default policy
Changed NumaLibrary to read default policy instead of using
the address-based policy, and remove unnecessary argument.

Removed numaif.h from the repo as it is no longer required.

Related-To: NEO-8276
Signed-off-by: Yoon, Young Jin <young.jin.yoon@intel.com>
2024-01-19 08:31:41 +01:00
Kamil Kopryk 5432b57fd0 refactor: improve readability
Added a time unit to the variable name to make it clear.
Removed incorrect and not needed check.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2024-01-05 14:53:52 +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 Jablonski 368070069e refactor: remove intel_hwconfig_types file from third party
remove not needed querying of vs/hs/ds/ps/gs threads

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-27 15:32:23 +01:00
Mateusz Jablonski a4888b39c6 build: add clang-tidy restriction for Enum case
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-21 08:58:51 +01:00
Mateusz Jablonski 138fb65401 refactor: correct naming of enum class constants 11/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 14:52:57 +01:00
Brandon Yates 0c7ba17f1a feature(debugger): Implement attach for xe debugger
Related-to: NEO-8407

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2023-12-18 16:27:17 +01:00
Mateusz Jablonski 739d181026 refactor: correct naming of enum class constants 6/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 14:48:52 +01:00
Mateusz Jablonski 432142c574 refactor: correct naming of enum class constants 4/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 08:08:51 +01:00
Mateusz Jablonski cff6c81be0 refactor: correct naming of DrmIoctl enums
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-12 10:02:19 +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
Mateusz Jablonski 6849d33326 refactor: remove redundant definitions KB/MB/GB
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 08:55:18 +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
Fabian Zwolinski 06ec4c3a82 fix: aub residency in HW+AUB mode
Related-To: NEO-9230
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-11-29 11:54:59 +01:00
Mateusz Jablonski 8e3caef814 test: add support for alarm in Windows ULT
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-27 14:24:45 +01:00
Lukasz Jobczyk 128dc4a3ad Revert "performance: disable gem close worker on non integrated devices"
This reverts commit 3cf7cbc9e9.


Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-11-20 14:49:04 +01:00
Lukasz Jobczyk 3cf7cbc9e9 performance: disable gem close worker on non integrated devices
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-11-17 15:24:03 +01:00
Young Jin Yoon 3782b4bd0e feature: add functions to get/set VA space
Added an extension version of zeContextGetVirtualAddressSpaceIpcHandle
and zeContextPutVirtualAddressSpaceIpcHandle, which return
ZE_RESULT_ERROR_UNSUPPORTED_FEATURE for now.

Related-To: NEO-8259

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2023-11-06 20:08:45 +01:00
Compute-Runtime-Validation bcc5a8502b Revert "feature: add functions to get/set VA space"
This reverts commit 0550c80d4f.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-11-03 02:06:36 +01:00
Young Jin Yoon 0550c80d4f feature: add functions to get/set VA space
Added an extension version of zeContextGetVirtualAddressSpaceIpcHandle
and zeContextPutVirtualAddressSpaceIpcHandle, which return
ZE_RESULT_ERROR_UNSUPPORTED_FEATURE for now.

Related-To: NEO-8259

Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2023-11-02 18:42:27 +01:00
Bellekallu Rajkiran aa85d71adc fix: Fix sysman abort on destruction
Invoking close on invalid fd result in undesired behaviour.
Pass proper file descriptor for close to avoid unnecessary
aborts during destruction.

Related-To: GSD-6816

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2023-11-01 22:27:33 +01:00
Compute-Runtime-Validation fca2159430 Revert "fix: if device hierarchy is flat then getSubDevicesCount return 1u"
This reverts commit cb0bb57f49.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-26 15:40:29 +02:00
Baj, Tomasz cb0bb57f49 fix: if device hierarchy is flat then getSubDevicesCount return 1u
Related-To: NEO-9167

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2023-10-25 15:51:52 +02:00
Mateusz Jablonski 4dfa12c8eb fix: add mechanism to detect gpu timestamp overflows
unify naming CpuGpu to GpuCpu

Related-To: NEO-8394
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-19 16:31:06 +02:00
Mateusz Jablonski a3faf5dacc feature: Add support for ARL-S
Related-To: NEO-8187
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-13 10:28:21 +02:00
Mateusz Jablonski a31dd7b454 fix: add unrecoverable to avoid out of bound access
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-10 10:45:30 +02:00
Mateusz Jablonski 099a3f30e3 fix: add FileDescriptor class to ensure file descriptor is closed
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-09 16:23:28 +02:00
Mateusz Jablonski 85eafc9e61 fix: query drm info to aligned storages
xe topology info to byte aligned storage
xe engine info to 2 byte aligned storage
system info to 4 byte aligned storage

all other info to 8 byte aligned storage

Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-06 16:11:40 +02:00
Compute-Runtime-Validation d5f90ae155 Revert "fix: query drm info to 8 byte aligned storage"
This reverts commit 9b344280d6.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-05 06:07:27 +02:00
Mateusz Jablonski 9b344280d6 fix: query drm info to 8 byte aligned storage
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-03 18:43:53 +02:00
Compute-Runtime-Validation 8fa0b90f35 Revert "fix: query drm info to 8 byte aligned storage"
This reverts commit d0e615820c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-03 15:41:11 +02:00
Mateusz Jablonski d0e615820c fix: query drm info to 8 byte aligned storage
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-03 11:13:38 +02:00
Mateusz Hoppe 0f2a04fef4 feature: linux support for global ssh heap
Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-09-29 11:18:01 +02:00
Kulkarni, Ashwin Kumar 3a5b038c45 fix(sysman): bugfix for return of correct uuid with zesInit flow
Related-To: LOCI-4907

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2023-09-21 09:41:49 +02:00
Dunajski, Bartosz 7562842a58 refactor: remove LogicalStateHelper
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-09-13 10:29:53 +02:00
Kacper Kasper 996c261430 fix: OclocIgcFacade->getIgcRevision() could return nullptr
* Make sure igcRevision is always initialized.
* Improve coverage.

Signed-off-by: Kacper Kasper <kacper.k.kasper@intel.com>
2023-08-31 12:57:27 +02:00
Filip Hazubski fe601f527f fix: Provide DRM_XE_VM_CREATE_FAULT_MODE flag to GemVmCreate calls
DRM_XE_VM_CREATE_FAULT_MODE flag is to be used when
Drm::hasPageFaultSupport returns true.

Related-To: NEO-7996

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-08-24 08:25:58 +02:00
Bari, Pratik f9e4381c1e feature: Add FsAccess and Derived class in Sysman Kmd Interface
- The FsAccess, ProcFsAccess and SysfsAccess classes have been added in
a file in the Sysman Shared directory. The instances of these classes
are maintained in the Sysman Kmd Interface classes.
- Added functions for opendir, readdir and closedir in the shared code.
- Added a ULT in the sysman directory to cover these new functions from
the shared code.

Related-To: LOCI-4689

Signed-off-by: Bari, Pratik <pratik.bari@intel.com>
2023-08-23 11:38:57 +02:00
Mateusz Jablonski 8b09bb855e fix: add missing includes
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-08-22 16:31:11 +02:00
Kacper Kasper 991febcdf4 fix: extend cache hash with compiler commit sha, lib size and mtime
Related-To: NEO-4262

Signed-off-by: Kacper Kasper <kacper.k.kasper@intel.com>
2023-08-22 15:28:57 +02:00
Filip Hazubski 7ea22d0369 feature: Add pat index programming to gem create ext call
When upstream ioctl helper is created it will try to create small
allocation, adding I915_GEM_CREATE_EXT_SET_PAT extension. If it
succeeds, for all resources with valid pat index value it will then
explicitly program pat index value with gem create ext call.

PrintBOCreateDestroyResult value can be used to:
- print whether the set pat extension is supported by the kernel, when
  ioctl helper is created
- print whether set pat extension was added for a given gem create ext
  call and what pat index value was programmed

Note: introduced changes are disabled by defualt.
Toggle DisableGemCreateExtSetPat can be used to enable new functionality.

Related-To: NEO-7896

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-07-31 09:00:04 +02:00
Dunajski, Bartosz 31d351cd53 refactor: unify and simplify Drm CSR methods
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-07-20 11:42:21 +02:00
Jaime Arteaga 23eeaf816d feature: Add debug keys for chunking allocation and size
Related-to: NEO-7695

New debug keys added:

EnableBOChunking is now a mask
0 = no chunking (default).
1 = shared allocations only
2 = device allocations only
3 = shared and device allocations

MinimalAllocationSizeForChunking sets the minimum allocation
size to apply chunking. Default is 2MB.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2023-07-07 23:39:43 +02:00
Compute-Runtime-Validation 2d7505c01c Revert "feature: Add pat index programming to gem create ext call"
This reverts commit 6489379508.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-02 05:06:58 +02:00
Filip Hazubski 6489379508 feature: Add pat index programming to gem create ext call
When upstream ioctl helper is created it will try to create small
allocation, adding I915_GEM_CREATE_EXT_SET_PAT extension. If it
succeeds, for all resources with valid pat index value it will then
explicitly program pat index value with gem create ext call.

PrintBOCreateDestroyResult value can be used to:
- print whether the set pat extension is supported by the kernel, when
  ioctl helper is created
- print whether set pat extension was added for a given gem create ext
  call and what pat index value was programmed

Resolves: NEO-7896

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2023-06-29 08:51:00 +02:00
Jaime Arteaga 2efd6e547a feature: Add support for chunking in the UMD (1/N)
Read if support for chunking is available in the KMD.
If available, KMD will create a BO with 1 or more chunks,
depending on the chunk size selected.

Related-To: NEO-7695

Sync to
https://github.com/intel-gpu/drm-uapi-helper/releases/tag/v2.0-rc18

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-06-02 23:27:40 +02:00
Mateusz Jablonski 6f21d133cf fix: extend MemoryInfo class interface to expose single memory region
unify logic of OverrideDrmRegion debug flag

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-05-30 16:27:42 +02:00
Diedrich, Kamil 5a4a2ab8ab feature: Add new environment variables for compiler cache
This patch add new environment variables to control compiler cache.
Works as follow: If persistent cache is set driver check if NEO_CACHE_DIR
is set. If not then driver checks XDG_CACHE_HOME - If exists
then driver create neo_compiler_cache folder, if
not then driver checks HOME directory. If each NEO_CACHE_DIR,
XDG_CACHE_HOME and HOME are not set then compiler cache is disabled.
Current support is for Linux only.

Signed-off-by: Diedrich, Kamil <kamil.diedrich@intel.com>

Related-To: NEO-4262
2023-05-12 10:21:27 +02:00
Zbigniew Zdanowicz e5e39ce8f4 test: add test prelim mock drm class
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-05-11 19:15:38 +02:00
Mateusz Hoppe 9c17cb9bd9 fix: add CLOEXEC flag when opening gpu cards
- close-on-exec prevents old file descriptor to leak when exec() is
called

Resolves: NEO-7944

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-05-09 11:53:57 +02:00
Diedrich, Kamil 5149d74141 refactor: Remove globaly enabled cl_cache
Current behaviour will be detecd path existence

Related-To: NEO-4262

Signed-off-by: Diedrich, Kamil <kamil.diedrich@intel.com>
2023-04-28 23:28:49 +02:00
Mateusz Jablonski fd1ad7c1f0 feature: setup heap extended host size based on system memory size
Related-To: NEO-7665
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-28 15:23:01 +02:00