- Updated `isAllocTbxFaultable` to exclude `gpuTimestampDeviceBuffer` from being
faultable.
- Replaced `SpinLock` with `RecursiveSpinLock` in `CpuPageFaultManager` and
`TbxPageFaultManager` to allow recursive locking.
- Added unit tests to verify the correct handling of `gpuTimestampDeviceBuffer`
in `TbxCommandStreamTests`.
Related-To: NEO-13748
Signed-off-by: Jack Myers <jack.myers@intel.com>
Cleaner thread will run every 15ms instead of 2s.
Allocations will be held for at least 10s.
If deferred deleter has elements to release, will skip cleaning cache.
Will clean only 1 allocation per cache, per cleaning run.
Related-To: NEO-6893
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
Refactor buffer pool allocator to support configurable
SmallBuffersParams based on product helper capabilities.
This patch enables setting custom pool
parameters instead of using fixed static values.
For devices with 2MB local memory alignment enabled
(is2MBLocalMemAlignmentEnabled),
use larger pool configuration:
- Pool size: 16MB (up from 2MB)
- Threshold: 2MB (up from 1MB)
- Alignment: 64KB (unchanged)
- Starting offset: 64KB (unchanged)
This improves memory utilization for devices supporting larger memory
alignments
while maintaining original parameters for other devices.
Key changes:
- Moved params from static template to instance member
- Added SmallBuffersParams struct with default/large configs
- Added constructor and setter methods for params configuration
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
Related-To: NEO-12134, NEO-13874, NEO-14002
Thanks to this change we avoid programming y1 offset for 2D surface
above the maximum allowable value, i.e. 16 kb for blitter for BMG
Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
This commit enabled the use of the array image type with array size 1
from Xe2.
Additinally, it removes two incorrect unit tests, as array size of 0 is not
correct with the OpenCL specification.
Related-To: NEO-13976
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-13529
Also, add size threshold on iGPU on Linux,
and disable staging if imported host ptr could
be reused
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
Related-To: NEO-12134, NEO-13874
Thanks to this change we avoid programming y1 offset for 2D surface
above the maximum allowable value, i.e. 16 kb for blitter for BMG
Signed-off-by: Andrzej Koska <andrzej.koska@intel.com>
on Windows setup ReadOnly flag, it makes there is no ProbeForWrite call within
CreateAllocation2 function call
it doesn't force read-only access from GPU perspective, that access it
defined in MapGpuVa function
Related-To: NEO-12986, HSD-15016952776
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
In this patch, we align up the allocation size to 2MB for all
image allocations >= 2MB located in local memory.
2MB alignment support is defined by function:
`is2MBLocalMemAlignmentEnabled`
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
In this patch, we align up the allocation size to 2MB for all
allocations >= 2MB located in local memory.
2MB alignment support is defined by function:
`is2MBLocalMemAlignmentEnabled`
Related-To: NEO-12287
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>