fix: dispatch monitor fence when stalling command dispatched
Resolves: NEO-9034 Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
parent
891cc2d09b
commit
d27d81f206
|
@ -938,7 +938,7 @@ bool DirectSubmissionHw<GfxFamily, Dispatcher>::dispatchCommandBuffer(BatchBuffe
|
|||
this->startRingBuffer();
|
||||
|
||||
bool relaxedOrderingSchedulerWillBeNeeded = (this->relaxedOrderingSchedulerRequired || batchBuffer.hasRelaxedOrderingDependencies);
|
||||
bool dispatchMonitorFence = this->dispatchMonitorFenceRequired(batchBuffer.dispatchMonitorFence);
|
||||
bool dispatchMonitorFence = this->dispatchMonitorFenceRequired(batchBuffer.hasStallingCmds);
|
||||
|
||||
size_t dispatchSize = getSizeDispatch(relaxedOrderingSchedulerWillBeNeeded, batchBuffer.hasRelaxedOrderingDependencies, dispatchMonitorFence);
|
||||
|
||||
|
@ -980,7 +980,7 @@ bool DirectSubmissionHw<GfxFamily, Dispatcher>::dispatchCommandBuffer(BatchBuffe
|
|||
currentQueueWorkCount++;
|
||||
DirectSubmissionDiagnostics::diagnosticModeOneSubmit(diagnostic.get());
|
||||
|
||||
uint64_t flushValue = updateTagValue(batchBuffer.dispatchMonitorFence);
|
||||
uint64_t flushValue = updateTagValue(batchBuffer.hasStallingCmds);
|
||||
flushStamp.setStamp(flushValue);
|
||||
|
||||
return ringStart;
|
||||
|
|
|
@ -629,7 +629,7 @@ HWTEST_F(WddmDirectSubmissionTest, givenMiMemFenceRequiredThenGpuVaForAdditional
|
|||
}
|
||||
|
||||
HWTEST_F(WddmDirectSubmissionTest,
|
||||
givenRenderDirectSubmissionWithDisabledMonitorFenceWhenMonitrFenceExplicitlyRequiredThenDispatchPostSyncOperation) {
|
||||
givenRenderDirectSubmissionWithDisabledMonitorFenceWhenHasStallingCommandDispatchedThenDispatchPostSyncOperation) {
|
||||
using PIPE_CONTROL = typename FamilyType::PIPE_CONTROL;
|
||||
using POST_SYNC_OPERATION = typename PIPE_CONTROL::POST_SYNC_OPERATION;
|
||||
using Dispatcher = RenderDispatcher<FamilyType>;
|
||||
|
@ -654,7 +654,7 @@ HWTEST_F(WddmDirectSubmissionTest,
|
|||
batchBuffer.usedSize = 0x40;
|
||||
batchBuffer.taskStartAddress = clientCommandBuffer->getGpuAddress();
|
||||
batchBuffer.stream = clientStream.get();
|
||||
batchBuffer.dispatchMonitorFence = true;
|
||||
batchBuffer.hasStallingCmds = true;
|
||||
|
||||
FlushStampTracker flushStamp(true);
|
||||
|
||||
|
|
Loading…
Reference in New Issue