mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-11 16:45:25 +08:00
Move blit enqueue out of enqueueCommon [3/n]
Change-Id: Iaee5052d9b56efce6e4524dd0e0d0455de05c929 Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
4f5216fa1f
commit
c9a3edd539
@@ -54,13 +54,17 @@ cl_int CommandQueueHw<GfxFamily>::enqueueCopyBuffer(
|
||||
MemObjSurface s2(dstBuffer);
|
||||
Surface *surfaces[] = {&s1, &s2};
|
||||
|
||||
enqueueHandler<CL_COMMAND_COPY_BUFFER>(
|
||||
surfaces,
|
||||
false,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
if (blitEnqueueAllowed(CL_COMMAND_COPY_BUFFER)) {
|
||||
enqueueBlit<CL_COMMAND_COPY_BUFFER>(dispatchInfo, numEventsInWaitList, eventWaitList, event, false);
|
||||
} else {
|
||||
enqueueHandler<CL_COMMAND_COPY_BUFFER>(
|
||||
surfaces,
|
||||
false,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
}
|
||||
|
||||
return CL_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -60,13 +60,17 @@ cl_int CommandQueueHw<GfxFamily>::enqueueCopyBufferRect(
|
||||
MultiDispatchInfo dispatchInfo;
|
||||
builder.buildDispatchInfos(dispatchInfo, dc);
|
||||
|
||||
enqueueHandler<CL_COMMAND_COPY_BUFFER_RECT>(
|
||||
surfaces,
|
||||
false,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
if (blitEnqueueAllowed(CL_COMMAND_COPY_BUFFER_RECT)) {
|
||||
enqueueBlit<CL_COMMAND_COPY_BUFFER_RECT>(dispatchInfo, numEventsInWaitList, eventWaitList, event, false);
|
||||
} else {
|
||||
enqueueHandler<CL_COMMAND_COPY_BUFFER_RECT>(
|
||||
surfaces,
|
||||
false,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
}
|
||||
|
||||
return CL_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -116,13 +116,17 @@ cl_int CommandQueueHw<GfxFamily>::enqueueWriteBuffer(
|
||||
MultiDispatchInfo dispatchInfo;
|
||||
builder.buildDispatchInfos(dispatchInfo, dc);
|
||||
|
||||
enqueueHandler<CL_COMMAND_WRITE_BUFFER>(
|
||||
surfaces,
|
||||
blockingWrite == CL_TRUE,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
if (blitEnqueueAllowed(cmdType)) {
|
||||
enqueueBlit<CL_COMMAND_WRITE_BUFFER>(dispatchInfo, numEventsInWaitList, eventWaitList, event, blockingWrite);
|
||||
} else {
|
||||
enqueueHandler<CL_COMMAND_WRITE_BUFFER>(
|
||||
surfaces,
|
||||
blockingWrite == CL_TRUE,
|
||||
dispatchInfo,
|
||||
numEventsInWaitList,
|
||||
eventWaitList,
|
||||
event);
|
||||
}
|
||||
|
||||
if (context->isProvidingPerformanceHints()) {
|
||||
context->providePerformanceHint(CL_CONTEXT_DIAGNOSTICS_LEVEL_NEUTRAL_INTEL, CL_ENQUEUE_WRITE_BUFFER_REQUIRES_COPY_DATA, static_cast<cl_mem>(buffer));
|
||||
|
||||
Reference in New Issue
Block a user