Commit Graph

199 Commits

Author SHA1 Message Date
Filip Hazubski
6992cb8aeb fix: Add experimental debug toggle to force 2M local memory size alignment
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-06-27 15:21:35 +02:00
Michal Mrozek
c817d15b59 fix: residency leak
- properly add needsMakeResidentBeforeLock in Wddm Allocation so while
destroying the allocation it is properly removed from wddm residency controller
- add cannot trim further flag after eviction
- fix debug variable

Related-To: NEO-11731
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2024-06-25 15:17:11 +02:00
Jaroslaw Warchulski
63da79798d refactor: reduce the number of GraphicsAllocation constructors and derivatives
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-18 21:31:37 +02:00
Jaroslaw Warchulski
daec249430 refactor: remove not needed createGraphicsAllocationFromNTHandle method
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-18 14:25:00 +02:00
Compute-Runtime-Validation
196f0a6eee Revert "fix: pass custom alignments for WSL2 device and shared memory allocat...
This reverts commit 1c98420518.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-06-18 07:58:28 +02:00
Jaroslaw Warchulski
76a05c1cab refactor: pass arrayIndex to Wddm::openNTHandle function
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-12 12:11:35 +02:00
Jaroslaw Warchulski
0ac1be7669 refactor: pass arrayIndex to Wddm::openSharedHandle function
Related-To: NEO-11498
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-07 09:51:26 +02:00
Lukasz Jobczyk
9a2fa1dcb1 fix: Override prefer no cpu access for dc flush mitigation
Related-To: NEO-10556

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-06-05 10:26:45 +02:00
Lukasz Jobczyk
a9269939f6 fix: Defer MOCS to PAT
Related-To: NEO-10556

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-05-27 10:26:26 +02:00
Compute-Runtime-Validation
ce0ccacef6 Revert "fix: Defer MOCS to PAT"
This reverts commit 6c75ec3116.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-05-25 06:22:22 +02:00
Wenbin Lu
1c98420518 fix: pass custom alignments for WSL2 device and shared memory allocation
Related-To: NEO-8431

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-05-24 15:52:40 +02:00
Lukasz Jobczyk
6c75ec3116 fix: Defer MOCS to PAT
Related-To: NEO-10556

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-05-24 15:30:49 +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 Plewka
8a7444e798 fix: Undo accidental changes in wddm memory manager
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-05-15 16:11:30 +02:00
Lukasz Jobczyk
8a0c425495 feature: Mark selected resources as UC when mitigating dc flush
Related-To: NEO-10556

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-04-12 12:52:13 +02:00
Mateusz Jablonski
78a4a92b44 refactor: reorder members to reduce internal padding in structs
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-25 15:50:00 +01:00
Kozlowski, Marek
6751d19c19 fix: decanonize pointer to match GPU heap address space
* `zeVirtualMemReserve` `pStart` address may be passed in a canonizated form.

Resolves: NEO-10086

Signed-off-by: Kozlowski, Marek <marek.kozlowski@intel.com>
2024-03-01 12:18:11 +01:00
Lukasz Jobczyk
cc1732c930 performance: make resident before lock
Resolves: NEO-10369

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-02-16 12:00:38 +01:00
Compute-Runtime-Validation
4d159bd06c Revert "performance: make resident before lock"
This reverts commit 7e7fac01e3.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-02-16 09:23:49 +01:00
Lukasz Jobczyk
7e7fac01e3 performance: make resident before lock
Resolves: NEO-10369

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-02-15 11:56:36 +01:00
Lukasz Jobczyk
5717a726ff fix: Allow free of zero sized allocation
Related-To: NEO-9236

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-02-07 17:04:11 +01:00
Katarzyna Cencelewska
eec01e500a fix: non-coherency issue on arl
Resolves: HSD-15015200338
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-01-26 10:26:33 +01:00
Maciej Plewka
09dcc618c1 fix: prefer compression when allocationg by kmd
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2024-01-22 16:38: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
01dd503e47 refactor: correct naming of MemoryPool enum values
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 07:51:39 +01:00
Mateusz Jablonski
0428c0acd1 refactor: correct naming of HeapIndex enum values
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-12 11:46:17 +01: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
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
Mateusz Jablonski
36194c4e7d refactor: correct variable namings
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-29 23:49:03 +01:00
Fabian Zwolinski
f91757c093 fix: enable 4KB allocation alignment through KMD on Windows
Related-To: NEO-9446
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-11-16 13:04:23 +01:00
Dominik Dabek
8f06f3f50a performance: add override cacheable to gmm
add attribute to override cacheable attribute to gmm constructor

enable this override for command buffers on mtl

change command buffers back to allocation by kmd

this keeps the quicker allocation which is needed to keep enqueue times
low

Related-To: NEO-8152

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-11-16 10:00:45 +01:00
Dominik Dabek
961a8d91d0 refactor: move gmm constructor flags to struct
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-11-15 09:26:13 +01:00
Compute-Runtime-Validation
b3a7f5dccb Revert "fix: support alignments in WSL2 device and shared memory allocation"
This reverts commit ae86635307.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-11-11 16:25:52 +01:00
Lu, Wenbin
ae86635307 fix: support alignments in WSL2 device and shared memory allocation
Related-To: NEO-8431

Signed-off-by: Lu, Wenbin <wenbin.lu@intel.com>
2023-11-09 19:47:11 +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
Fabian Zwolinski
ede8663e41 fix: iGPUs - increase size of reported global memory available on Windows to 94%
Related-To: NEO-8989, NEO-7229
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-10-20 10:37:11 +02:00
Mateusz Hoppe
97faeae16f feature: heapAssigner per root device
- create heapAssigner per root device in memory manager to allow per
device config

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-19 19:52:24 +02:00
Spruit, Neil R
456f07212d fix: Return pageSize/Heap for reservation based on the size and devices
Related-To: NEO-9127,NEO-9142

- Change the heap/pageSize used based on the size of the reservation
required and the device heaps available.
- Return the page size required based on the size requested by the user
for virtual reservation and the devices on the system.
- Check the size passed in by the user in memory map and physical memory
allocation is valid for the heap and page size that is required.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-10-19 10:44:13 +02:00
Dunajski, Bartosz
af7bcbf99c Revert "refactor: split CpuInaccessible MemoryPool types to Device and System"
This reverts commit 2e8cf5fdf5.

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-17 10:03:14 +02:00
Dunajski, Bartosz
2e8cf5fdf5 refactor: split CpuInaccessible MemoryPool types to Device and System
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2023-10-16 12:47:13 +02:00
Mateusz Jablonski
bede264d0d fix: add unrecoverable to avoid undefined behavior
Related-To: NEO-9038
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-10-11 08:41:44 +02:00
Mateusz Hoppe
c2d69e5857 feature: allocate SPECIAL_SSH heap in front window from EXTERNAL heap
- SPECIAL_SSH is used for debug surface SurfaceState which must be
located at bindless offset zero
- limit size of external front window

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-09 14:54:39 +02:00
Mateusz Hoppe
8b4242eb32 refactor: move setting GpuBaseAddress to mapGpu call
- set base address of heap after mapping allocation to gpu va
- ensures the same heapIndex is used while choosing heap range and
setting base

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-09 12:21:23 +02:00
Mateusz Hoppe
9134a4e1bc fix: call heapFree with gpu address for front window allocations
- when heapAllocate is used to get gpu address, heapFree should be
called on memory free

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-05 16:40:35 +02:00
Mateusz Hoppe
e676ac49bb fix: front window allocations in device pool with correct gpu address
- use correct FRONT_WINDOW heap address when flag use32BitFrontWindow is
set while allocating from Device Pool
- applies to Windows OS

Related-To: NEO-4550, NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-10-05 12:19:20 +02:00
Compute-Runtime-Validation
8042df8bb4 Revert "fix: support alignments in device and shared memory allocation on WSL2"
This reverts commit dd46bf1e90.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-10-04 02:25:25 +02:00
Lu, Wenbin
dd46bf1e90 fix: support alignments in device and shared memory allocation on WSL2
Related-To: LOCI-4334

Signed-off-by: Lu, Wenbin <wenbin.lu@intel.com>
2023-10-03 19:22:23 +02:00
Mateusz Hoppe
371412a826 refactor: remove useLocalMem from allocate32BitGraphicsMemoryImpl
- this method allocates System Memory
- argument is not needed - ExternalHeap is selected inside this function
- remove unneeded ults
- allocate memory in Device Pool for external heap allocation in
OsAgnosticMemoryManager

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-09-18 10:08:09 +02:00