Commit Graph

260 Commits

Author SHA1 Message Date
Jaroslaw Warchulski
195bf66a49 refactor: fix typos
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2025-09-22 12:46:41 +02:00
Mateusz Hoppe
0f657e8877 fix: allow creating hostptr allocations with GPU VA equal hostptr
- when host USM memory is allocated, gpu virtual address should be the
same as cpu address when chunking due to huge size is used

Related-To: GSD-11423

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-09-16 17:13:17 +02:00
Neil R. Spruit
43ebc17e17 feature: Support for opaque IPC handles on Windows and Linux
- Added support for creating and managing opaque IPC NT handles in the
WDDM layer.
- Introduced a new flag `shareableWithoutNTHandle` to indicate if memory
can be shared without an NT handle.
- Updated the `isShareableMemory` method to accommodate this new flag.
- Added debug variable EnableShareableWithoutNTHandle to control the
behavior of sharing memory without NT handles until requested.
- Updated Linux path to enable sharing DMA Buf FDs between processes
for use in pidfd_getfd
- Updated getfd and get IPC Handle helper functions to support opaque or
previous versions

Related-To: NEO-15345 , NEO-15346 , NEO-15347, NEO-10380

Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
2025-08-18 16:23:44 +02:00
Compute-Runtime-Validation
0855219087 Revert "feature: Support for opaque IPC handles on Windows and Linux"
This reverts commit 46b1b2783b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-08-15 02:22:02 +02:00
Neil R. Spruit
46b1b2783b feature: Support for opaque IPC handles on Windows and Linux
- Added support for creating and managing opaque IPC NT handles in the
WDDM layer.
- Introduced a new flag `shareableWithoutNTHandle` to indicate if memory
can be shared without an NT handle.
- Updated the `isShareableMemory` method to accommodate this new flag.
- Added debug variable EnableShareableWithoutNTHandle to control the
behavior of sharing memory without NT handles until requested.
- Updated Linux path to enable sharing DMA Buf FDs between processes
for use in pidfd_getfd

Related-To: NEO-15345 , NEO-15346 , NEO-15347, NEO-10380

Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
2025-08-14 08:33:56 +02:00
Chandio, Bibrak Qamar
6acfcb83b9 Revert "Two commits related to pStart feature"
Related-To: NEO-15156, GSD-9939

Revert "test: fix minor errors"

This reverts commit 712dc8221e.

Revert "feature: Support for pStart"

This reverts commit 47caeda487.

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-08-13 07:10:40 +02:00
Chandio, Bibrak Qamar
47caeda487 feature: Support for pStart
Related-To: NEO-15156, GSD-9939

Support for start address hint in zeVirtualMemReserve.

If it fails to find pStart then it defaults to the base line
allocateWithCustomAlignment(...)

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-08-06 12:40:29 +02:00
Compute-Runtime-Validation
c9456cda14 Revert "feature: Support for pStart"
This reverts commit a50c0dbecf.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-08-06 02:26:13 +02:00
Chandio, Bibrak Qamar
a50c0dbecf feature: Support for pStart
Related-To: NEO-15156, GSD-9939

Support for start address hint in zeVirtualMemReserve.

If it fails to find pStart then it defaults to the base line
allocateWithCustomAlignment(...)

Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-08-05 10:14:01 +02:00
Lukasz Jobczyk
3e2acefac1 fix: Do not align svm gpu greater than its svm cpu
Resolves: HSD-18042781233

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-08-05 07:52:18 +02:00
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