mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-21 01:04:57 +08:00
feature: disable flat ring buffer for command list append operation
Related-To: NEO-10356 Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
5c70904109
commit
ddc0b0d03b
@@ -275,7 +275,7 @@ CompletionStamp CommandStreamReceiverHw<GfxFamily>::flushBcsTask(LinearStream &c
|
||||
false, getThrottleFromPowerSavingUint(this->getUmdPowerHintValue()), NEO::QueueSliceCount::defaultSliceCount,
|
||||
streamToSubmit.getUsed(), &streamToSubmit, bbEndLocation, this->getNumClients(), (submitCSR || dispatchBcsFlags.hasStallingCmds || dispatchBcsFlags.flushTaskCount),
|
||||
dispatchBcsFlags.hasRelaxedOrderingDependencies, dispatchBcsFlags.flushTaskCount, false};
|
||||
|
||||
batchBuffer.disableFlatRingBuffer = dispatchBcsFlags.dispatchOperation == AppendOperations::cmdList;
|
||||
updateStreamTaskCount(streamToSubmit, taskCount + 1);
|
||||
this->latestSentTaskCount = taskCount + 1;
|
||||
|
||||
@@ -2247,6 +2247,8 @@ CompletionStamp CommandStreamReceiverHw<GfxFamily>::handleImmediateFlushSendBatc
|
||||
immediateLowPriority, immediateThrottle, immediateSliceCount,
|
||||
streamToSubmit.getUsed(), &streamToSubmit, flushData.endPtr, this->getNumClients(), hasStallingCmds,
|
||||
dispatchFlags.hasRelaxedOrderingDependencies, dispatchMonitorFence, false};
|
||||
batchBuffer.disableFlatRingBuffer = dispatchFlags.dispatchOperation == AppendOperations::cmdList;
|
||||
|
||||
updateStreamTaskCount(streamToSubmit, taskCount + 1);
|
||||
|
||||
auto submissionStatus = flushHandler(batchBuffer, this->getResidencyAllocations());
|
||||
|
||||
@@ -6398,10 +6398,26 @@ HWTEST_F(CommandStreamReceiverHwTest, givenFlushBcsTaskCmdListDispatchWhenCalled
|
||||
|
||||
size_t usedSize = commandStreamReceiver.commandStream.getUsed();
|
||||
|
||||
commandStreamReceiver.recordFlushedBatchBuffer = true;
|
||||
commandStreamReceiver.flushBcsTask(commandStream,
|
||||
commandStream.getUsed(),
|
||||
dispatchBcsFlags,
|
||||
pDevice->getHardwareInfo());
|
||||
|
||||
EXPECT_EQ(usedSize, commandStreamReceiver.commandStream.getUsed());
|
||||
EXPECT_TRUE(commandStreamReceiver.latestFlushedBatchBuffer.disableFlatRingBuffer);
|
||||
}
|
||||
|
||||
HWTEST_F(CommandStreamReceiverHwTest, givenImmediateFlushTaskCmdListDispatchWhenFlushingBufferThenDisableFlatRingBuffer) {
|
||||
auto &commandStreamReceiver = pDevice->getUltCommandStreamReceiver<FamilyType>();
|
||||
|
||||
commandStreamReceiver.recordFlushedBatchBuffer = true;
|
||||
|
||||
immediateFlushTaskFlags.dispatchOperation = NEO::AppendOperations::cmdList;
|
||||
commandStreamReceiver.flushImmediateTask(commandStream,
|
||||
commandStream.getUsed(),
|
||||
immediateFlushTaskFlags,
|
||||
*pDevice);
|
||||
|
||||
EXPECT_TRUE(commandStreamReceiver.latestFlushedBatchBuffer.disableFlatRingBuffer);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user