Commit Graph

73 Commits

Author SHA1 Message Date
Lukasz Jobczyk
a390327ef9 refactor: remove unused code
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-09-10 15:38:48 +02:00
Kamil Kopryk
1f862b3ee7 refactor: flush L3 after post sync
Related-To: NEO-13163
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2025-09-09 12:56:50 +02:00
Naklicki, Mateusz
dade66307e refactor: cleanup header includes 4/n
cleanup of opencl/source directory

Related-To: NEO-15383
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2025-07-22 19:36:34 +02:00
Jack Myers
7f9fadc314 fix: regression caused by tbx fault mngr
Addresses regressions from the reverted merge
of the tbx fault manager for host memory.

Recursive locking of mutex caused deadlock.

To fix, separate tbx fault data from base
cpu fault data, allowing separate mutexes
for each, eliminating recursive locks on
the same mutex.

By separating, we also help ensure that tbx-related
changes don't affect the original cpu fault manager code
paths.

As an added safe guard preventing critical regressions
and avoiding another auto-revert, the tbx fault manager
is hidden behind a new debug flag which is disabled by default.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-01-09 07:48:53 +01:00
Compute-Runtime-Validation
124e755b9d Revert "fix: regression caused by tbx fault mngr"
This reverts commit 9a14fe2478.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-19 17:35:03 +01:00
Jack Myers
9a14fe2478 fix: regression caused by tbx fault mngr
Addresses regressions from the reverted merge
of the tbx fault manager for host memory.

This fixes attempts by the tbx fault manager
to protect/unprotect host buffer memory, even
if the host ptr was not driver-allocated.

In the case of the smoke test that triggered
the critical regression, clCreateBuffer was
called with the CL_MEM_USE_HOST_PTR flag.
The subsequent `mprotect` calls on the
provided host ptr then failed.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-18 23:16:36 +01:00
Compute-Runtime-Validation
6c5d9a6ed7 Revert "feature: extend TBX page fault manager from CPU implementation"
This reverts commit 51c0e80299.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-12 12:30:22 +01:00
Jack Myers
51c0e80299 feature: extend TBX page fault manager from CPU implementation
In TBX mode, the host could not write to host buffers after access from device
code due to the lack of a migration mechanism post-initial TBX upload.
Migration is unnecessary with real hardware, but required for TBX.

This patch introduces a new page fault manager type that extends the original
CPU fault manager, enabling automatic migration of host buffers in TBX mode.

Refactoring was necessary to avoid diamond inheritance, achieved by using a
template parameter as the base class for OS-specific fault managers.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-11 09:09:50 +01:00
Szymon Morek
e6d11eb04b performance: stop ULLS for BCS during migration
Related-To: NEO-13340

When regular copy CSR has enabled direct submission,
stop it before migration on internal CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-12-02 17:57:12 +01:00
Compute-Runtime-Validation
bced7e4621 Revert "performance: stop ULLS for BCS during migration"
This reverts commit 81ba52aac4.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-11-29 04:42:26 +01:00
Szymon Morek
81ba52aac4 performance: stop ULLS for BCS during migration
Related-To: NEO-13340

When regular copy CSR has enabled direct submission,
stop it before migration on internal CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-11-27 20:06:50 +01:00
Szymon Morek
b2fd1972a4 fix: add cpu alloc to eviction list only once
Related-To: NEO-12572

Also, before migration to GPU domain, remove it from this list

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-10-01 11:47:32 +02:00
Mateusz Jablonski
b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Milczarek, Slawomir
027c51d396 feature: Add CPU side USM allocation to trim candidate list on page fault
Enable eviction of CPU side USM allocation for UMD migrations on Windows.
Reverts incorrect auto-revert commit 218de586a4f28b1de3e983b9006e7a99d3a4d10e.

Related-To: NEO-8015

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-07-25 15:21:12 +02:00
Compute-Runtime-Validation
918b41d26d Revert "feature: Add CPU side USM allocation to trim candidate list on page f...
This reverts commit 60a4448a07.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-24 08:44:22 +02:00
Milczarek, Slawomir
60a4448a07 feature: Add CPU side USM allocation to trim candidate list on page fage fault
Enable eviction of CPU side USM allocation for UMD migrations on Windows.

Related-To: NEO-8015
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-07-23 10:24:28 +02:00
Compute-Runtime-Validation
4a562e352b Revert "feature: Add CPU side USM allocation to trim candidate list on page f...
This reverts commit cce2cc920d.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-07-21 16:40:59 +02:00
Milczarek, Slawomir
cce2cc920d feature: Add CPU side USM allocation to trim candidate list on page fault
Enable eviction of CPU side USM allocation for UMD migrations on Windows.

Related-To: NEO-8015

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2023-07-21 14:18:38 +02:00
Mateusz Jablonski
ea15b78a53 perf multi device ocl: reduce number of waitOnCpu calls when migrating memory
don't wait on cpu when migrate within same root device

Related-To: NEO-7552
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-04 11:23:03 +02:00
Kamil Kopryk
fa8579602f refactor: rename product helper files n/n
Related-To: NEO-7703
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-03-10 13:24:38 +01:00
Mateusz Jablonski
5a89a761f5 Fix OCL: always signal usage when migrating memory
multi storage memory migration needs to wait until memory is no longer used

Related-To: NEO-5735
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-14 15:10:02 +01:00
Warchulski, Jaroslaw
d1b2311207 Cleanup includes 49
Cleaned up files:
opencl/source/command_queue/command_queue_hw.h
opencl/source/gtpin/gtpin_defs.h
opencl/source/mem_obj/mem_obj_helper.h
opencl/source/memory_manager/mem_obj_surface.h
opencl/source/sharings/unified/unified_sharing.h
opencl/test/unit_test/api/cl_enqueue_migrate_mem_objects_tests.inl
opencl/test/unit_test/aub_tests/fixtures/unified_memory_fixture.h
opencl/test/unit_test/command_queue/command_queue_fixture.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-02-10 17:26:49 +01:00
Mateusz Jablonski
24c5352350 refactor: remove redundant including of compiler_cache.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-02-03 11:16:31 +01:00
Warchulski, Jaroslaw
4794648978 Cleanup includes 26
Cleaned up files:
opencl/source/command_queue/csr_selection_args.h
opencl/source/event/event.h
shared/source/helpers/engine_control.h
shared/source/sku_info/definitions/sku_info.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-11 09:10:45 +01:00
Kamil Kopryk
0dbf92d401 Refactor: reduce global productHelper getter usage
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-04 16:35:20 +01:00
Warchulski, Jaroslaw
a2fe929f0c Cleanup includes 18
Cleaned up files:
shared/source/command_stream/command_stream_receiver_hw.h
shared/source/compiler_interface/compiler_interface.h
shared/source/direct_submission/direct_submission_hw.h
shared/source/helpers/dirty_state_helpers.h

Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2023-01-02 13:28:29 +01:00
Kamil Kopryk
232b886056 Rename HwInfoConfig to ProductHelper
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-14 14:39:52 +01:00
Milczarek, Slawomir
25a5ed0dca Allocate buffers in local memory for PVC multi root device platforms (1/n)
PVC platform with no support for atomic operations on system memory
must always allocate buffers in local memory to avoid atomic access violation.
Note: the feature is being implemented under the new registry key
AllocateBuffersInLocalMemoryForMultiRootDeviceContexts (disabled by default)

Related-To: NEO-7092

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-11-14 13:56:50 +01:00
Patryk Wrobel
f6bf669ee9 Use forward declarations in compression_selector.h
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-09-14 11:54:24 +02:00
Bartosz Dunajski
4b0d986876 Move AllocationType enum out of GraphicsAllocation class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-04 17:49:09 +01:00
Bartosz Dunajski
68aea5bf62 Rename compression flags and helpers
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 18:09:02 +01:00
Bartosz Dunajski
9481d8a88b Compression refactor [2/n]
Dont use allocation type for compression preference

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-12-03 08:47:46 +01:00
Rafal Maziejuk
bbfbf19a02 Move allowStatelessCompression from HwHelper to HwInfoConfig
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-09 11:37:47 +02:00
Milczarek, Slawomir
15f0642d60 Compression selector to check for stateless compression
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-08-03 08:41:19 +02:00
Milczarek, Slawomir
eb14d8458b Add helper function to enable stateless compression
Related-To: NEO-5107

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-08-02 14:34:33 +02:00
Mateusz Jablonski
575445dbb5 Minor code cleanup
prevent nullptr dereference

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-07-22 19:25:23 +02:00
Mateusz Jablonski
6f3c89decb Add mechanism to migrate multi root device memory
invalidate TLB cache if kernel requires migration


Related-To: NEO-3691

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-07-19 19:49:22 +02:00
Bartosz Dunajski
96d14967ac Partial support for XE_HP_SDV
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-24 18:35:54 +02:00
Dominik Dabek
a5d38170ad Move some shared tests to shared
Tests that are not specific to openCL or level zero

Related-To: NEO-5161

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-05-18 13:51:18 +02:00
lgotszal
3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Milczarek, Slawomir
cf77aa1fe6 Add branch suffix for compression selector
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-05-05 12:15:46 +02:00
Mateusz Hoppe
4d2750161d Move OsAgnosticMemoryManager to shared
Resolves: NEO-5188
-move MockGraphicsAllocation to shared

Change-Id: I17e90af48183f003151fab075a46e40d7df3f160
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-02 21:02:53 +01:00
Bartosz Dunajski
d35806fdd8 Improve returning global and max alloc memory size
Change-Id: I2f22481412184f01652b7e49bc30a57c56e6204b
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-30 15:58:42 +01:00
Mateusz Hoppe
19d3fa73bd Rename flag to use32BitFrontWindow
Change-Id: I3ecffcce2586f7164577edd3ae4d473ac68a3185
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-21 12:38:33 +02:00
Filip Hazubski
ca5f34133b Move aub and tbx code to shared
Related-To: NEO-3964

Change-Id: Ice978e582721498d7496f989767ce7d6f5f4caf4
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-19 16:04:47 +02:00
Filip Hazubski
d27374b468 Move aub related files to aub directory
Additionally remove dependencies on opencl code from aub and tbx code.

Related-To: NEO-3964

Change-Id: Ie81b7d274e2f22b6090df0e07c45123618af5cae
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-16 12:05:58 +02:00
Mateusz Hoppe
4623cb3f85 Create module debug area allocation
Related-To: NEO-4550

Change-Id: I1aa151134cb51a7d4f578de3b08cdd51aefc58f2
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-16 11:21:39 +02:00
Igor Venevtsev
bd9695a19a Get rid of UNRECOVERABLE_IF in MemoryManager constructor
Related-To: NEO-5053

Change-Id: Ibf955c760e61e34c4d38cbb5071ef712bae1c518
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-10-07 11:18:56 +02:00
Maciej Plewka
e34c319ed7 Special address pool at External heap begining
Change-Id: I7da6e67010ff7a819aec25abea9213b6e43e348e
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-09-29 07:51:12 +02:00
Lukasz Jobczyk
b81a78d0e9 Evict USM cpu allocation after migration
Related-To: NEO-5007

Change-Id: I3c91af3ca22cb6233d530b252cc0c75d8fc2f8b5
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-09-18 13:01:45 +02:00