Slawomir Milczarek
5c1b50bccf
Add memory prefetch modes for single and multiple subdevices
...
Single-subdevice prefetch for cmd list copy-only (with bcs) and acc mode.
Multi-subdevice prefetch (default) for shared allocation with multiple BOs.
Related-To: NEO-6740
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com >
2022-12-07 15:25:32 +01:00
Lukasz Jobczyk
7c572b4090
Do not free SVM alloc under SVM manager lock
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-12-02 12:36:10 +01:00
Lukasz Jobczyk
dbc6ac2743
Set alignment for SVM_CPU properties on xe_hpc and later
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-12-02 12:35:54 +01:00
Compute-Runtime-Validation
083471a158
Revert "Set alignment for SVM_CPU properties"
...
This reverts commit db89d2ce6b .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-12-02 08:17:13 +01:00
Lukasz Jobczyk
db89d2ce6b
Set alignment for SVM_CPU properties
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-12-01 10:45:47 +01:00
Lukasz Jobczyk
7ea11f9e44
Remove 2MB alignment from host part of shared allocation
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-11-30 17:04:24 +01:00
Maciej Plewka
4b42b066f8
Use dedicated using type for TaskCount
...
Related-To: NEO-7155
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2022-11-28 16:44:44 +01:00
Compute-Runtime-Validation
7b195d6b8e
Revert "Add support for USM shared in WSL for dGPU"
...
This reverts commit 44d8a6ae2b .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-11-25 08:42:15 +01:00
Kamil Diedrich
44d8a6ae2b
Add support for USM shared in WSL for dGPU
...
This patch force KMD allocation path for USM shared
Additionally we force 64kb page from lock which is
required to properly program GPU VA
Related-To: NEO-6913
Signed-off-by: Kamil Diedrich kamil.diedrich@intel.com
2022-11-23 12:41:25 +01:00
Lukasz Jobczyk
e197736b6f
Ensure base ptr is passed to PageFaultManager::removeAllocation
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-11-17 16:12:31 +01:00
Compute-Runtime-Validation
083168dafb
Revert "Add support for USM shared in WSL for dGPU"
...
This reverts commit b0c97e49ea .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-11-16 10:09:42 +01:00
Kamil Diedrich
b0c97e49ea
Add support for USM shared in WSL for dGPU
...
This patch force KMD allocation path for USM shared
Related-To: NEO-6913
Signed-off-by: Kamil Diedrich kamil.diedrich@intel.com
2022-11-14 13:56:22 +01:00
Lukasz Jobczyk
ff500e0de6
Add support for external hostptr in shared allocations
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-11-09 14:48:01 +01:00
Maciej Plewka
1458602efc
Store indirect residency at command queue level
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2022-09-22 14:07:19 +02:00
Compute-Runtime-Validation
643e21631c
Revert "Store indirect residency at command queue level"
...
This reverts commit ffad5c6c09 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-09-20 18:12:12 +02:00
Maciej Plewka
ffad5c6c09
Store indirect residency at command queue level
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
Related-To: NEO-7211
2022-09-19 17:01:20 +02:00
Dominik Dabek
16798467ac
Add api specific config for allocation cache
...
Currently disabled for both opencl and level zero
Related-To: NEO-6893
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-09-05 21:15:18 +02:00
Dominik Dabek
2d949a9f3d
Fix device allocation cache
...
Do not use aligned size when storing allocation
Trim allocation cache before deleting devices
Related-To: NEO-6893
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-08-26 11:15:56 +02:00
Mateusz Jablonski
3d9b5d441a
Add UNRECOVERABLE_IF to avoid nullptr dereference
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2022-08-09 15:44:49 +02:00
Milczarek, Slawomir
3e22f30ed5
clEnqueueMigrateMemINTEL with memory prefetch for KMD migrated shared allocation
...
Related-To: NEO-6740
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com >
2022-07-14 17:35:22 +02:00
Dominik Dabek
cdfe2ce8ad
Feature: Flag for device usm allocation reusing
...
With flag enabled, when app calls freeSVMAlloc on device usm allocation,
don't free it immediately but save it,
and try to use it on subsequent allocations.
This allocation cache will be trimmed if an allocation fails.
Related-To: NEO-6893
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-06-13 20:02:52 +02:00
Artur Harasimiuk
819e0f5515
style: configure readability-identifier-naming.LocalVariableCase
...
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com >
2022-05-16 12:39:44 +02:00
Dominik Dabek
8d1ad5a4f3
Refactor: use stack vector for root device indices
...
Stack vector will not cause dynamic allocations in most circumstances
ie. number of root device indices not more than 16
Related-To: NEO-6837
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-04-14 14:05:42 +02:00
Compute-Runtime-Validation
7a3976ad64
Revert "Force 64KB page size for cpu alignment in dual storage allocation"
...
This reverts commit 7ff6a5c1fa .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-04-07 00:45:07 +02:00
Kamil Diedrich
7ff6a5c1fa
Force 64KB page size for cpu alignment in dual storage allocation
...
There is no need to force 2MB alignment for CPU allocation in dual
storage usage. Additionaly for WSL this will allow to avoid usage of
malloc in driver path.
Relates-To: NEO-6620
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com >
2022-04-06 15:28:17 +02:00
Jaime Arteaga
c0e2251ceb
Skip adding allocations to remote devices if not allocated there
...
When making graphics allocations resident in multi-GPU scenarios,
we should make them resident only if there's an allocation for that
device. So return appropriate null pointer and skip it.
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2022-03-16 23:58:07 +01:00
Jaime Arteaga
a010fb3634
Dont close shared handle on imported allocations
...
Related-To: LOCI-2272
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2022-03-06 04:35:47 +01:00
Lukasz Jobczyk
0634aa3f1b
Create resource with given address
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-02-24 17:06:19 +01:00
Lukasz Jobczyk
c405fb5c2c
Use shared mutex for unified memory manager
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2022-02-23 19:00:38 +01: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
Milczarek, Slawomir
2be98a1e62
Create kmd migrated allocation with initial placement
...
Implements ZE_HOST_MEM_ALLOC_FLAG_BIAS_INITIAL_PLACEMENT
for zeMemAllocShared with KMD migrated allocation.
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com >
2022-02-01 15:42:10 +01:00
Dominik Dabek
a5067d6b0b
Remove duplicate check in residency container
...
Remove find in SVMAllocsManager
addInternalAllocationsToResidencyContainer,
not needed, CSR resolves duplicates at makeResident calls
Co-authored-by: Michal Mrozek <michal.mrozek@intel.com >
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-01-26 17:09:31 +01:00
Jaime Arteaga
dbf0f90186
Return pageSize in getMemAllocProperties
...
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2022-01-25 18:26:13 +01:00
Michal Mrozek
6df17f5a30
[3/n] Optimize indirect allocations handling.
...
Add new debug variable to trigger new mode.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-01-25 16:40:56 +01:00
Michal Mrozek
52d636394c
[1/n] Improve indirect allocations handling.
...
Add new functions that would treat all indirect allocations as single pack.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-01-25 06:27:33 +01:00
Michal Mrozek
151aaf7678
Fix alignment for host allocations.
...
- it is 4k not 64k.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2022-01-24 13:24:03 +01:00
Compute-Runtime-Validation
6082865eb4
Revert "Optimize Level Zero indirect allocations handling."
...
This reverts commit 3ecbc55ba9 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2022-01-20 11:41:13 +01:00
Michal Mrozek
3ecbc55ba9
Optimize Level Zero indirect allocations handling.
...
Make them resident directly instead of populating residency container
Remove finds, not needed, CSR resolves duplicates at makeResident calls
Observed gain is 32x for 10k indirect allocations.
Co-authored-by: Michal Mrozek <michal.mrozek@intel.com >
Co-authored-by: Dominik Dabek <dominik.dabek@intel.com >
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2022-01-19 13:08:35 +01:00
Bartosz Dunajski
e040c8c6bb
Initial compression support for L0 Device allocations
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2021-12-16 15:55:13 +01:00
Bartosz Dunajski
dfdd3c597a
Remove redundant BUFFER_COMPRESSED allocation type
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2021-12-07 13:35:49 +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
Mateusz Jablonski
b1df167632
Move enable_product.inl to shared
...
extract api agnostic validators to shared
remove not needed opencl includes from neo shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2021-10-12 22:02:16 +02:00
Michal Mrozek
06561a06b6
Restore 2MB size & alignment for CPU SVM.
...
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2021-10-11 23:16:42 +02:00
Michal Mrozek
c8e79b7447
Change shared allocations required alignment to 64KB.
...
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2021-10-08 13:08:11 +02:00
Mateusz Jablonski
48f01f28f5
Move core part of MemoryPropertiesHelpers to shared
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2021-10-07 23:14:38 +02:00
Jaime Arteaga
522d2550ee
Add allocation ID to be retrieved by L0 getMemAllocProperties
...
zeMemGetAllocProperties() specifies an ID for the allocation can be
retrieved by the application. This can be used by applications to
identify the allocation throughout the application lifetime.
We were currently returning as id the same allocation address. This
patch fixes it to return a true unique identifier for the allocation.
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2021-09-15 19:22:50 +02: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
Kamil Diedrich
4390590831
Add shareable allocation for Windows
...
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com >
2021-08-26 13:43:55 +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
Jaime Arteaga
b057935c7c
Associate shared-allocations with device in multi-device systems
...
When a shared-allocation is created in a multi-device system and
no device is passed during the call, then the allocation needs to be
associated with all the devices. For now, that means we default to
creating the shared-allocation in the host, with no device-backing
memory, so all devices can access it.
However, if a device is passed, then the shared-allocation is
expected to be accessed only by that device, and there is no need
to allocate it solely in the host.
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com >
2021-07-29 20:28:27 +02:00