performance: write image through staging chunks

Related-To: NEO-12968

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
This commit is contained in:
Szymon Morek
2024-11-06 13:25:20 +00:00
committed by Compute-Runtime-Automation
parent 40c9c46db9
commit a25e973205
11 changed files with 429 additions and 142 deletions

View File

@@ -357,17 +357,20 @@ class MockCommandQueueHw : public CommandQueueHw<GfxFamily> {
const cl_event *eventWaitList,
cl_event *event) override {
enqueueWriteImageCounter++;
return BaseClass::enqueueWriteImage(dstImage,
blockingWrite,
origin,
region,
inputRowPitch,
inputSlicePitch,
ptr,
mapAllocation,
numEventsInWaitList,
eventWaitList,
event);
if (enqueueWriteImageCallBase) {
return BaseClass::enqueueWriteImage(dstImage,
blockingWrite,
origin,
region,
inputRowPitch,
inputSlicePitch,
ptr,
mapAllocation,
numEventsInWaitList,
eventWaitList,
event);
}
return CL_INVALID_OPERATION;
}
void *cpuDataTransferHandler(TransferProperties &transferProperties, EventsRequest &eventsRequest, cl_int &retVal) override {
cpuDataTransferHandlerCalled = true;
@@ -482,6 +485,7 @@ class MockCommandQueueHw : public CommandQueueHw<GfxFamily> {
std::vector<Kernel *> lastEnqueuedKernels;
MultiDispatchInfo storedMultiDispatchInfo;
size_t enqueueWriteImageCounter = 0;
bool enqueueWriteImageCallBase = true;
size_t enqueueWriteBufferCounter = 0;
size_t requestedCmdStreamSize = 0;
bool blockingWriteBuffer = false;