Commit Graph

649 Commits

Author SHA1 Message Date
Filip Hazubski 56c05a2f08 Update allocateGraphicsMemoryWithAlignment
Allocate Gmm object when the allocation uses compression.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-11-09 13:37:32 +01:00
Mateusz Jablonski 95610188af Fallback to cpu copy when filling work partition allocation
move some command stream receiver tests to shared

Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-03 12:17:02 +01:00
Compute-Runtime-Validation 782a287b27 Revert "Fallback to cpu copy when filling work partition allocation"
This reverts commit 93e3d948f5.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-10-29 04:39:22 +02:00
Mateusz Jablonski 515130dbe8 Fail on blitMemoryToAllocation when blitter is not supported
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-28 16:13:40 +02:00
Mateusz Jablonski 93e3d948f5 Fallback to cpu copy when filling work partition allocation
move some command stream receiver tests to shared

Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-28 14:30:00 +02:00
Kamil Diedrich 5fdcb14d57 WSL fallback to staging buffer on blocking reads
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-10-28 03:34:58 +02:00
Compute-Runtime-Validation ba767dfbaf Revert "Fail on blitMemoryToAllocation when blitter is not supported"
This reverts commit 7bfeeaab86.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-10-27 09:13:57 +02:00
Mateusz Jablonski 7bfeeaab86 Fail on blitMemoryToAllocation when blitter is not supported
Related-To: NEO-6325
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-26 11:05:51 +02:00
Lukasz Jobczyk 71ed3eba16 Add mapping based colouring
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-25 09:51:54 +02:00
Bartosz Dunajski d34ef3170a Remove CPP_ATTRIBUTE_FALLTHROUGH macro
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-22 17:27:57 +02:00
Artur Harasimiuk d2a29ce458 DrmBO: canonize GPU addresses
Related-To: NEO-6364
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-10-21 18:25:48 +02:00
Filip Hazubski 28b37aea72 Correct handling unique_ptr in functions
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-10-21 18:17:14 +02:00
Kamil Diedrich 465bec3d76 Add NTHandle sharing
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-10-19 14:17:25 +02:00
Jitendra Sharma f8c89fe984 Refactor memory manager so as to support device reset
Move out neoDevice dependent pieces of memory manager code into
separate methods. Those methods could be used for recreating a neoDevice
after a device reset is performed.

Related-To: LOCI-2615

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2021-10-19 07:16:29 +02:00
Zbigniew Zdanowicz 24ff191e61 Verify completion on all tiles
Related-To: NEO-6244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-15 15:43:28 +02:00
Mateusz Jablonski 0d74ab8ae8 Correct allocating event pool in device memory
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-13 17:36:46 +02: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
Milczarek, Slawomir 5aeae0cf99 Add mem advise control flags to drm alocation
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-10-12 11:39:06 +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
Lukasz Jobczyk 7392b5fb8d Add new colouring policy
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-10-07 23:33:26 +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
Milczarek, Slawomir afa45bd9e7 Add support for mem advise to set cache policy in buffer object
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-10-07 22:16:58 +02:00
Jaroslaw Chodor f1c24ddcbb WDDM - guard against duplicated host ptr allocs
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-10-06 22:33:40 +02:00
Katarzyna Cencelewska 30b3f5cdb0 Move PageTableManager from rootDeviceEnvironment to CommandStreamReceiver
Also add init of pageTable registers to blitter path

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-09-30 12:59:11 +02:00
Artur Harasimiuk a63b9b1273 move common files to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 11:10:20 +02:00
Mateusz Hoppe d4a4c35759 Zero-initialize debug surface
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-09-22 14:36:36 +02:00
Rafal Maziejuk dc8b92d8a6 Move heapInLocalMem function from HwHelper to HwInfoConfig
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-22 11:44:44 +02:00
Kacper Nowak abbe98be07 Fix allocating graphics memory for patterns in appendMemoryFill
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2021-09-16 16:20:10 +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
Kamil Kopryk 9ccf43e441 Correct branch_dir_suffix in cmake
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6245
2021-09-14 16:00:20 +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
Mateusz Hoppe 8d3438a5fb Allocate single Isa instance when debugging enabled
- Related-To: NEO-6221

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-09-08 11:49:50 +02:00
Mateusz Hoppe f2eb7f3aea Fix DirectSubmission residency handling
- allocations should be resident within OsContext

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-09-03 16:57:42 +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
Michal Mrozek bf1180753d Improve private memory allocation.
-allocate from single bank when only one sub device passed

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2021-08-26 07:46:23 +02:00
Compute-Runtime-Validation f1264c19dc Revert "Improve private allocation storage."
This reverts commit be3ca800bb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-08-20 02:54:09 +02:00
Michal Mrozek be3ca800bb Improve private allocation storage.
- Do not allocate on multi tile if device limits scope.

Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2021-08-18 15:02:14 +02:00
Jaime Arteaga 5c236a62fd Changes to SW tags
Add SW tags to synchronization points
Add ID sequence numbers
Add new allocation type

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-08-18 01:51:37 +02:00
Lukasz Jobczyk 49cf6f79f5 Validate host ptr on VM it will be used
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-16 08:15:53 +02:00
Bartosz Dunajski fb996a3d5b Add EngineDescriptor helper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-12 15:19:46 +02:00
Dominik Dabek 2a7757651a Change percent of global memory returned
Related-To: NEO-5796

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-08-11 13:33:16 +02:00
Kamil Diedrich 2d5d071e66 Extended import device memory functionality
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-08-10 13:24:56 +02:00
Andrzej Koska 94c97fc14c Allowing the creation of overlapping buffers
Related-To: NEO-5871

Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
2021-08-10 10:59:29 +02:00
Bartosz Dunajski ab73b61b77 Fix multitile ISA placement
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-02 15:16:13 +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
Lukasz Jobczyk d99f20d400 Move semaphore buffer to system memory
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-02 14:24:12 +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
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
Lukasz Jobczyk f22251f68a Add remaining external allocation types for local bank selector
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-22 16:57:37 +02:00
Lukasz Jobczyk 890eec6105 Separate local memory usage tracking for internal and external
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-22 07:52:43 +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 e939e97384 Dont replicate GPU_TIMESTAMP_DEVICE_BUFFER
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-07-16 15:23:50 +02:00
Bartosz Dunajski 3c88492229 Revert "Extended import device memory"
This reverts commit ea6555e788c98314160a11898212c2d664999705.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-07-16 09:56:52 +02:00
Jaroslaw Chodor fad4ee7e24 Enabling WDDM_LINUX by default
Based on libdxg headers, we're able
to support WDDM_LINUX (WSL2) in our
default build configuration

Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-07-14 12:42:29 +02:00
Kamil Diedrich d5fdb949eb Extended import device memory
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2021-07-07 16:12:36 +02:00
Bartosz Dunajski 9166f9223a Device pool allocation in OsAgnosticMemoryManager
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-07-07 13:09:12 +02:00
Lukasz Jobczyk 449c0dc856 Do not register allocation on fail
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-05 19:23:58 +02:00
Bartosz Dunajski c7a936d1f4 Add memory banks to Simulated CSR
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-07-05 12:19:58 +02:00
Lukasz Jobczyk 850b38781d Move RING_BUFFER to system memory
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-06-29 16:24:43 +02:00
Lukasz Jobczyk 73b0df3211 Disable gem close worker in CSR constructor
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-06-29 15:22:51 +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
Zbigniew Zdanowicz ea214dd26b Select lowest subdevice when USM memory is allocated in not multicontext
Related-To: NEO-5498

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-06-21 18:45:11 +02:00
Mateusz Hoppe 48feca4f44 Check Isa placement for every root device
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-06-21 11:53:19 +02:00
Jaime Arteaga 5e29dccddc Add IPC events support
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-06-08 08:11:15 +02:00
Bartosz Dunajski 8667f3eafa Remove incorrect check for Shared USM creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-07 14:48:33 +02:00
Maciej Dziuban 13b2c326fe Add AlignmentSelector helper
Related-To: NEO-5750
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-06-01 11:44:04 +02:00
Jaroslaw Chodor 9dbffa8d93 Refactoring createMemoryManager
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-25 16:58:21 +02:00
Mateusz Hoppe 0f32231fc8 Use correct INTERNAL heap base address for ISA in system memory
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-05-25 10:22:28 +02:00
Maciej Dziuban 33e8f73775 Enable custom allocation alignments on Linux
Related-To: NEO-5750
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-05-24 12:56:51 +02:00
Igor Venevtsev 21690dcea5 Fix debugSurface initialization
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-05-24 12:28:23 +02:00
Mateusz Jablonski ed31aaedb8 Make BUFFER allocation lockable on DG1
Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-21 17:05:51 +02:00
Andrzej Koska c59f44ecdf Collision avoidance on 36 bit address space
Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>

Related-To: NEO-5356
2021-05-21 11:20:35 +02:00
Mateusz Jablonski b50a6bec82 Correct isBlitCopyRequiredForLocalMemory
detect not lockable allocation based on gmm flag
Related-To: NEO-5733

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-20 13:17:49 +02:00
Jaroslaw Chodor abf0649a5b Improving cpp compliance
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-20 00:10:06 +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
Mateusz Jablonski a304e609fe Respect forceSystemMemory flag at the end of getAllocationData method
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-14 10:58:23 +02:00
Mateusz Jablonski b7c7bc0a24 Correct createMultiGraphicsAllocationInSystemMemoryPool method
force system memory placement
skip duplicated root device indices

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-13 12:11:49 +02:00
Mateusz Jablonski fcbf1dcf32 Mark SVM_GPU allocation as not lockable
require blitter usage if allocation is not lockable and in local memory

Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 17:47:15 +02:00
Mateusz Jablonski 296634f5b8 Fallback to CPU copy when blit copy fails
Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 15:38:24 +02:00
Mateusz Jablonski a552d1fd65 Revert "Mark SVM_GPU allocation as not lockable"
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 12:24:02 +02:00
Mateusz Jablonski a79f7b678b Mark SVM_GPU allocation as not lockable
require blitter usage if allocation is not lockable and in local memory

Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-05-12 09:49:35 +02:00
Bartosz Dunajski cffac84a3b Simplify creating EventPool allocation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-11 18:26:54 +02:00
Zbigniew Zdanowicz 544890c066 Change default placement of preemption allocation
Related-To: NEO-5800

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-05-11 15:26:24 +02:00
Lukasz Jobczyk 8e1e213bcf Disable GEM_WAIT when new residency model available
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-05-10 14:59:21 +02:00
Konstanty Misiak c4502ccf66 Fix OCL MOCS index with UNCACHED flag
Related-To: NEO-5742

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2021-05-04 10:01:44 +02:00
Compute-Runtime-Validation c453e7fe8b Revert "Mark SVM_GPU allocation as not lockable"
This reverts commit 5341d0663c.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-04-29 18:06:38 +02:00
Mateusz Jablonski 5341d0663c Mark SVM_GPU allocation as not lockable
use blitter if available and allocation is not lockable

Related-To: NEO-5733

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-29 15:55:13 +02:00
Mateusz Jablonski de116aac5c Make buffer allocations not lockable
Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-29 11:27:44 +02:00
Dominik Dabek bb9d902899 Add padding for ISA allocations
Related-To: NEO-5771
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2021-04-27 11:03:58 +02:00
Zbigniew Zdanowicz 902cce597a Add new functionality to load SIP from file
Related-To: NEO-5718

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-23 13:48:26 +02:00
Maciej Dziuban 495841812f Free allocations in 2MB heaps
Related-To: NEO-5750
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-04-23 09:07:37 +02:00
Mateusz Jablonski 9a22d06efe Store default engine index per root device
Resolves: NEO-5768
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-20 14:55:13 +02:00
Jaime Arteaga 128cd8a31c Add support for non-IPC P2P access to L0
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-04-20 01:05:40 +02:00
Mateusz Jablonski 2b956651a7 Mark Shared resource copy allocations as lockable
Related-To: NEO-5733
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-19 11:16:34 +02:00
Jaime Arteaga c540af8e5f Fix multidevice support for events
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-04-15 22:12:07 +02:00
Mateusz Jablonski 9026362b76 Add GraphicsAllocation::isLockable method
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-15 12:14:03 +02:00
Compute-Runtime-Validation c9b5de0f1d Revert "Add GraphicsAllocation::isLockable method"
This reverts commit 48d40ad850.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-04-15 07:58:35 +02:00
Mateusz Jablonski 48d40ad850 Add GraphicsAllocation::isLockable method
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-14 16:12:51 +02:00
Maciej Dziuban fd9fb3e46b Remove isInitialized() method from OsContext
We can fail early, instead of constructing an invalid object

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-04-13 14:12:20 +02:00
Maciej Dziuban 5f9dbef401 Pass alignment to Gmm
Related-To: NEO-5750

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-04-13 13:40:43 +02:00
Jaime Arteaga ddca333045 Improve support for L0 uncached device allocations
Make sure UNCACHED flags are translated into setting the MOCS index
for uncaching L3.

Related-To: NEO-5500

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-04-08 13:00:03 +02:00
Bartosz Dunajski f8f8b53d95 Improve OsHandle struct
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-02 18:42:16 +02:00
Milczarek, Slawomir cd9a35d2b4 Align gfx partition with standard heaps to max heaps granularity
Related-To: NEO-5507

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-04-02 09:20:21 +02:00
Milczarek, Slawomir 75f3b416ae Gfx partition with 64KB and 2MB heap granularities
Related-To: NEO-5507

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2021-04-01 14:54:55 +02:00
Krzysztof Gibala 7bfe26a08d Remove ensureMemoryOnDevice function
Remove:
- ensureMemoryOnDevice
- lastUsedRootDeviceIndex
- requiredRootDeviceIndex
- getMigrateableMultiGraphicsAllocation

Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-29 11:41:07 +02:00
Krzysztof Gibala 0b7d2da162 Create image allocations in system memory pool
Create image allocations in multi device setup in system memory pool

Related-To: NEO-5508

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-26 15:35:05 +01:00
Mateusz Hoppe 86a234ead6 Allocate debug area together with isa
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-03-26 09:31:44 +01:00
Jaime Arteaga 0dc73ad686 Isolate host allocations with respect to context
Related-To: LOCI-1996

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-03-25 06:15:59 +01:00
Mateusz Jablonski d6bbe48175 Handle SVM allocations from multi root device contexts
Related-To: NEO-5001, NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-24 11:14:39 +01:00
Krzysztof Gibala bdf8cf5e23 Add crossRootDeviceAccess flag
Add flag to AllocationProperties for setup system memory allocation path
for buffers

Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-23 14:56:19 +01:00
Slawomir Milczarek 693f2ff384 Ensure shared handle be closed once on Linux
Related-To: NEO-5644

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-03-18 18:38:01 +01:00
Lukasz Jobczyk 129357410c Update task count while waiting
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-03-17 15:09:25 +01:00
Krzysztof Gibala 274d2ff4b4 Correct createMultiGraphicsAllocationInSystemMemoryPool logic
isUSMHostAllocation flag will be set according to limited range product setup

Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-16 16:22:33 +01:00
Maciej Dziuban 264f20ea00 Pass EngineTypeUsage to OsContext creation
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-03-16 10:21:18 +01:00
Jaime Arteaga 6a81edfbe1 Add support for ZE_RELAXED_ALLOCATION_LIMITS_EXP_FLAG_MAX_SIZE
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2021-03-15 16:20:10 +01:00
Mateusz Hoppe 516a905712 Mark Scratch and Private allocations for capture
Related-To: NEO-5237

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-03-10 14:04:57 +01:00
Krzysztof Gibala 4abe4a96b8 Add multiGraphicsAllocation to CSR
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-10 12:42:01 +01:00
Zbigniew Zdanowicz 779253c49c Add new flag to USM memory manager
Related-To: NEO-5498

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-03-10 11:47:34 +01:00
Katarzyna Cencelewska d9172c9b7f 1Mb alignment support in OsAgnostic path
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2021-03-10 10:56:25 +01:00
Zbigniew Zdanowicz 24b928303b Rename fields in AllocationProperties
Related-To: NEO-5498

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-03-02 18:32:37 +01:00
Slawomir Milczarek 049166688c Introduced standard heap with 2MB alignment on Linux
Related-To: NEO-5507

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-03-02 14:03:37 +01:00
Zbigniew Zdanowicz 3e4be8d78e Add new allocation type
Related-To: NEO-5244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-02-26 12:57:12 +01:00
Slawomir Milczarek ef3678e005 Add checks for default cache policy
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-02-19 14:16:14 +01:00
Maciej Dziuban f7d105f2e2 Create work partition allocation
Related-To: NEO-5546
Resolves: NEO-5561
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-17 15:28:42 +01:00
Slawomir Milczarek 7dad49ccf4 Add new setters and getters for cache policies
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-02-11 14:07:06 +01:00
Kacper Nowak afbead513d Reuse SS allocations on freeGraphicMemory
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2021-02-09 16:00:42 +01:00
Lukasz Jobczyk 049e77b235 Check if KMD migration is supported
Related-To: NEO-3312

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-02-04 11:49:46 +01:00
Slawomir Milczarek 2a1069eda2 Configure 2MB alignment for allocations on standard heap 64k
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-22 11:56:33 +01:00
Krzysztof Gibala c27d8c8dfd Wait for all gpuAllocation in clMemBlockingFreeINTEL call
Related-To: NEO-5422
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-01-20 10:28:32 +01:00
Krzysztof Gibala ae1e5a91b4 Unlock multi device setup for shared allocation
Related-To: NEO-5422
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-01-15 11:08:11 +01:00
Igor Venevtsev cb13a5184d Check for supported CPU VA size in GfxPartition initialization
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-01-14 16:55:59 +01:00
Slawomir Milczarek 068cb09c90 Add function to check for USM host allocations in SVM Allocs Manager
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-12 15:41:24 +01:00
Krzysztof Gibala 3385500396 Use createHostUnifiedMemoryAllocation in clHostMemAllocINTEL
Unlock multi device setup for host allocation

Related-To: NEO-5422
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-01-05 17:16:59 +01:00
Mateusz Hoppe b9aee10679 Initialize internal heaps with at least minAddress from Wddm
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-01-04 13:13:13 +01:00
Mateusz Jablonski 1b7d7afc07 Refactor USM properties
store reference to std of root device indices and device bitfields
store NEO::Device in USM properties

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-30 11:36:56 +01:00
Slawomir Milczarek b2cae02f66 Add kernel fixture with stateless indirect access
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-15 13:23:37 +01:00
Slawomir Milczarek ff069c1171 Enable AUB memory dumps of USM allocations
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-01 11:24:41 +01:00
Slawomir Milczarek b4444c7660 Move close shared handle to the upper layer on Linux
Related-To: NEO-5274

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-11-23 11:45:05 +01:00
Mateusz Hoppe 0f42ef1ed7 Differentiate between users ISA and internal ISA allocation
Related-To: NEO-5240

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-16 13:16:30 +01:00
Jaime Arteaga 6f582adf5a Only add indirect USM allocations to container once
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-11-06 21:46:52 +01:00
Katarzyna Cencelewska e060536a32 Add check in allocateGraphicsMemory64kb to not use cpuPtr
when isRenderCompressed

Related-To: NEO-4532
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-11-06 17:14:07 +01:00
Bartosz Dunajski 3ed2823d45 Revert "Always reserve 48 bit window on 57 bit CPU"
This reverts commit 8f10db0c7ff13a72526141269ad09142a5d74e5f.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-11-06 14:12:46 +01:00
Krzysztof Gibala 3d9a180c12 Implement local memory path for all devices in buffer
Related-To: NEO-4589
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-11-05 15:01:58 +01: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
Lukasz Jobczyk 045632f355 Add new unified shared memory model
Related-To: NEO-3312

Change-Id: I640fb8d120729fa8bb2a23ff65c74c41ef27260d
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-11-02 19:23:40 +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 d539a7f8e4 Adjust AllocationProperties for SBA tracking buffer
Change-Id: I00d9d40c854c45775254b017997c53f17559daa4
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 15:48:25 +01:00
Igor Venevtsev 67a31d0975 Check for supported CPU VA size in GfxPartition initialization
Resolves: NEO-5220

Change-Id: I081b0c693e9d7a468be81e12d7f816fada5da21d
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-10-27 13:19:56 +01:00
Andrzej Swierczynski e4adb7efbf Change RequirementsStatus from enum to enum class
Related-To: NEO-5167

Change-Id: Iecf6ac74b5f757e90c36ef84a0f65339bf58e3f9
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-10-26 12:56:41 +01:00
Mateusz Hoppe 63d5c2b42a Assign INTERNAL_FRONT_WINDOW heap for DebugModuleArea allocation
Related-To: NEO-4550

Change-Id: Ic3209a5777245f0d1c6231cb0ce22d5327372a65
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-22 11:48:37 +02:00
Lukasz Jobczyk 5205d34894 Create multi graphics allocations with bo mmap
Change-Id: I97e3e3ddc8ae0f5a8ad9246befc9b2abc9c8c0f8
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-10-21 17:30:32 +02: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 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
Jaime Arteaga 6614698997 Add multi-device support to events
Change-Id: I544d2409fa5ad7c2b64f7bfd081469e80d4f9c73
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-15 12:54:51 -07:00
Mateusz Hoppe 067ae67954 Introduce FRONT_WINDOW heaps inside INTERNAL heaps
Related-To: NEO-4550

Change-Id: I1979afb20881bcad7999af3ac5fd4f407b85ccc7
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-15 17:18:31 +02:00
Lukasz Jobczyk 2d781e5934 Add missing USM host allocation flag
Change-Id: I5658d5574fd522cff072adcc679f04805daabf12
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-10-15 12:12:55 +02:00
Bartosz Dunajski 27f9a95af2 Refactor: Common helper for Blit and CPU memory transfers
Change-Id: Icc61f82517e75e3066e441494af3bf9a7ffbbeef
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-12 18:29:42 +02:00
Mateusz Hoppe 0e935b0e10 Add allowCapture flag to BufferObject
Related-To: NEO-5026

Change-Id: I69a9f270272a13fccdd1d8dd8b13ad03ef93cb79
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-09 17:04:43 +02:00
Lukasz Jobczyk a939c89d91 Create internal BOs with map offset
Resolves: NEO-5097

Change-Id: I842f3d482420373cc630d5bfc034e229fa2cb30c
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-10-09 16:38:03 +02:00
Bartosz Dunajski fb0651521d Linker: Fix incremental patching for local memory allocations
Change-Id: Ib85e4a2abc8a62477003853aa0c35f8107444f4e
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-09 09:13:42 +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
Andrzej Swierczynski bdf8c5fc90 Extend UnifiedMemoryProperties constructor to take device bitfield
Related-To: NEO-4722

Change-Id: Ice185f1792635922e9bb89cd7329e6501bc585e0
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-10-06 16:35:08 +02:00
Jaime Arteaga 9f9bf38d64 Copy user buffers when not accepted by Kernel
When performing copy operations to or from buffers allocated by the
user, it could happen that the buffer address is not accepted by
kernel, even though the buffer is valid. In those ocassions, then
allocate a new graphics allocation and copy the user buffer.

Change-Id: I6b1b6f2ef5fea0acf32c868bc87eafe8746f9a79
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-02 10:03:18 +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
Bartosz Dunajski 8db8b09339 Use dedicated helper to detect ISA placement requirement
Change-Id: I701c64b52fddfef1e493f4adaef4edc28f5ffdf0
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-22 13:30:12 +02:00
Mateusz Hoppe eb287d87d7 Register Allocations
Related-To: NEO-4964

Change-Id: I792dd7f7d6d594f51701ec7a40b2c0d36531b02b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-09-18 10:34:02 +02:00
Lukasz Jobczyk a528908cbd Unbind unused resources when running out of memory
Resolves: NEO-5052

Change-Id: I3a07221b800317c79e65396443933d13d334a274
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-09-17 12:59:45 +02:00
Maciej Dziuban 97ec64d22c Optimize first access to shared allocations
Change-Id: Ia3ce5f1e448128e7c9dfffb9ad49aaee15bdf948
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5059
2020-09-15 12:59:07 +02:00
Maciej Dziuban 7c7cfb1099 Delete unneeded memory transfer for USM
Change-Id: I7b11a132b621069febd5b851f9e29e7177d8d395
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5059
2020-09-14 16:13:58 +02:00
Zbigniew Zdanowicz 7d506e3608 Add debug flag to enable compression in L0 USM allocations
Related-To: NEO-5069

Change-Id: Icbfeb8d72cd764bb3c90d5c699998455f81dd3ee
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-09-14 12:47:33 +02:00
Jaime Arteaga 2527015bb8 Validate rootDeviceIndex before retrieving multiGraphicsAllocation
Change-Id: I4a5f6e8ae333e8daed13053fb2049fc5757736b5
Signed-off: Gengbin Zheng <gengbin.zheng@intel.com>
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-09-09 14:06:19 +02:00
Jaime Arteaga 5c1e60208e Share USM host pointers among devices (2)
Dont pin and instantiate buffer objects associated with a USM
allocation for device >0 at allocation time, but instead, just
do a USERPTR ioctl, as with the allocation associated with
device 0.

Change-Id: Ib37f379df177d14e9d2781a3ed6335cd9550cc87
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-09-04 12:10:06 +02:00
Vinod Tipparaju 083edd1a3e Thread safety violation fixes - Events & USM
Change-Id: I57de59f204d9fd4407be768d0b14bf579dae967d
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-03 08:54:34 +02:00
Krzysztof Gibala dcf708f2d2 Add proper ULTs to test createMultiGraphicsAllocation function
Related-To: NEO-4589
Change-Id: Ic78dee29f7715a6e5eff5b5c28f337452921d5b3
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-08-31 14:49:16 +02:00
Maciej Plewka a779e44b52 Support for dsh and ssh on external heap in L0
Related-To: NEO-4724

Change-Id: I85c2effea8a99bebaf9e3db33129641f37dcabe5
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-08-30 06:56:52 +02:00
Krzysztof Gibala 1c0e2430c5 Add createMultiGraphicsAllocation function in memory_manager
Related-To: NEO-4589
Change-Id: I0019437e565c06ac2494630182c4df685487853d
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-08-28 14:24:34 +02:00
Mateusz Jablonski 6870104a1a Pass maxOsContextCount to GraphicsAllocation
Change-Id: I4f327866433fe9b0cc0a6191336b54a9d2282702
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-26 09:57:15 +02:00
Igor Venevtsev 8a73b072b4 Share reserved CPU address space region among GfxPartitions
Related-To: NEO-4525

Change-Id: Id7534e317a10849c08ec29a090d782dcc4fabced
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-08-21 12:48:49 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Mateusz Jablonski fe163311b1 Pass maxOsContextCount to ResidencyData
Change-Id: If9cf4c9a153ee7afff3f6b66e061db4630d0c8f5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-18 17:45:10 +02:00
Koska 2a4af0b89b Adding handle verification
Change-Id: I46d6bd2dda46ace927cdfea5f47b0e614d5818f4
Signed-off-by: Koska <andrzej.koska@intel.com>
Related-To: NEO-4819
2020-08-06 16:36:39 +02:00
Krzysztof Gibala b65a41a8a5 Use StackVec in MultiGraphicsAllocation instead of std::vector
Related-To: NEO-4672
Change-Id: Ia7361d9bfb79f83f088e0ac236e769aa44ab84dd
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-08-04 16:57:54 +02:00
Jaime Arteaga 74ac02e1f3 Improve logic in addInternalAllocationsToResidencyContainer
Change-Id: I0be0082d2d70623867b691629cac09f5d653fc0d
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-14 18:51:55 +02:00
Krzysztof Gibala 6be8d332f4 Pass MultiGraphicsAllocation in Buffer 1/n
Pass MultiGraphicsAllocation in Buffer instead of GraphicsAllocation

Related-To: NEO-4672
Change-Id: I7fb05ab53f54875f41d90f480e7f930b3b9f2fda
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-07-14 16:50:39 +02:00
Filip Hazubski 2912cebbd4 Update Context::blitMemoryToAllocation function
Change-Id: I5f81cb023b75e82bd3aff8e393f6b9463c767112
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-07-13 15:23:51 +02:00
Andrzej Swierczynski 77f50e5444 Always pass device bitfield to AllocationProperties in constructor
Related-To: NEO-4722

Change-Id: Ie2475bf92a3189bcb9073bec5bf5af709e597c5d
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-07-13 09:00:10 +02:00
Jaime Arteaga a637c82c4e Share USM host pointers among devices
Change-Id: Ibdab580609e6bbb32b370ce6ee0b321df6d63245
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-10 23:06:06 +02:00
Bartosz Dunajski 1544453f24 Fix dumping allocations when BCS copy is allowed
Change-Id: I0d56e0d2e8007e7dc1686fab0e40502b658c254e
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-10 16:53:47 +02:00
Lukasz Jobczyk ff0add74e3 Add alternative residency model on Linux
Related-To: NEO-4732

Change-Id: I79e165d2b647af200ca314e1183ecf05903de644
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-10 12:38:57 +02:00
Mateusz Jablonski 1a1b4b1c26 Extend key to host ptr fragments container
use separated entries per root device

Related-To: NEO-3691

Change-Id: I26b85b8852b23e6a4d290da689174c59343536b3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-09 17:10:54 +02:00
Bartosz Dunajski 5c5d4b85e2 Pass HwInfo to setExtraAllocationData
Change-Id: Iba5433ca3de5f66ebb5ab4867607ec5fbb1cd464
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-09 12:09:02 +02:00
Mateusz Hoppe b3249c244b Make MemoryManager methods pure virtual
Related-To: NEO-4829

Change-Id: I97d0ef07bd26dac9869e61b5ff22064ea08596a8
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-08 12:00:09 +02:00
Mateusz Hoppe fea4472553 Allocate per-context memory with specific GPU VA
Related-To: NEO-4829

Change-Id: I821f6709bfa98df3b51a1c966b7a953752d85f74
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-07 09:14:10 +02:00
Mateusz Jablonski 3928205db1 Remove not needed assignment operator
Related-To: NEO-4672
Change-Id: I5351b799b87dc79689d865034f4a216aae1d6b8b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-06 13:56:33 +02:00
Mateusz Jablonski 93c1e1b976 Add MultiGraphicsAllocation to USM
Related-To: NEO-4672
Change-Id: I53ea4bea73ae6d52840146f63bc561bb90f9fe62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-02 09:39:21 +02:00
Bartosz Dunajski 6dd07bd3bc Use correct Heap32 index for local memory allocations
Change-Id: I068f712ab2b05ee3d5a9716b21de685a7fee3a02
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-01 17:31:43 +02:00
Mateusz Hoppe 5eafc349c9 Introduce SBA tracking buffer allocation
Related-To: NEO-4637

- allocate sbaAllocation in L0 debugger

Change-Id: Ia1be1ad637bbdd6e7f12ca6fdfb0c486ba23a040
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-01 09:46:05 +02:00
Jaime Arteaga 8113fafe53 Disable cross-device indirect access
Change-Id: I57655abfc02785dfd68384a1546ee4cfdbea938a
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-30 21:42:47 +02:00
Mateusz Jablonski c96fd30e4c Pass root device index to Buffer::setArgStateful
Related-To: NEO-4672
Change-Id: Ic846eac488809bd7d9534bb7378d9398acd36451
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-30 15:26:55 +02:00
Andrzej Swierczynski a5e4edb327 Choose valid bank from memory bank selector
Related-To: NEO-4645

Change-Id: I8d1f63ba24ead2e77ba6381e4770068bf2eb1725
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-06-26 10:51:43 +02:00
Mateusz Hoppe 5bd5784559 New AllocationType for debugSurface
Related-To: NEO-4797

Change-Id: I851b6cc5b33fb286bea9d175506e932339701f93
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-24 16:16:04 +02:00
Andrzej Swierczynski 5d24d51ea6 Correct tests: pass valid device bitfield [4/n]
Related-To: NEO-4645

Change-Id: Ib105d811711b7a4fdfad91ac93606cfdeb6d4ccb
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-06-18 16:18:56 +02:00
Maciej Dziuban 7ef2e4304c Rename levelNotReady to notReady
Change-Id: Id482c6edd36d1bdd63558aa35f13dbb57e0efbad
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-06-17 15:47:00 +02:00
Igor Venevtsev 3859e13322 Split large allocations on Windows due to Wddm limitation
Resolves: NEO-4479

Change-Id: Iffb862a93570a60c2126620d9e5106359acba64a
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-06-17 12:47:54 +02:00
Maciej Dziuban 3d919ed96c Do not check tag value for temporary allocations
Related-To: NEO-4624
Change-Id: I74ac6b0d4b9a7de689e68b12c23f7baa40f25304
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-06-15 16:38:47 +02:00
Kamil Kopryk dadbd5a09f Add debug flag to override bank index in local memory bank selector
Change-Id: Ie85129fc7cbdeb9cfa88b401430f983c096a868f
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-06-09 15:04:37 +02:00
Bartosz Dunajski 41235346f2 Add debug flag to control MultiStorageResources support
Change-Id: I8347989df2249559ca0e4cb69f7f3af3f9a5fe72
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-08 11:57:14 +02:00
Mateusz Jablonski 57d0967a2c Pass root device index to MemObj::getGraphicsAllocation method
leave parameterless method in Buffer and Image classes

add method to remove graphics allocation from MultiGraphicsAllocation

Related-To: NEO-4672
Change-Id: I3020eecfabe9a16af7f36d68a74b32d3f4fc2276
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-05 13:18:03 +02:00
Bartosz Dunajski 07e5aaa44c Use HwHelper to set extra AllocationData
Change-Id: I29d38b845287c169e538f78da2a7f0e58e589754
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-03 09:37:50 +02:00
Maciej Dziuban 639a5a64cd Add getAllocationDataExtra method
Change-Id: I99d9d55bf1b4116d7766f86471f6cd716374be5c
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-05-28 10:18:04 +02:00
Mateusz Jablonski 1efa54edcf Add MultiGraphicsAllocation class to store multiple graphics allocations
Related-To: NEO-4672
Change-Id: I01c758b0a9b80e3087011b74bbf04ec2bfc23b19
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-05-28 08:21:19 +02:00
Mrozek, Michal 4662183ccc Revert "Move timestamp packet buffer to system memory."
This reverts commit 660dae513e.

Change-Id: Ic14ac0edba62d2401fd1258c263ce55568cfb6da
2020-05-27 08:28:51 +02:00
Michal Mrozek 660dae513e Move timestamp packet buffer to system memory.
Change-Id: I0eb99c5a418d90e5d563d162581c9a382e036b14
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-05-26 17:41:18 +02:00
Dunajski, Bartosz 9be05634ad Revert "Check GraphicsAllocation usage before destroying USM allocation"
This reverts commit 67c945ab01.

Change-Id: I85671efcc46c489f3508f1e82c1d918e26062697
2020-05-18 08:38:34 +02:00
Bartosz Dunajski 67c945ab01 Check GraphicsAllocation usage before destroying USM allocation
Change-Id: I91db3b8e7004f6ebedde7c62c3bb83f746c84003
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-17 13:01:28 +02:00
Vinod Tipparaju c98949fd37 Fix thread safety violations within runtime allocators
Change-Id: I925d15429de314e3d3287f41a054732181911851
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-05-14 16:27:55 +02:00
Dunajski, Bartosz bd9fe606f2 Revert "Add entry points for memory placement overrides."
This reverts commit 997dcd607f.

Change-Id: Id5abadbff302cc1a7ff3d9da9ee62883498e7c22
2020-05-13 09:24:22 +02:00
Bartosz Dunajski 997dcd607f Add entry points for memory placement overrides.
Change-Id: Ie43781dc880b4937cf86441c9c46638e17282111
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-12 15:23:07 +02:00
Krzysztof Gibala cb8e9656ee Merge MemoryPropertiesFlags files
Move mem_properties_parser_helper files to memory_properties_flags_helpers
Rename MemoryPropertiesParser to MemoryPropertiesHelper

Related-To: NEO-4143
Change-Id: Ib35360bceff90be2383696083226f8be1e47538c
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-05-08 14:17:36 +02:00
Michal Mrozek 97c5a68e8e Remove not needed code.
Change-Id: I618a8d87668831942720ee714099fe31d9184b7b
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-05-06 15:17:04 +02:00
Zbigniew Zdanowicz bc9e2e1c6a Add debug flag to disallow allocation into system memory
Related-To: NEO-4338

Change-Id: I2a7aaf12119dc808b416a3ad17b1984fae45e855
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-05-04 10:42:32 +02:00
Krzysztof Gibala b0ed3b2ab1 Refactor MemoryPropertiesFlags
Rename:
- MemoryPropertiesFlags to MemoryProperties
- MemoryPropertiesParser to MemoryPropertiesParserHelper
- getMemoryPropertiesFlags to getFlags
- getMemoryPropertiesFlagsIntel to getFlagsIntel
- functions involved with MemoryPropertiesFlags

Related-To: NEO-4143
Change-Id: I4eec67bba95dd5354d0df43c31e6ca724909138e
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-04-28 18:15:25 +02:00
Mateusz Jablonski 7ed45adb27 Pass device bitfield when creating SVM alloc
Related-To: NEO-4484
Change-Id: Ie70b6fbd3351615bc15005755f2d7d9b4a3bad32
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-27 10:17:06 +02:00
Lukasz Jobczyk eabed40e3e Re-use temporary allocations
Resolves: NEO-4123

Change-Id: I44e9de4f1bf576adbbe8d69d1ec2c6ae1bbca35f
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-04-20 10:07:52 +02:00
Mateusz Jablonski 0c404bc880 Pass device bitfield to allocation properties when creating mem obj
Related-To: NEO-4484
Change-Id: I961e9122591dc7293e37d5c1ca58cbcd649ee653
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-16 15:01:37 +02:00
Michal Mrozek 87dccc2c07 Remove redundant debug flag.
- We now have ForceSystemMemoryPlacement to achieve the same.

Change-Id: I84512b0f8b070edbdbd54fdce46a2958afb8ef41
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-04-10 11:37:01 +02:00
Jaime Arteaga 29464fb9ad Correct root device index in SBA programming (2)
Add ULT

Related-To: NEO-3691

Change-Id: I61f6ba9b988b5245a2657c38c7bb0b94fbb3a295
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-04-08 11:54:26 +02:00
Michal Mrozek 23dd6b95ec Require system memory for command buffers.
- Except when they ask for multiOsContext capabilities.

Change-Id: I4589bd48cd6dc7a582c7f3bb7d481874ce576d22
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-04-07 13:53:19 +02:00
Michal Mrozek 7b5778c048 Add debug flag to force system memory placement.
-remove not needed Report64BitIdentifier
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>

Change-Id: Ic6ae96e2a575a088742f3b08eb40c5b400f93088
2020-04-07 09:53:00 +02:00
Filip Hazubski d0527e1049 Rename memory_constants.h to constants.h
Change-Id: I05b5d20bac12935dc6625b94adc3a03c98c19b49
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-02 14:19:39 +02:00
Filip Hazubski a7e4ad4eba Add unspecifiedDeviceIndex constant
Change-Id: I146e9c80ce0d18aae5e56fadf83f5e1603173fd7
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-01 20:37:05 +02:00
Igor Venevtsev 2ac968e6c2 Add alignment capability do OSMemory::reserveCpuAddressRange
Resolves: NEO-4510

Change-Id: Iffcb33d1c06ca930345df0216bc5d3d1ce12c313
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-04-01 07:46:40 +02:00
Michal Mrozek f599773c27 Add debug flag to force buffers into system memory.
Change-Id: I2040bb9bb9ec719a78f8e93025f3c4f96f952a86
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-03-31 10:30:49 +02:00
Zbigniew Zdanowicz 2dde71fa74 Add flags to control addresing mode of direct submission allocations
Related-To: NEO-4338

Change-Id: I40ff0110d0f414a0e2d0167e86d9a148b17a0921
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-26 13:05:50 +01:00
Michal Mrozek 7bd910c94b Require 48 bit for command buffers.
Change-Id: I07cc254d7fc5be3d0f0e715d6e397d629d7ff17c
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-03-24 10:47:37 +01:00
Igor Venevtsev 2b6fa20e12 Set resource48Bit flag according to GraphicsAllocation::AllocationType
Related-To: NEO-2941

Change-Id: Iefb1870280ef60cf6c70c195e1e7d23739f7b427
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-03-16 16:47:01 +01:00
Raiyan Latif 43433244f9 Enable support for indirect allocation access to Kernels
Change-Id: I3ded8cce3761a38aa4a4d71b4089f79c844311c5
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2020-03-15 22:13:19 +01:00
Michal Mrozek 3243b9d69d Limit blitter max height.
Change-Id: I957d5501cac8b837391f88d6e20d1bf47e681ae5
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-03-13 12:29:28 +01:00
Lukasz Jobczyk e9c576393e Move hwInfo to root device environment
Related-To: NEO-3857

Change-Id: Ic23077cad080a249457cec39462ca7407e75b227
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-10 17:13:08 +01:00
Zbigniew Zdanowicz ad4925aef9 Do not use direct submission in internal and low priority contexts
Change-Id: Ifac52dd36737151ea4d84bec95750e1716cafa9a
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-04 13:12:37 +01:00
Michal Mrozek 4803e82eda Add entry points for detecting whether cpu copy is required.
Change-Id: I04438da6241eedf127fd7e51ab257d22186d904e
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-02-28 13:48:06 +01:00
Lukasz Jobczyk c824b2e451 Create local memory bank selector per root device
Related-To: NEO-3857

Change-Id: I52a2908715e8f2f9b5d84891bd039b88b3d163ca
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-02-26 11:48:26 +01:00
Mateusz Jablonski 74072d4916 Access GmmHelper and GmmClientContext via RootDeviceEnvironment
Related-To: NEO-3857
Change-Id: Ie9d719c9884fd89580ce3592a0d4d4cd42862f47
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-25 12:32:16 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00