Commit Graph

6593 Commits

Author SHA1 Message Date
Filip Hazubski
6b2b42972a fix: Add asserts to ensure NonCopyable and NonMovable 1/n
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-18 09:41:20 +01:00
Jack Myers
c26d24e555 fix: tbx page fault manager hang issue
- Updated `isAllocTbxFaultable` to exclude `gpuTimestampDeviceBuffer` from being
faultable.
- Replaced `SpinLock` with `RecursiveSpinLock` in `CpuPageFaultManager` and
`TbxPageFaultManager` to allow recursive locking.
- Added unit tests to verify the correct handling of `gpuTimestampDeviceBuffer`
in `TbxCommandStreamTests`.

Related-To: NEO-13748
Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-02-18 05:05:38 +01:00
Lukasz Jobczyk
051f7928f1 performance: tiny improvements for ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-17 23:52:33 +01:00
Kamil Kopryk
b1ffe640bb refactor: correct typo
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-17 23:31:27 +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
Filip Hazubski
78c951181d performance: Avoid creating string copies when loading os library
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2025-02-17 13:06:07 +01:00
Fabian Zwoliński
ad968550e8 fix: separate isUsmPoolAllocatorSupported for host and device
Related-To: NEO-12287, HSD-18041505773

Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-17 11:47:34 +01:00
Maciej Bielski
6924a48ca6 refactor: prepare CLOS logic for extension
Prepare cache setup and reservation logic to be extended w.r.t other
cache-levels.

Conceptually this change is like adding a switch-statement, in several
places, in which existing code makes a single (and only) case. This is
caused by splitting larger development to ease the review. Further cases
will be added in following steps. Such approach sometimes creates code
which may seem redundant but it is meant to simplify plugging following
extensions in an easy way.

Related-To: NEO-12837
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-02-17 10:43:08 +01:00
Mateusz Jablonski
24a61d096d fix: correct logic of groupDevices function
discrete devices should be exposed before integrated devices

Related-To: NEO-14062
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-16 14:27:44 +01:00
Lukasz Jobczyk
14b89591e6 performance: Disable gem close worker for ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-14 19:03:28 +01:00
Brandon Yates
4da8a3694c feature: Enable page faults for xe driver with debugger on
Related-to: NEO-10134

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-02-14 19:01:55 +01:00
Kamil Kopryk
c2387954e9 fix: disable 3d and media sharing support on PVC
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-14 17:37:05 +01:00
Lukasz Jobczyk
7cb7229c1c performance: Disable force pin for ULLS light
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-14 15:31:50 +01:00
Lukasz Jobczyk
356d89d608 performance: Disable USM cleaner for ULLS light
Realted-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-14 12:38:16 +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
Mateusz Jablonski
6ec92ac082 refactor: move groupDevices logic to shared code
update platforms used in unit test

Related-To: NEO-14062
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-13 21:42:43 +01:00
Lukasz Jobczyk
c7c7ae9d49 refactor: Remove redundancy around gemCloseWorker in csr
Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-13 21:42:28 +01:00
Lukasz Jobczyk
9085f6aeca fix: drain gem close worker on csr destroy
Resolves: HSD-18041493278

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-13 20:34:13 +01:00
Kamil Kopryk
2b6442b7a3 refactor: correct matchers and typenames for non-heapless ults
This change includes:
- added corresponding matchers for non-heapless unit tests
- added matcher for binding table state
- corrected type names for the interface descriptor and compute walker


Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-13 19:47:57 +01:00
Szymon Morek
be2ac667fc performance: enable staging for reads from image
Related-To: NEO-14026

Also, provide performance hint if ptr from
user does not meet restrictions.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-02-13 18:15:59 +01:00
Bartosz Dunajski
68a0aa0525 fix: return correct allocation from InOrderExecInfo getter
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-13 17:35:54 +01:00
Lukasz Jobczyk
a78e3f98d5 performance: Stop ULLS in bo::wait only when light mode active
Resolves: HSD-18041491739

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-13 17:01:58 +01:00
Compute-Runtime-Validation
1533f07912 Revert "feature: Enable page faults for xe driver with debugger on"
This reverts commit 62b30fa72c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-13 16:37:51 +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
Fabian Zwoliński
1d8c8ac843 refactor: use designated initializers for SmallBuffersParams initialization
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-13 12:32:52 +01:00
Lukasz Jobczyk
bc2b49b958 feature: Introduce ULLS light
Add core implementation of ULLS without VM_BIND interface aka ULLS
light.

Related-To: NEO-13922

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-12 17:52:02 +01:00
Szymon Morek
8152241693 fix: don't override user data during staging read
Related-To: NEO-13574

User can read image with row pitch larger than region width.
In such cases, don't override memory which is out of region
but within row pitch.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-02-12 16:22:48 +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
Compute-Runtime-Validation
116f7270be Revert "fix: tbx page fault manager hang issue"
This reverts commit 7d4e70a25b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-02-12 10:38:05 +01:00
Jack Myers
7d4e70a25b fix: tbx page fault manager hang issue
- Updated `isAllocTbxFaultable` to exclude `gpuTimestampDeviceBuffer` from being
faultable.
- Replaced `SpinLock` with `RecursiveSpinLock` in `CpuPageFaultManager` and
`TbxPageFaultManager` to allow recursive locking.
- Added unit tests to verify the correct handling of `gpuTimestampDeviceBuffer`
in `TbxCommandStreamTests`.

Related-To: NEO-13748
Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-02-12 02:19:37 +01:00
Jaroslaw Warchulski
9732653019 performance: reuse usm allocations with similar requested size
Resolves: NEO-14009
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-02-11 10:50:27 +01:00
Mateusz Jablonski
d25237c104 fix: pass ReadOnly flag only for page-misaligned input ptr
Related-To: NEO-12986
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-11 10:42:42 +01:00
Brandon Yates
62b30fa72c feature: Enable page faults for xe driver with debugger on
Related-to: NEO-10134

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2025-02-10 22:25:19 +01:00
Kamil Kopryk
03b56dc919 fix: untrusted input
Do not read an unlimited size of environment variables.

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-02-10 14:54:03 +01:00
Chandio, Bibrak Qamar
7149743162 fix: Set vmbind user fence when makeMemoryResident
Related-To: NEO-11977, GSD-10293

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-02-10 14:20:09 +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
Dominik Dabek
b987877712 fix: remove patchtoken fallback
Related-To: NEO-14028

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-02-10 12:29:45 +01:00
Dominik Dabek
e2d317aaee performance: tweak usm reuse cleaner
Cleaner thread will run every 15ms instead of 2s.
Allocations will be held for at least 10s.
If deferred deleter has elements to release, will skip cleaning cache.
Will clean only 1 allocation per cache, per cleaning run.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2025-02-10 12:18:13 +01:00
Slawomir Milczarek
cdc3b477c9 build: Add missing header to system calls wrapper
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2025-02-10 11:42:40 +01:00
Szymon Morek
844a934c15 fix: Add debug flag to enable dummy pages
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-02-07 20:25:49 +01:00
Slawomir Milczarek
354064a539 refactor: Extend wrapper for system calls with mkfifo command
Related-To: NEO-12952

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2025-02-07 18:49:36 +01:00
Bartosz Dunajski
f887e25a79 feature: dont reset aggregated CB Event in-order state on append
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-07 16:55:18 +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
Fabian Zwoliński
1eb8e0efd9 fix: configure small buffers params based on productHelper
Refactor buffer pool allocator to support configurable
SmallBuffersParams based on product helper capabilities.

This patch enables setting custom pool
parameters instead of using fixed static values.

For devices with 2MB local memory alignment enabled
(is2MBLocalMemAlignmentEnabled),
use larger pool configuration:
- Pool size: 16MB (up from 2MB)
- Threshold: 2MB (up from 1MB)
- Alignment: 64KB (unchanged)
- Starting offset: 64KB (unchanged)

This improves memory utilization for devices supporting larger memory
alignments
while maintaining original parameters for other devices.

Key changes:
- Moved params from static template to instance member
- Added SmallBuffersParams struct with default/large configs
- Added constructor and setter methods for params configuration

Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
2025-02-07 12:01:23 +01:00
Bartosz Dunajski
56b1468b58 feature: increment value for aggregated CB Event support [1/n]
Related-To: NEO-13971

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2025-02-07 09:11:48 +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
Mateusz Hoppe
05977f6158 feature: add getMaxLocalSubRegionSize() to product helper
Related-To: NEO-13954

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-02-06 15:20:34 +01:00
Andrzej Koska
d0871e0e37 fix: Fix copying with blitter
Related-To: NEO-12134, NEO-13874, NEO-14002

Thanks to this change we avoid programming y1 offset for 2D surface
above the maximum allowable value, i.e. 16 kb for blitter for BMG

Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2025-02-06 14:11:23 +01:00
Michał Pryba
9119a1e802 refactor: adjust file names after pre-gen12 removal 6/n
Related-To: NEO-12681
Signed-off-by: Michał Pryba <michal.pryba@intel.com>
2025-02-06 14:00:01 +01:00
Michał Pryba
2cdd9f46cd refactor: adjust file names after pre-gen12 removal 5/n
Related-To: NEO-12681
Signed-off-by: Michał Pryba <michal.pryba@intel.com>
2025-02-06 08:24:40 +01:00