Fabian Zwoliński
d2ce3badfc
fix: bindlessHeapsHelper handle unavailable external heap
...
This PR handles the situation in which a component
has reserved a front window space for itself in the external heap,
so that the Compute Runtime cannot access this area.
In such a situation, we perform the following steps:
1. reserve 4GB chunk in heapStandard
2. split our chunk into 2 parts: heapFrontWindow, heapRegular
3. from this point on, map all linearStream allocations in reserved 4GB
chunk
Patch applies to Windows and WSL.
Patch only applies when the bindless global allocator is enabled.
Related-To: HSD-16025889919
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com >
2024-12-05 14:18:01 +01:00
Wenbin Lu
2ba80ce114
feature: support physical host memory
...
Related-To: NEO-11981
Signed-off-by: Wenbin Lu <wenbin.lu@intel.com >
2024-11-20 08:19:52 +01:00
Lukasz Jobczyk
5b3d244e97
refactor: Add AIL for hostptrs drain
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-11-19 15:13:30 +01:00
Lukasz Jobczyk
7f3896d05f
performance: Ensure hostptrs removed before creating new one
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-11-12 13:55:15 +01:00
Bartosz Dunajski
7f5e6b4124
Revert "fix: Enable 64k pages for TSB allocation"
...
This reverts commit eed69f45ed .
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2024-10-28 16:02:34 +01:00
Maciej Bielski
45e78fea76
fix: use productHelper in getPatIndexInfoString() on Windows
...
Fix the PAT-index reporting in logger as currently on Windows reported
values are simply wrong.
The changed logic dependends on `RootDeviceEnvironment` and in order to
avoid introducing such dependencies into logger.[ch] the
`logAllocation()` is no longer a member of `FileLogger` but
a free-function instead (and a separate .cpp file). This is important
because the source files `logger.[ch]` are also used by ocloc library
and there is no point to contaminate ocloc code structure with
unnecessary dependencies.
Related-To: NEO-9421
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com >
2024-10-22 19:27:13 +02:00
Wenbin Lu
a8a40d2afd
feature: support SVM heap in reserveVirtualMem
...
Related-To: NEO-11981
Signed-off-by: Wenbin Lu <wenbin.lu@intel.com >
2024-10-22 16:47:14 +02:00
Bartosz Dunajski
eed69f45ed
fix: Enable 64k pages for TSB allocation
...
Related-To: HSD-18040274716
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2024-10-22 15:12:42 +02:00
Lukasz Jobczyk
8a647f6a39
Revert "performance: Ensure hostptrs removed before creating new one"
...
This reverts commit 5b2f2f3d83 .
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-10-21 10:36:06 +02:00
Mateusz Hoppe
5ae2552b4b
fix: track shifted contextIds in bitset in bindlessHeapsHelper
...
- bitset is 64 bit in size, context ids may go beyond that limit
when multiple devices are available
- this change subtracts contextId of first context for a given root
device - tracked state dirty contexts ids are now zero-based
Resolves: GSD-10025
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-10-09 10:32:29 +02:00
Lukasz Jobczyk
5b2f2f3d83
performance: Ensure hostptrs removed before creating new one
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-10-08 13:04:56 +02:00
Compute-Runtime-Validation
60afb83b3b
Revert "performance: Ensure hostptrs removed before creating new one"
...
This reverts commit a890ed5648 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-10-08 07:45:55 +02:00
Dominik Dabek
3685852ce0
Revert "performance: device usm sets localOnly...
...
Required"
This reverts commit a479afdbc8 .
Related-To: NEO-12879
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2024-10-07 11:59:37 +02:00
Compute-Runtime-Validation
41df1a6f47
Revert "feature: support SVM heap in reserveVirtualMem"
...
This reverts commit bfaeeb01d6 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-10-03 14:53:50 +02:00
Lukasz Jobczyk
a890ed5648
performance: Ensure hostptrs removed before creating new one
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-09-19 14:34:19 +02:00
Compute-Runtime-Validation
e4d2f16632
Revert "performance: Ensure hostptrs removed before creating new one"
...
This reverts commit ac1d203555 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-09-18 19:31:34 +02:00
Lukasz Jobczyk
ac1d203555
performance: Ensure hostptrs removed before creating new one
...
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com >
2024-09-18 14:23:16 +02:00
Michal Mrozek
dd631610b3
refactor: move memory tracking to memory manager
...
- remove wddm specific code
- improve total size reported to be in decimal
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2024-09-12 17:32:38 +02:00
Michal Mrozek
da59b88122
refactor: improve logging of allocations
...
add capability to measure total amount of allocated memory
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
2024-09-12 11:00:27 +02:00
Wenbin Lu
bfaeeb01d6
feature: support SVM heap in reserveVirtualMem
...
Related-To: NEO-11981
Signed-off-by: Wenbin Lu <wenbin.lu@intel.com >
2024-09-09 23:22:04 +02:00
Mateusz Hoppe
32fb476f6d
refactor: debugbreak in simulation on memcopy to multi bank allocation
...
- if allocation has multiple banks, memcpy cannot write different data
for multiple banks
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-09-04 12:27:20 +02:00
Compute-Runtime-Validation
a4f68c57bb
Revert "refactor: debugbreak in simulation on memcopy to multi bank allocation"
...
This reverts commit 1c51734642 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-09-04 05:48:55 +02:00
Mateusz Hoppe
1c51734642
refactor: debugbreak in simulation on memcopy to multi bank allocation
...
- if allocation has multiple banks, memcpy cannot write different data
for multiple banks
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-09-03 20:47:50 +02:00
Bartosz Dunajski
24cfd203ab
fix: dont download tbx allocations on heapless first device submission
...
Related-To: HSD-18039476929
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2024-08-06 14:03:42 +02:00
Dominik Dabek
e9e6cc05e3
fix: mem alloc size tracking safety
...
Make sure local mem alloc size atomic array is initialized with 0.
Add debug breaks to catch possible overflow on unregistering
allocations.
Related-To: NEO-11356
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2024-08-05 11:51:17 +02:00
Dominik Dabek
26428d5af3
feature: track used memory by allocations
...
Track memory used by memory allocations. System and local per device.
Will be used for heuristics in memory pooling.
Related-To: NEO-11356
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2024-08-02 17:54:34 +02:00
Dominik Dabek
a479afdbc8
performance: device usm sets localOnlyRequired
...
Device USM allocations should not be allowed to migrate to host memory
Related-To: NEO-11843
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2024-07-19 18:58:02 +02:00
Szymon Morek
b03ac6abd1
fix: disable usm compression on linux
...
Related-To: NEO-12047
Signed-off-by: Szymon Morek <szymon.morek@intel.com >
2024-07-16 14:59:33 +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
Mateusz Hoppe
b3d72ddd3d
fix: write memory for resident allocations in simulation mode
...
- refactor and call proceesFlushResdiency() on memoryOperationsHandler
- call free() to remove allocation from resident allocations when
graphics allocation is released
Related-To: NEO-11719
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-06-14 18:49:01 +02:00
Maciej Plewka
32cfa3d497
fix: stop using LocalOnly flag on Xe2+ platforms
...
Related-To: NEO-11391
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-06-10 11:26:20 +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
Maciej Plewka
18ea80865b
refactor: Use GPU VA as id for ResidencyDebug logs
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-05-23 09:55:03 +02:00
Compute-Runtime-Validation
0cd45fcb2e
Revert "refactor: Use GPU VA as id for ResidencyDebug logs"
...
This reverts commit 3a0b8825d6 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-05-22 17:28:57 +02:00
Maciej Plewka
3a0b8825d6
refactor: Use GPU VA as id for ResidencyDebug logs
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-05-22 15:01:36 +02:00
Mateusz Hoppe
bfc3e8fcf0
fix: assign unique ContextId for secondary engines
...
- add secondary engines to allRegisteredEngines
Related-To: NEO-11219
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-05-20 13:19:20 +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
Mateusz Hoppe
76af952fcb
feature: Bindless sampled image support
...
Related-To: NEO-10352
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-05-08 17:50:37 +02:00
Mateusz Jablonski
b24ad6a1b0
fix: allocate in system memory when system memory bitfield is set in properties
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2024-04-11 13:47:57 +02:00
Mateusz Hoppe
d6675b14b3
fix: release secondaryContexts prior to primary context
...
Related-To: NEO-10920
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-04-05 16:34:39 +02:00
Plewka, Maciej
5c15aaf48a
feature: Bind command buffer allocations as read only
...
Related-To: NEO-10398
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-04-02 16:08:48 +02:00
Maciej Plewka
b722f3b579
feature: Add interface to bind resources as readonly
...
Related-To: NEO-10398
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-03-27 14:24:58 +01:00
Compute-Runtime-Validation
8e44a46983
Revert "feature: bind resources as read only"
...
This reverts commit f3d36d3350 .
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com >
2024-03-27 08:51:47 +01:00
Maciej Plewka
f3d36d3350
feature: bind resources as read only
...
Related-to: NEO-10398
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com >
2024-03-26 14:11:57 +01:00
Bartosz Dunajski
74dcb5a9e3
feature: initial support for sync dispatch token allocation
...
Related-To: NEO-8171
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com >
2024-03-26 12:07:58 +01:00
Mateusz Hoppe
0cec5ccc32
fix: check if any of devices has BindlessHeapHelper enabled
...
- report Bindless_images extension in driver only when at least one
device has global bindless heaps enabled
Related-To: NEO-10352
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-03-20 20:50:58 +01:00
Mateusz Hoppe
27b930cabc
refactor: allow default setting for UseExternalAllocatorForSshAndDsh
...
- value of -1 selects driver default setting for external allocator
Related-To: NEO-7063
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2024-03-20 12:29:56 +01:00
Dominik Dabek
5ba9308804
performance: debug flag for localPreferred
...
Add flag for setting localPreferred (implicit when gmm localOnly=0 and
NonLocalOnly=0) when allocating buffer, svmGpu and image.
Related-To: NEO-9695
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com >
2024-03-11 10:51:49 +01:00
Michal Mrozek
ef2d3b538b
performance: move timestampPacketTagBuffer to local memory
...
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com >
Resolves: NEO-7765
2024-02-23 09:55:48 +01:00
Mateusz Jablonski
7b40b01f54
feature: add debug key for toggling bit in 57bit GPU VA for specific allocations
...
Related-To: NEO-9419
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2024-01-15 19:37:00 +01:00