Commit Graph

250 Commits

Author SHA1 Message Date
Maciej Plewka
ced6c55caf fix: use alignment when allocate by win kmd
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-07-29 12:42:03 +02:00
Maciej Plewka
88fb60a515 fix: do not align to 64kb when requested alignment is bigger
Related-To: NEO-14082
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-07-22 19:32:29 +02:00
Eric Mortensen
69f2cda2fa fix: add error checks & return to unMapVirtualMem
Related-To: NEO-8566

Signed-off-by: Eric Mortensen <eric.mortensen@intel.com>
2025-07-17 23:53:19 +02:00
Compute-Runtime-Validation
a585cb45b7 Revert "fix: use alignment when allocate by kmd"
This reverts commit 72492a9a18.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-07-12 07:48:44 +02:00
Maciej Plewka
72492a9a18 fix: use alignment when allocate by kmd
Related-To: NEO-14082
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-07-09 15:16:12 +02:00
Lukasz Jobczyk
0b6789187a fix: Apply alignment when allocate by kmd
Resolves: HSD-18042740668

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-07-02 12:31:48 +02:00
Lukasz Jobczyk
6efabacbfc fix: Align GPU shared allocation once with same alignment as CPU
Resolves: HSD-18042651670

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-06-25 15:52:05 +02:00
Maciej Bielski
d667614a4f fix: set gmm LocalOnly flag regardless of extraMemoryFlags
Related-To: NEO-13428
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-06-03 14:00:34 +02:00
Lukasz Jobczyk
a0f683e42b fix: Move evict after unlock to wddm layer
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-27 10:52:23 +02:00
Maciej Bielski
0f8ee57f98 feature: add NEO_LOCAL_MEMORY_ALLOCATION_MODE
Allow the application to force storageInfo.localOnly and get the
out-of-memory returned if not possible.

This is a windows-only feature supported on discrete platforms.

Related-To: NEO-13428
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2025-05-20 14:15:17 +02:00
Lukasz Jobczyk
1d1414febc refactor: remove unused dc flush mitigation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-05-09 08:26:26 +02:00
Szymon Morek
6ae43123f6 fix: correct usages of ULLS-related resources
Related-To: NEO-14360

Current gmm usage type of these resources is causing
them to be cached, which is incorrect.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-05-08 12:12:45 +02:00
Lukasz Jobczyk
c1df81c9be refactor: Simplify handles destroy
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-24 11:13:18 +02:00
Compute-Runtime-Validation
d28fcdb55b Revert "refactor: Simplify handles destroy"
This reverts commit 8776bdba2f.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-04-24 05:51:18 +02:00
Lukasz Jobczyk
8776bdba2f refactor: Simplify handles destroy
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-23 14:30:37 +02:00
Lukasz Jobczyk
53f0832614 fix: Register shared handle size on windows
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-23 13:00:27 +02:00
Tomasz Biernacik
194c3058b8 performance: change usage for ringBuffer on integrated devices
Related-To: NEO-9421

Signed-off-by: Tomasz Biernacik <tomasz.biernacik@intel.com>
2025-04-14 12:25:38 +02:00
Szymon Morek
3fff3dd77b fix: set misaligned source memory 1-way coherent
Related-To: NEO-14443

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-28 14:16:45 +01:00
Szymon Morek
bb10290828 fix: make misaligned user memory 2-Way coherent
Related-To: NEO-9004

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-21 17:56:37 +01:00
Maciej Plewka
36fa6d66ae fix: lock csr in stopDirectSubmission if needed
Related-To: NEO-13875, NEO-14143, HSD-16026538384, HSD-16026780358
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-03-18 09:30:38 +01:00
Compute-Runtime-Validation
0d5baa2c30 Revert "performance: Cache timestamps on CPU"
This reverts commit 83637404bf.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-03-12 04:41:46 +01:00
Lukasz Jobczyk
83637404bf performance: Cache timestamps on CPU
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-03-11 13:40:18 +01:00
Mateusz Jablonski
d25237c104 fix: pass ReadOnly flag only for page-misaligned input ptr
Related-To: NEO-12986
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2025-02-11 10:42:42 +01:00
Filip Hazubski
a0cc124b2e performance: Pass RootDeviceIndicesContainer by reference
Additionally pass std::map by reference in UsmMemAllocPoolsManager c-tor.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-12-17 14:18:30 +01:00
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
Lukasz Jobczyk
d40a804bca performance: Allocate by KMD on BMG
Related-To: NEO-10526

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-12-04 14:41:25 +01:00
Mateusz Jablonski
db6fe7892c fix: remove destroyed allocations from eviction lists
mark explicitly made resident allocations

Related-To: NEO-13246, GSD-10319
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-11-25 22:19:54 +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
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
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
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
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
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
Lukasz Jobczyk
64c935a594 fix: Do not defer external hostptr destroy
Resolves: NEO-12567

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-09-17 14:54:01 +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
Compute-Runtime-Validation
99f62ac866 Revert "feature: support SVM heap in reserveVirtualMem"
This reverts commit 93cde3ee12.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-09-03 20:20:25 +02:00
Wenbin Lu
93cde3ee12 feature: support SVM heap in reserveVirtualMem
Related-To: NEO-11981

Signed-off-by: Wenbin Lu <wenbin.lu@intel.com>
2024-09-03 11:38:51 +02:00
Szymon Morek
a0b789bf9c fix: make removal from container thread safe
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-30 09:24:20 +02:00
Compute-Runtime-Validation
78d9af04e7 Revert "fix: change mutex when destroying allocation"
This reverts commit 7628966f80.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-08-29 18:14:01 +02:00
Szymon Morek
7628966f80 fix: change mutex when destroying allocation
Current mutex is not preventing destroying resources
when trim callback is currently evicting same allocation.
New mutex does.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-28 15:31:45 +02:00
Szymon Morek
b8f181d50e performance: remove trim candidate list
Related-To: NEO-11755

Removing trim candidate list reduces overhead
caused by residency handling. Allocations required
for eviction are placed in eviction container managed
by CSR.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-23 12:21:50 +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