Dont program Media Sampler DOP Clock Gate Enable on Xe platforms

Related-To: NEO-6466

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2021-12-21 14:52:58 +00:00
committed by Compute-Runtime-Automation
parent 9a450d1b74
commit 6a39bcc395
2 changed files with 11 additions and 19 deletions

View File

@@ -42,11 +42,10 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueBlo
ASSERT_NE(cmdPipelineSelect, nullptr);
auto *pCmd = genCmdCast<PIPELINE_SELECT *>(cmdPipelineSelect);
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
EXPECT_FALSE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
pCmdQ->releaseVirtualEvent();
}
@@ -78,11 +77,10 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueBlo
ASSERT_NE(cmdPipelineSelect, nullptr);
auto *pCmd = genCmdCast<PIPELINE_SELECT *>(cmdPipelineSelect);
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
EXPECT_TRUE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
pCmdQ->releaseVirtualEvent();
}
@@ -103,11 +101,10 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueVme
EXPECT_EQ(1u, numCommands);
auto pCmd = getCommand<PIPELINE_SELECT>();
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
EXPECT_FALSE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
}
@@ -127,11 +124,10 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueNon
EXPECT_EQ(1u, numCommands);
auto pCmd = getCommand<PIPELINE_SELECT>();
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
EXPECT_TRUE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
}
@@ -194,9 +190,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueVme
auto pCmd = static_cast<PIPELINE_SELECT *>(commands.back());
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_FALSE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
}
@@ -227,9 +222,8 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterCsrWhenEnqueueNon
auto pCmd = static_cast<PIPELINE_SELECT *>(commands.back());
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_TRUE(pCmd->getMediaSamplerDopClockGateEnable());
EXPECT_FALSE(pCmd->getSystolicModeEnable());
}
@@ -292,7 +286,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterWhenEnqueueSystol
EXPECT_EQ(1u, numCommands);
auto pCmd = getCommand<PIPELINE_SELECT>();
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
@@ -316,7 +310,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterWhenEnqueueNonSys
EXPECT_EQ(1u, numCommands);
auto pCmd = getCommand<PIPELINE_SELECT>();
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
@@ -348,7 +342,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterWhenEnqueueTwoSys
EXPECT_EQ(1u, numCommands);
auto pCmd = getCommand<PIPELINE_SELECT>();
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
EXPECT_EQ(expectedMask, pCmd->getMaskBits());
EXPECT_EQ(expectedPipelineSelection, pCmd->getPipelineSelection());
@@ -379,7 +373,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, MediaKernelTest, givenXeHPAndLaterWhenEnqueueTwoKer
auto numCommands = getCommandCount<PIPELINE_SELECT>();
EXPECT_EQ(2u, numCommands);
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectMediaSamplerDopClockGateMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedMask = pipelineSelectEnablePipelineSelectMaskBits | pipelineSelectSystolicModeEnableMaskBits;
auto expectedPipelineSelection = PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU;
auto itorCmd = find<PIPELINE_SELECT *>(cmdList.begin(), cmdList.end());

View File

@@ -66,12 +66,10 @@ void PreambleHelper<Family>::programPipelineSelect(LinearStream *pCommandStream,
auto pCmd = pCommandStream->getSpaceForCmd<PIPELINE_SELECT>();
auto mask = pipelineSelectEnablePipelineSelectMaskBits |
pipelineSelectMediaSamplerDopClockGateMaskBits;
auto mask = pipelineSelectEnablePipelineSelectMaskBits;
cmd.setMaskBits(mask);
cmd.setPipelineSelection(PIPELINE_SELECT::PIPELINE_SELECTION_GPGPU);
cmd.setMediaSamplerDopClockGateEnable(!pipelineSelectArgs.mediaSamplerRequired);
appendProgramPipelineSelect(&cmd, pipelineSelectArgs.specialPipelineSelectMode, hwInfo);