Move builtin kernel logic out of blit enqueue path

Change-Id: I857ac7d1304f8b228bf558904ee929aa114ab003
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
Bartosz Dunajski
2020-09-01 11:39:32 +02:00
parent 1afc985577
commit e079d94869
32 changed files with 243 additions and 224 deletions

View File

@ -38,10 +38,6 @@ cl_int CommandQueueHw<GfxFamily>::enqueueCopyBufferRect(
eBuiltInOps = EBuiltInOps::CopyBufferRectStateless;
}
auto &builder = BuiltInDispatchBuilderOp::getBuiltinDispatchInfoBuilder(eBuiltInOps,
this->getDevice());
BuiltInOwnershipWrapper builtInLock(builder, this->context);
MemObjSurface srcBufferSurf(srcBuffer);
MemObjSurface dstBufferSurf(dstBuffer);
Surface *surfaces[] = {&srcBufferSurf, &dstBufferSurf};
@ -57,10 +53,9 @@ cl_int CommandQueueHw<GfxFamily>::enqueueCopyBufferRect(
dc.dstRowPitch = dstRowPitch;
dc.dstSlicePitch = dstSlicePitch;
MultiDispatchInfo dispatchInfo;
builder.buildDispatchInfos(dispatchInfo, dc);
MultiDispatchInfo dispatchInfo(dc);
dispatchBcsOrGpgpuEnqueue<CL_COMMAND_COPY_BUFFER_RECT>(dispatchInfo, surfaces, numEventsInWaitList, eventWaitList, event, false);
dispatchBcsOrGpgpuEnqueue<CL_COMMAND_COPY_BUFFER_RECT>(dispatchInfo, surfaces, eBuiltInOps, numEventsInWaitList, eventWaitList, event, false);
return CL_SUCCESS;
}