restored the possibility of different writing modes in the FileLogger
mocked writeToFile in TestFileLogger
Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
Track amount of created buffer pools per device. Do not allocate extra
pools if limit is reached. New contexts will have pooling disabled if
limit is reached on device.
Related-To: NEO-13461
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
reducing the number of tests that have interactions with filesystem.
writeDataToFile() saves filename and content in std::map.
fileExistsHasSize() checks if file was previously written to virtualFileSystem
loadDataFromVirtualFile() fetches data from std::map based on filename
Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
getBaseAddress was incorrectly returning pLeftBound which changes after
memory allocation.
Added baseAddress field to store and return initial address value.
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
getBaseAddress was incorrectly returning pLeftBound which changes after
memory allocation.
Added baseAddress field to store and return initial address value.
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
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>
- freed pointer cannot overlap with freed chunks, therefore there is no way
to merge it with freed chunks if they overlap
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
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>
Additionally explicitly remove unused functions of Directory and
StagingBuffer classes to comply with rule of five.
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
Add explicit pointer checks to CommandQueue::blitEnqueueAllowed.
Explicitly check result of getDeviceArgValueIdx during ocloc compile.
Explicitly remove unused StagingBufferManager functions.
Move chunkCopyFunc by reference.
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
Related-To: NEO-11501
Currently whole staging buffer is consumed even if
size of the transfer is smaller than that buffer.
This commit changes that, so single staging buffer
might be utilized by several smaller transfers
as long as they don't exceed total size
Signed-off-by: Morek, Szymon <szymon.morek@intel.com>
Related-To: NEO-11928
Don't copy through staging buffer if dst usm allocation
was not used before and transfer would be splitted.
Also, don't use staging buffers for mapped ocl buffers.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
Related-To: NEO-10258
Currently each module has it's own GA
for kernel ISA's. This change allows new modules to
reuse existing allocation.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>