mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-06 10:26:29 +08:00
[fix] do not set default state in context for one-time set properties.
- csr class one-time properties should be set only during dispatch time - by allowing one-time properties to be dirty at least once - this is algorithm correction ensuring trigger n-p state change in case - when multi-time properties are not supported on such platform Related-To: NEO-5055 Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
91ced4edcc
commit
76099c3aa7
@@ -155,7 +155,6 @@ CommandList *CommandList::createImmediate(uint32_t productFamily, Device *device
|
||||
commandList = nullptr;
|
||||
return commandList;
|
||||
}
|
||||
commandList->setStreamPropertiesDefaultSettings(csr->getStreamProperties());
|
||||
|
||||
auto commandQueue = CommandQueue::create(productFamily, device, csr, desc, commandList->isCopyOnly(), internalUsage, returnValue);
|
||||
if (!commandQueue) {
|
||||
|
||||
@@ -172,6 +172,26 @@ HWTEST2_F(CommandListExecuteImmediate, givenOutOfDeviceMemoryErrorOnFlushWhenExe
|
||||
EXPECT_EQ(ZE_RESULT_ERROR_OUT_OF_DEVICE_MEMORY, commandListImmediate.executeCommandListImmediateWithFlushTask(false, false, false));
|
||||
}
|
||||
|
||||
HWTEST2_F(CommandListExecuteImmediate, GivenImmediateCommandListWhenCommandListIsCreatedThenCsrStateIsNotSet, IsAtLeastSkl) {
|
||||
std::unique_ptr<L0::CommandList> commandList;
|
||||
const ze_command_queue_desc_t desc = {};
|
||||
ze_result_t returnValue;
|
||||
commandList.reset(CommandList::createImmediate(productFamily, device, &desc, false, NEO::EngineGroupType::RenderCompute, returnValue));
|
||||
auto &commandListImmediate = static_cast<MockCommandListImmediate<gfxCoreFamily> &>(*commandList);
|
||||
|
||||
auto ¤tCsrStreamProperties = commandListImmediate.csr->getStreamProperties();
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.stateComputeMode.isCoherencyRequired.value);
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.stateComputeMode.devicePreemptionMode.value);
|
||||
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.frontEndState.disableOverdispatch.value);
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.frontEndState.singleSliceDispatchCcsMode.value);
|
||||
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.pipelineSelect.modeSelected.value);
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.pipelineSelect.mediaSamplerDopClockGate.value);
|
||||
|
||||
EXPECT_EQ(-1, currentCsrStreamProperties.stateBaseAddress.globalAtomics.value);
|
||||
}
|
||||
|
||||
using CommandListTest = Test<DeviceFixture>;
|
||||
using IsDcFlushSupportedPlatform = IsWithinGfxCore<IGFX_GEN9_CORE, IGFX_XE_HP_CORE>;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user