Revert "feature: enable dummy blit WA for PVC"

This reverts commit fb9d225495.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
This commit is contained in:
Compute-Runtime-Validation 2024-02-08 03:39:40 +01:00 committed by Compute-Runtime-Automation
parent 486cc71b76
commit 0b64240deb
22 changed files with 84 additions and 148 deletions

View File

@ -10,7 +10,6 @@
#include "shared/source/command_container/command_encoder.h" #include "shared/source/command_container/command_encoder.h"
#include "shared/source/command_container/encode_surface_state.h" #include "shared/source/command_container/encode_surface_state.h"
#include "shared/source/gmm_helper/gmm_helper.h" #include "shared/source/gmm_helper/gmm_helper.h"
#include "shared/source/helpers/blit_commands_helper.h"
#include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/helpers/definitions/command_encoder_args.h"
#include "shared/source/helpers/gfx_core_helper.h" #include "shared/source/helpers/gfx_core_helper.h"
#include "shared/source/indirect_heap/indirect_heap.h" #include "shared/source/indirect_heap/indirect_heap.h"
@ -774,7 +773,7 @@ HWTEST2_F(CommandListCreate, givenImmediateCopyOnlyCmdListWhenAppendBarrierThenI
cmdList, ptrOffset(commandList->getCmdContainer().getCommandStream()->getCpuBase(), 0), commandList->getCmdContainer().getCommandStream()->getUsed())); cmdList, ptrOffset(commandList->getCmdContainer().getCommandStream()->getCpuBase(), 0), commandList->getCmdContainer().getCommandStream()->getUsed()));
auto itor = find<MI_FLUSH_DW *>(cmdList.begin(), cmdList.end()); auto itor = find<MI_FLUSH_DW *>(cmdList.begin(), cmdList.end());
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs)) {
itor++; itor++;
} }
EXPECT_NE(cmdList.end(), itor); EXPECT_NE(cmdList.end(), itor);
@ -816,7 +815,7 @@ HWTEST2_F(CommandListCreate, givenImmediateCopyOnlyCmdListWhenAppendWaitOnEvents
cmdList, ptrOffset(commandList->getCmdContainer().getCommandStream()->getCpuBase(), 0), commandList->getCmdContainer().getCommandStream()->getUsed())); cmdList, ptrOffset(commandList->getCmdContainer().getCommandStream()->getCpuBase(), 0), commandList->getCmdContainer().getCommandStream()->getUsed()));
auto itor = find<MI_FLUSH_DW *>(cmdList.begin(), cmdList.end()); auto itor = find<MI_FLUSH_DW *>(cmdList.begin(), cmdList.end());
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs)) {
itor++; itor++;
} }
EXPECT_NE(cmdList.end(), itor); EXPECT_NE(cmdList.end(), itor);

View File

@ -5,7 +5,6 @@
* *
*/ */
#include "shared/source/helpers/blit_commands_helper.h"
#include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/helpers/definitions/command_encoder_args.h"
#include "shared/source/helpers/gfx_core_helper.h" #include "shared/source/helpers/gfx_core_helper.h"
#include "shared/test/common/cmd_parse/gen_cmd_parse.h" #include "shared/test/common/cmd_parse/gen_cmd_parse.h"
@ -478,7 +477,7 @@ HWTEST2_F(CommandListAppendUsedPacketSignalEvent,
expectedSize)); expectedSize));
uint32_t miFlushCountFactor = 1; uint32_t miFlushCountFactor = 1;
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
miFlushCountFactor = 2; miFlushCountFactor = 2;
} }
auto expectedMiFlushCount = packets * miFlushCountFactor; auto expectedMiFlushCount = packets * miFlushCountFactor;

View File

@ -6,7 +6,6 @@
*/ */
#include "shared/source/command_container/implicit_scaling.h" #include "shared/source/command_container/implicit_scaling.h"
#include "shared/source/helpers/blit_commands_helper.h"
#include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/helpers/definitions/command_encoder_args.h"
#include "shared/source/helpers/gfx_core_helper.h" #include "shared/source/helpers/gfx_core_helper.h"
#include "shared/test/common/cmd_parse/gen_cmd_parse.h" #include "shared/test/common/cmd_parse/gen_cmd_parse.h"
@ -615,7 +614,7 @@ HWTEST2_F(CommandListAppendUsedPacketSignalEvent,
uint32_t expectedMiFlushCount = 1; uint32_t expectedMiFlushCount = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
expectedMiFlushCount = 2; expectedMiFlushCount = 2;
} }
@ -657,7 +656,7 @@ HWTEST2_F(CommandListAppendUsedPacketSignalEvent,
uint32_t expectedMiFlushCount = 1; uint32_t expectedMiFlushCount = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
expectedMiFlushCount = 2; expectedMiFlushCount = 2;
} }
@ -701,7 +700,7 @@ HWTEST2_F(CommandListAppendUsedPacketSignalEvent,
uint32_t expectedMiFlushCount = 1; uint32_t expectedMiFlushCount = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
expectedMiFlushCount = 2; expectedMiFlushCount = 2;
} }

View File

@ -10,7 +10,6 @@
#include "shared/source/gmm_helper/gmm_helper.h" #include "shared/source/gmm_helper/gmm_helper.h"
#include "shared/source/gmm_helper/gmm_lib.h" #include "shared/source/gmm_helper/gmm_lib.h"
#include "shared/source/helpers/api_specific_config.h" #include "shared/source/helpers/api_specific_config.h"
#include "shared/source/helpers/blit_commands_helper.h"
#include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/helpers/definitions/command_encoder_args.h"
#include "shared/source/helpers/preamble.h" #include "shared/source/helpers/preamble.h"
#include "shared/source/indirect_heap/indirect_heap.h" #include "shared/source/indirect_heap/indirect_heap.h"
@ -728,7 +727,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
if constexpr (copyOnly == 1) { if constexpr (copyOnly == 1) {
uint32_t flushCmdWaFactor = 1; uint32_t flushCmdWaFactor = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
flushCmdWaFactor++; flushCmdWaFactor++;
} }
@ -968,7 +967,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
uint32_t flushCmdWaFactor = 1; uint32_t flushCmdWaFactor = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
flushCmdWaFactor++; flushCmdWaFactor++;
} }
@ -1177,7 +1176,7 @@ struct CommandListSignalAllEventPacketFixture : public ModuleFixture {
if constexpr (copyOnly == 1) { if constexpr (copyOnly == 1) {
uint32_t flushCmdWaFactor = 1; uint32_t flushCmdWaFactor = 1;
NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())}; NEO::EncodeDummyBlitWaArgs waArgs{true, &(device->getNEODevice()->getRootDeviceEnvironmentRef())};
if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > NEO::BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs)) { if (MockEncodeMiFlushDW<FamilyType>::getWaSize(waArgs) > 0) {
flushCmdWaFactor++; flushCmdWaFactor++;
} }

View File

@ -1008,6 +1008,24 @@ HWTEST_F(BcsTests, givenImageAndBufferBlitDirectionsWhenIsImageOperationIsCalled
EXPECT_EQ(isImageDirection, blitProperties.isImageOperation()); EXPECT_EQ(isImageDirection, blitProperties.isImageOperation());
} }
} }
template <typename FamilyType>
void verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) {
const auto &productHelper = rootDeviceEnvironment->getProductHelper();
if (productHelper.isDummyBlitWaRequired()) {
auto dummyBltCmd = genCmdCast<typename FamilyType::XY_COLOR_BLT *>(*(cmdIterator++));
EXPECT_NE(nullptr, dummyBltCmd);
auto expectedX2 = 1u;
auto expectedY2 = 4u;
uint32_t expectedPitch = 4096u;
auto expectedDestinationBaseAddress = rootDeviceEnvironment->getDummyAllocation()->getGpuAddress();
EXPECT_EQ(expectedDestinationBaseAddress, dummyBltCmd->getDestinationBaseAddress());
EXPECT_EQ(expectedX2, dummyBltCmd->getDestinationX2CoordinateRight());
EXPECT_EQ(expectedY2, dummyBltCmd->getDestinationY2CoordinateBottom());
EXPECT_EQ(expectedPitch, dummyBltCmd->getDestinationPitch());
}
}
struct RelaxedOrderingBcsTests : public BcsTests { struct RelaxedOrderingBcsTests : public BcsTests {
void SetUp() override { void SetUp() override {
@ -1227,7 +1245,7 @@ HWTEST_F(BcsTests, givenBltSizeWithLeftoverWhenDispatchedThenProgramAllRequiredC
EXPECT_EQ(expectedWidth, bltCmd->getSourcePitch()); EXPECT_EQ(expectedWidth, bltCmd->getSourcePitch());
if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) { if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++)); auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++));
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())}; EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())};
@ -1236,7 +1254,7 @@ HWTEST_F(BcsTests, givenBltSizeWithLeftoverWhenDispatchedThenProgramAllRequiredC
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
} }
} else { } else {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
} }
auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++)); auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++));
EXPECT_NE(nullptr, miArbCheckCmd); EXPECT_NE(nullptr, miArbCheckCmd);
@ -1464,7 +1482,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
offset += (expectedWidth * expectedHeight); offset += (expectedWidth * expectedHeight);
if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) { if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++)); auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++));
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())}; EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())};
@ -1473,7 +1491,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
} }
} else { } else {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
} }
auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++)); auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++));
@ -1568,7 +1586,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
offset += (expectedWidth * expectedHeight); offset += (expectedWidth * expectedHeight);
if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) { if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++)); auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++));
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())}; EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())};
@ -1577,7 +1595,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
} }
} else { } else {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
} }
auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++)); auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++));
EXPECT_NE(nullptr, miArbCheckCmd); EXPECT_NE(nullptr, miArbCheckCmd);
@ -1662,7 +1680,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
offset += (expectedWidth * expectedHeight); offset += (expectedWidth * expectedHeight);
if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) { if (BlitCommandsHelper<FamilyType>::miArbCheckWaRequired()) {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++)); auto miFlush = genCmdCast<typename FamilyType::MI_FLUSH_DW *>(*(cmdIterator++));
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())}; EncodeDummyBlitWaArgs waArgs{true, &(pDevice->getRootDeviceEnvironmentRef())};
@ -1671,7 +1689,7 @@ HWTEST_P(BcsDetaliedTestsWithParams, givenBltSizeWithLeftoverWhenDispatchedThenP
EXPECT_NE(nullptr, miFlush); EXPECT_NE(nullptr, miFlush);
} }
} else { } else {
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); verifyDummyBlitWa<FamilyType>(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator);
} }
auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++)); auto miArbCheckCmd = genCmdCast<typename FamilyType::MI_ARB_CHECK *>(*(cmdIterator++));
EXPECT_NE(nullptr, miArbCheckCmd); EXPECT_NE(nullptr, miArbCheckCmd);

View File

@ -276,36 +276,6 @@ uint64_t BlitCommandsHelper<Family>::getMaxBlitHeightOverride(const RootDeviceEn
return 0; return 0;
} }
template <>
void BlitCommandsHelper<Family>::dispatchDummyBlit(LinearStream &linearStream, EncodeDummyBlitWaArgs &waArgs) {
using MEM_SET = typename Family::MEM_SET;
if (BlitCommandsHelper<Family>::isDummyBlitWaNeeded(waArgs)) {
auto blitCmd = Family::cmdInitMemSet;
auto &rootDeviceEnvironment = waArgs.rootDeviceEnvironment;
rootDeviceEnvironment->initDummyAllocation();
auto dummyAllocation = rootDeviceEnvironment->getDummyAllocation();
blitCmd.setDestinationStartAddress(dummyAllocation->getGpuAddress());
constexpr uint32_t memSetSize = 32 * MemoryConstants::kiloByte;
blitCmd.setFillWidth(memSetSize);
blitCmd.setDestinationPitch(memSetSize);
auto cmd = linearStream.getSpaceForCmd<MEM_SET>();
*cmd = blitCmd;
waArgs.isWaRequired = false;
}
}
template <>
size_t BlitCommandsHelper<Family>::getDummyBlitSize(const EncodeDummyBlitWaArgs &waArgs) {
if (BlitCommandsHelper<Family>::isDummyBlitWaNeeded(waArgs)) {
return sizeof(typename Family::MEM_SET);
}
return 0u;
}
template class CommandStreamReceiverHw<Family>; template class CommandStreamReceiverHw<Family>;
template struct BlitCommandsHelper<Family>; template struct BlitCommandsHelper<Family>;
template void BlitCommandsHelper<Family>::appendBlitCommandsForBuffer<typename Family::XY_COPY_BLT>(const BlitProperties &blitProperties, typename Family::XY_COPY_BLT &blitCmd, const RootDeviceEnvironment &rootDeviceEnvironment); template void BlitCommandsHelper<Family>::appendBlitCommandsForBuffer<typename Family::XY_COPY_BLT>(const BlitProperties &blitProperties, typename Family::XY_COPY_BLT &blitCmd, const RootDeviceEnvironment &rootDeviceEnvironment);

View File

@ -73,11 +73,6 @@ bool ProductHelperHw<gfxProduct>::isDisableOverdispatchAvailable(const HardwareI
return getSteppingFromHwRevId(hwInfo) >= REVISION_B; return getSteppingFromHwRevId(hwInfo) >= REVISION_B;
} }
template <>
bool ProductHelperHw<gfxProduct>::isDummyBlitWaRequired() const {
return true;
}
template <> template <>
bool ProductHelperHw<gfxProduct>::isSystolicModeConfigurable(const HardwareInfo &hwInfo) const { bool ProductHelperHw<gfxProduct>::isSystolicModeConfigurable(const HardwareInfo &hwInfo) const {
return PVC::isAtMostXtA0(hwInfo); return PVC::isAtMostXtA0(hwInfo);

View File

@ -244,6 +244,10 @@ template <>
bool ProductHelperHw<gfxProduct>::isCalculationForDisablingEuFusionWithDpasNeeded(const HardwareInfo &hwInfo) const { bool ProductHelperHw<gfxProduct>::isCalculationForDisablingEuFusionWithDpasNeeded(const HardwareInfo &hwInfo) const {
return DG2::isG10(hwInfo) || DG2::isG11(hwInfo) || DG2::isG12(hwInfo); return DG2::isG10(hwInfo) || DG2::isG11(hwInfo) || DG2::isG12(hwInfo);
} }
template <>
bool ProductHelperHw<gfxProduct>::isDummyBlitWaRequired() const {
return false;
}
template <> template <>
bool ProductHelperHw<gfxProduct>::disableL3CacheForDebug(const HardwareInfo &hwInfo) const { bool ProductHelperHw<gfxProduct>::disableL3CacheForDebug(const HardwareInfo &hwInfo) const {

View File

@ -99,7 +99,6 @@ struct UnitTestHelper {
static bool expectNullDsh(const DeviceInfo &deviceInfo); static bool expectNullDsh(const DeviceInfo &deviceInfo);
static bool findStateCacheFlushPipeControl(LinearStream &csrStream); static bool findStateCacheFlushPipeControl(LinearStream &csrStream);
static void verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator);
}; };
} // namespace NEO } // namespace NEO

View File

@ -150,8 +150,4 @@ size_t UnitTestHelper<GfxFamily>::getAdditionalDshSize(uint32_t iddCount) {
return iddCount * sizeof(typename GfxFamily::INTERFACE_DESCRIPTOR_DATA); return iddCount * sizeof(typename GfxFamily::INTERFACE_DESCRIPTOR_DATA);
} }
template <typename GfxFamily>
void UnitTestHelper<GfxFamily>::verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) {
}
} // namespace NEO } // namespace NEO

View File

@ -119,23 +119,4 @@ size_t UnitTestHelper<GfxFamily>::getAdditionalDshSize(uint32_t iddCount) {
return 0; return 0;
} }
template <typename GfxFamily>
void UnitTestHelper<GfxFamily>::verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) {
const auto &productHelper = rootDeviceEnvironment->getProductHelper();
if (productHelper.isDummyBlitWaRequired()) {
using XY_COLOR_BLT = typename GfxFamily::XY_COLOR_BLT;
auto dummyBltCmd = genCmdCast<XY_COLOR_BLT *>(*(cmdIterator++));
EXPECT_NE(nullptr, dummyBltCmd);
auto expectedDestinationBaseAddress = rootDeviceEnvironment->getDummyAllocation()->getGpuAddress();
EXPECT_EQ(expectedDestinationBaseAddress, dummyBltCmd->getDestinationBaseAddress());
EXPECT_EQ(XY_COLOR_BLT::COLOR_DEPTH::COLOR_DEPTH_64_BIT_COLOR, dummyBltCmd->getColorDepth());
EXPECT_EQ(1u, dummyBltCmd->getDestinationX2CoordinateRight());
EXPECT_EQ(4u, dummyBltCmd->getDestinationY2CoordinateBottom());
EXPECT_EQ(static_cast<uint32_t>(MemoryConstants::pageSize), dummyBltCmd->getDestinationPitch());
EXPECT_EQ(XY_COLOR_BLT::DESTINATION_SURFACE_TYPE::DESTINATION_SURFACE_TYPE_2D, dummyBltCmd->getDestinationSurfaceType());
}
}
} // namespace NEO } // namespace NEO

View File

@ -42,21 +42,6 @@ bool UnitTestHelper<Family>::getComputeDispatchAllWalkerFromFrontEndCommand(cons
return feCmd.getComputeDispatchAllWalkerEnable(); return feCmd.getComputeDispatchAllWalkerEnable();
} }
template <>
void UnitTestHelper<Family>::verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) {
const auto &productHelper = rootDeviceEnvironment->getProductHelper();
if (productHelper.isDummyBlitWaRequired()) {
auto dummyBltCmd = genCmdCast<typename Family::MEM_SET *>(*(cmdIterator++));
EXPECT_NE(nullptr, dummyBltCmd);
uint32_t expectedSize = 32 * MemoryConstants::kiloByte;
auto expectedGpuBaseAddress = rootDeviceEnvironment->getDummyAllocation()->getGpuAddress();
EXPECT_EQ(expectedGpuBaseAddress, dummyBltCmd->getDestinationStartAddress());
EXPECT_EQ(expectedSize, dummyBltCmd->getDestinationPitch());
EXPECT_EQ(expectedSize, dummyBltCmd->getFillWidth());
}
}
template struct UnitTestHelper<Family>; template struct UnitTestHelper<Family>;
} // namespace NEO } // namespace NEO

View File

@ -696,7 +696,6 @@ HWTEST_F(BlitTests, givenPlatformWhenCallingDispatchPreBlitCommandThenNoneMiFlus
blitPropertiesContainer1.push_back(blitProperties); blitPropertiesContainer1.push_back(blitProperties);
blitPropertiesContainer1.push_back(blitProperties); blitPropertiesContainer1.push_back(blitProperties);
blitPropertiesContainer1.push_back(blitProperties); blitPropertiesContainer1.push_back(blitProperties);
blitPropertiesContainer1.push_back(blitProperties);
auto estimatedSizeWithoutNode = BlitCommandsHelper<FamilyType>::estimateBlitCommandsSize( auto estimatedSizeWithoutNode = BlitCommandsHelper<FamilyType>::estimateBlitCommandsSize(
blitPropertiesContainer1, false, true, false, false, pDevice->getRootDeviceEnvironment()); blitPropertiesContainer1, false, true, false, false, pDevice->getRootDeviceEnvironment());
@ -705,7 +704,6 @@ HWTEST_F(BlitTests, givenPlatformWhenCallingDispatchPreBlitCommandThenNoneMiFlus
blitPropertiesContainer2.push_back(blitProperties); blitPropertiesContainer2.push_back(blitProperties);
blitPropertiesContainer2.push_back(blitProperties); blitPropertiesContainer2.push_back(blitProperties);
blitPropertiesContainer2.push_back(blitProperties); blitPropertiesContainer2.push_back(blitProperties);
blitPropertiesContainer2.push_back(blitProperties);
auto estimatedSizeWithNode = BlitCommandsHelper<FamilyType>::estimateBlitCommandsSize( auto estimatedSizeWithNode = BlitCommandsHelper<FamilyType>::estimateBlitCommandsSize(
blitPropertiesContainer2, false, true, false, false, pDevice->getRootDeviceEnvironment()); blitPropertiesContainer2, false, true, false, false, pDevice->getRootDeviceEnvironment());
EXPECT_NE(estimatedSizeWithoutNode, estimatedSizeWithNode); EXPECT_NE(estimatedSizeWithoutNode, estimatedSizeWithNode);

View File

@ -15,10 +15,8 @@
#include "shared/source/helpers/local_memory_access_modes.h" #include "shared/source/helpers/local_memory_access_modes.h"
#include "shared/source/os_interface/product_helper.h" #include "shared/source/os_interface/product_helper.h"
#include "shared/source/os_interface/product_helper_hw.h" #include "shared/source/os_interface/product_helper_hw.h"
#include "shared/test/common/cmd_parse/hw_parse.h"
#include "shared/test/common/helpers/debug_manager_state_restore.h" #include "shared/test/common/helpers/debug_manager_state_restore.h"
#include "shared/test/common/helpers/raii_product_helper.h" #include "shared/test/common/helpers/raii_product_helper.h"
#include "shared/test/common/helpers/unit_test_helper.h"
#include "shared/test/common/mocks/mock_execution_environment.h" #include "shared/test/common/mocks/mock_execution_environment.h"
#include "shared/test/common/mocks/mock_gmm.h" #include "shared/test/common/mocks/mock_gmm.h"
#include "shared/test/common/mocks/mock_gmm_client_context.h" #include "shared/test/common/mocks/mock_gmm_client_context.h"
@ -513,7 +511,8 @@ class TestDummyBlitMockProductHelper : public ProductHelperHw<gfxProduct> {
uint32_t dummyBlitRequired = true; uint32_t dummyBlitRequired = true;
}; };
HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaRequiredThenDummyBlitIsProgrammedCorrectly, IsXeHPOrAbove) { HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaRequiredThenColorBltProgrammedCorrectly, IsXeHPOrAbove) {
using XY_COLOR_BLT = typename FamilyType::XY_COLOR_BLT;
DebugManagerStateRestore dbgRestore; DebugManagerStateRestore dbgRestore;
debugManager.flags.ForceDummyBlitWa.set(-1); debugManager.flags.ForceDummyBlitWa.set(-1);
@ -545,19 +544,30 @@ HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaRequiredThenDummyBlitI
EXPECT_EQ(0u, stream.getUsed()); EXPECT_EQ(0u, stream.getUsed());
EncodeDummyBlitWaArgs waArgsWhenBcs{true, &rootDeviceEnvironment}; EncodeDummyBlitWaArgs waArgsWhenBcs{true, &rootDeviceEnvironment};
expectedSize = sizeof(XY_COLOR_BLT);
val = BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgsWhenBcs); val = BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgsWhenBcs);
EXPECT_NE(0u, val); EXPECT_EQ(expectedSize, val);
BlitCommandsHelper<FamilyType>::dispatchDummyBlit(stream, waArgsWhenBcs); BlitCommandsHelper<FamilyType>::dispatchDummyBlit(stream, waArgsWhenBcs);
EXPECT_NE(nullptr, rootDeviceEnvironment.getDummyAllocation()); EXPECT_NE(nullptr, rootDeviceEnvironment.getDummyAllocation());
HardwareParse hwParser; EXPECT_EQ(expectedSize, stream.getUsed());
hwParser.parseCommands<FamilyType>(stream); GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(
cmdList, ptrOffset(stream.getCpuBase(), 0), stream.getUsed()));
auto itor = find<XY_COLOR_BLT *>(cmdList.begin(), cmdList.end());
EXPECT_NE(cmdList.end(), itor);
auto cmd = genCmdCast<XY_COLOR_BLT *>(*itor);
auto cmdIterator = hwParser.cmdList.begin(); EXPECT_EQ(rootDeviceEnvironment.getDummyAllocation()->getGpuAddress(), cmd->getDestinationBaseAddress());
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&rootDeviceEnvironment, cmdIterator); EXPECT_EQ(XY_COLOR_BLT::COLOR_DEPTH::COLOR_DEPTH_64_BIT_COLOR, cmd->getColorDepth());
EXPECT_EQ(1u, cmd->getDestinationX2CoordinateRight());
EXPECT_EQ(4u, cmd->getDestinationY2CoordinateBottom());
EXPECT_EQ(static_cast<uint32_t>(MemoryConstants::pageSize), cmd->getDestinationPitch());
EXPECT_EQ(XY_COLOR_BLT::DESTINATION_SURFACE_TYPE::DESTINATION_SURFACE_TYPE_2D, cmd->getDestinationSurfaceType());
} }
HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenForceDummyBlitWaSetThenDummyBlitProgrammedCorrectly, IsXeHPOrAbove) { HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenForceDummyBlitWaSetThenColorBltProgrammedCorrectly, IsXeHPOrAbove) {
using XY_COLOR_BLT = typename FamilyType::XY_COLOR_BLT;
DebugManagerStateRestore dbgRestore; DebugManagerStateRestore dbgRestore;
debugManager.flags.ForceDummyBlitWa.set(1); debugManager.flags.ForceDummyBlitWa.set(1);
@ -584,41 +594,30 @@ HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenForceDummyBlitWaSetThenDummyBlitP
EXPECT_EQ(0u, stream.getUsed()); EXPECT_EQ(0u, stream.getUsed());
EncodeDummyBlitWaArgs waArgsWhenBcs{true, &rootDeviceEnvironment}; EncodeDummyBlitWaArgs waArgsWhenBcs{true, &rootDeviceEnvironment};
expectedSize = sizeof(XY_COLOR_BLT);
val = BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgsWhenBcs); val = BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgsWhenBcs);
EXPECT_NE(0u, val); EXPECT_EQ(expectedSize, val);
BlitCommandsHelper<FamilyType>::dispatchDummyBlit(stream, waArgsWhenBcs); BlitCommandsHelper<FamilyType>::dispatchDummyBlit(stream, waArgsWhenBcs);
EXPECT_NE(nullptr, rootDeviceEnvironment.getDummyAllocation()); EXPECT_NE(nullptr, rootDeviceEnvironment.getDummyAllocation());
HardwareParse hwParser; EXPECT_EQ(expectedSize, stream.getUsed());
hwParser.parseCommands<FamilyType>(stream); GenCmdList cmdList;
ASSERT_TRUE(FamilyType::Parse::parseCommandBuffer(
cmdList, ptrOffset(stream.getCpuBase(), 0), stream.getUsed()));
auto itor = find<XY_COLOR_BLT *>(cmdList.begin(), cmdList.end());
EXPECT_NE(cmdList.end(), itor);
auto cmd = genCmdCast<XY_COLOR_BLT *>(*itor);
auto cmdIterator = hwParser.cmdList.begin(); EXPECT_EQ(rootDeviceEnvironment.getDummyAllocation()->getGpuAddress(), cmd->getDestinationBaseAddress());
UnitTestHelper<FamilyType>::verifyDummyBlitWa(&rootDeviceEnvironment, cmdIterator); EXPECT_EQ(XY_COLOR_BLT::COLOR_DEPTH::COLOR_DEPTH_64_BIT_COLOR, cmd->getColorDepth());
} EXPECT_EQ(1u, cmd->getDestinationX2CoordinateRight());
EXPECT_EQ(4u, cmd->getDestinationY2CoordinateBottom());
struct DummyBlitWithColorBlt { EXPECT_EQ(static_cast<uint32_t>(MemoryConstants::pageSize), cmd->getDestinationPitch());
template <PRODUCT_FAMILY productFamily> EXPECT_EQ(XY_COLOR_BLT::DESTINATION_SURFACE_TYPE::DESTINATION_SURFACE_TYPE_2D, cmd->getDestinationSurfaceType());
static constexpr bool isMatched() {
return IsXeHPOrAbove::isMatched<productFamily>() && IsNotXeHpcCore::isMatched<productFamily>();
}
};
using DummyBlitWithMemSet = IsXeHpcCore;
HWTEST2_F(BlitTests, whenGettingSizeForDummyBlitThenColorBltSizeIsReturned, DummyBlitWithColorBlt) {
DebugManagerStateRestore dbgRestore;
debugManager.flags.ForceDummyBlitWa.set(1);
EncodeDummyBlitWaArgs waArgs{true, &pDevice->getRootDeviceEnvironmentRef()};
EXPECT_EQ(sizeof(typename FamilyType::XY_COLOR_BLT), BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs));
}
HWTEST2_F(BlitTests, whenGettingSizeForDummyBlitThenMemSetSizeIsReturned, DummyBlitWithMemSet) {
DebugManagerStateRestore dbgRestore;
debugManager.flags.ForceDummyBlitWa.set(1);
EncodeDummyBlitWaArgs waArgs{true, &pDevice->getRootDeviceEnvironmentRef()};
EXPECT_EQ(sizeof(typename FamilyType::MEM_SET), BlitCommandsHelper<FamilyType>::getDummyBlitSize(waArgs));
} }
HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaNotRequiredThenAdditionalCommandsAreNotProgrammed, IsXeHPOrAbove) { HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaNotRequiredThenAdditionalCommandsAreNotProgrammed, IsXeHPOrAbove) {
using XY_COLOR_BLT = typename FamilyType::XY_COLOR_BLT;
DebugManagerStateRestore dbgRestore; DebugManagerStateRestore dbgRestore;
debugManager.flags.ForceDummyBlitWa.set(-1); debugManager.flags.ForceDummyBlitWa.set(-1);
auto &rootDeviceEnvironment = static_cast<MockRootDeviceEnvironment &>(pDevice->getRootDeviceEnvironmentRef()); auto &rootDeviceEnvironment = static_cast<MockRootDeviceEnvironment &>(pDevice->getRootDeviceEnvironmentRef());

View File

@ -10,4 +10,3 @@
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfIsBlitSplitEnqueueWARequiredThenReturnFalse, IGFX_PVC); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfIsBlitSplitEnqueueWARequiredThenReturnFalse, IGFX_PVC);
HWTEST_EXCLUDE_PRODUCT(BlitTests, GivenCpuAccessToLocalMemoryWhenGettingMaxBlitSizeThenValuesAreOverriden_BlitPlatforms, IGFX_PVC); HWTEST_EXCLUDE_PRODUCT(BlitTests, GivenCpuAccessToLocalMemoryWhenGettingMaxBlitSizeThenValuesAreOverriden_BlitPlatforms, IGFX_PVC);
HWTEST_EXCLUDE_PRODUCT(GfxCoreHelperTest, GivenCooperativeEngineSupportedAndNotUsedWhenAdjustMaxWorkGroupCountIsCalledThenSmallerValueIsReturned, IGFX_PVC); HWTEST_EXCLUDE_PRODUCT(GfxCoreHelperTest, GivenCooperativeEngineSupportedAndNotUsedWhenAdjustMaxWorkGroupCountIsCalledThenSmallerValueIsReturned, IGFX_PVC);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_PVC);

View File

@ -199,9 +199,4 @@ PVCTEST_F(GfxCoreHelperTestsPvc, GivenCooperativeEngineSupportedAndNotUsedWhenAd
} }
} }
} }
PVCTEST_F(GfxCoreHelperTestsPvc, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue) {
auto &productHelper = getHelper<ProductHelper>();
EXPECT_TRUE(productHelper.isDummyBlitWaRequired());
}
} // namespace NEO } // namespace NEO

View File

@ -26,4 +26,3 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrde
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenGetMediaFrequencyTileIndexCallThenFalseReturn, IGFX_ARROWLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenGetMediaFrequencyTileIndexCallThenFalseReturn, IGFX_ARROWLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueueAllowedThenReturnTrue, IGFX_ARROWLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueueAllowedThenReturnTrue, IGFX_ARROWLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_ARROWLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_ARROWLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_ARROWLAKE);

View File

@ -28,10 +28,11 @@ HWTEST_EXCLUDE_PRODUCT(MemoryManagerTests, givenEnabledLocalMemoryWhenAllocateKe
HWTEST_EXCLUDE_PRODUCT(SbaTest, givenStateBaseAddressAndDebugFlagSetWhenAppendExtraCacheSettingsThenProgramCorrectL1CachePolicy_IsAtLeastXeHpgCore, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(SbaTest, givenStateBaseAddressAndDebugFlagSetWhenAppendExtraCacheSettingsThenProgramCorrectL1CachePolicy_IsAtLeastXeHpgCore, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(XeHpgSbaTest, givenSpecificProductFamilyWhenAppendingSbaThenProgramWBPL1CachePolicy, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(XeHpgSbaTest, givenSpecificProductFamilyWhenAppendingSbaThenProgramWBPL1CachePolicy, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(GfxCoreHelperTest, GivenZeroSlmSizeWhenComputeSlmSizeIsCalledThenCorrectValueIsReturned, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(GfxCoreHelperTest, GivenZeroSlmSizeWhenComputeSlmSizeIsCalledThenCorrectValueIsReturned, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTestXeHpgCore, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(CommandEncodeStatesTestDg2AndLater, GivenVariousSlmTotalSizesAndSettingRevIDToDifferentValuesWhenSetAdditionalInfoIsCalledThenCorrectValuesAreSet_IsXeHpgCore, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(CommandEncodeStatesTestDg2AndLater, GivenVariousSlmTotalSizesAndSettingRevIDToDifferentValuesWhenSetAdditionalInfoIsCalledThenCorrectValuesAreSet_IsXeHpgCore, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ProductHelperCommonTest, givenHwHelperWhenIsFusedEuDisabledForDpasCalledThenFalseReturned, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(ProductHelperCommonTest, givenHwHelperWhenIsFusedEuDisabledForDpasCalledThenFalseReturned, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ProductHelperCommonTest, givenProductHelperWhenCallingIsCalculationForDisablingEuFusionWithDpasNeededThenFalseReturned, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(ProductHelperCommonTest, givenProductHelperWhenCallingIsCalculationForDisablingEuFusionWithDpasNeededThenFalseReturned, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenDisableL3ForDebugCalledThenFalseIsReturned, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenDisableL3ForDebugCalledThenFalseIsReturned, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(WddmMemoryManagerSimpleTest, givenLinearStreamWhenItIsAllocatedThenItIsInLocalMemoryHasCpuPointerAndHasStandardHeap64kbAsGpuAddress, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(WddmMemoryManagerSimpleTest, givenLinearStreamWhenItIsAllocatedThenItIsInLocalMemoryHasCpuPointerAndHasStandardHeap64kbAsGpuAddress, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, GivenSingleCCSEnabledSetupThenCorrectCommandsAreAdded_IsXeHpgCore, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, GivenSingleCCSEnabledSetupThenCorrectCommandsAreAdded_IsXeHpgCore, IGFX_DG2);
HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenComputeModeProgrammingWhenRequiredGRFNumberIsLowerThan128ThenSmallGRFModeIsProgrammed_IsXeHpgCore, IGFX_DG2); HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenComputeModeProgrammingWhenRequiredGRFNumberIsLowerThan128ThenSmallGRFModeIsProgrammed_IsXeHpgCore, IGFX_DG2);

View File

@ -11,8 +11,9 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenSamplerStateWhenAdjustSamplerStat
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfBlitterForImagesIsSupportedThenFalseIsReturned, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfBlitterForImagesIsSupportedThenFalseIsReturned, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfTile64With3DSurfaceOnBCSIsSupportedThenTrueIsReturned, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfTile64With3DSurfaceOnBCSIsSupportedThenTrueIsReturned, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsSystolicModeConfigurabledThenFalseIsReturned, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsSystolicModeConfigurabledThenFalseIsReturned, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(CommandEncodeStatesTest, givenEventAddressWhenEncodeThenMocsFromGmmHelperIsSet, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(CommandEncodeStatesTest, givenEventAddressWhenEncodeThenMocsFromGmmHelperIsSet, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(XeHPAndLaterPreemptionTests, GivenDebuggerUsedWhenProgrammingStateSipThenStateSipIsAdded, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(XeHPAndLaterPreemptionTests, GivenDebuggerUsedWhenProgrammingStateSipThenStateSipIsAdded, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenComputeModeCmdSizeWhenLargeGrfModeChangeIsRequiredThenSCMCommandSizeIsCalculated, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenComputeModeCmdSizeWhenLargeGrfModeChangeIsRequiredThenSCMCommandSizeIsCalculated, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenCoherencyWithSharedHandlesWhenCommandSizeIsCalculatedThenCorrectCommandSizeIsReturned, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenCoherencyWithSharedHandlesWhenCommandSizeIsCalculatedThenCorrectCommandSizeIsReturned, IGFX_XE_HPG_CORE);
HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenCoherencyWithoutSharedHandlesWhenCommandSizeIsCalculatedThenCorrectCommandSizeIsReturned, IGFX_XE_HPG_CORE); HWTEST_EXCLUDE_PRODUCT(ComputeModeRequirements, givenCoherencyWithoutSharedHandlesWhenCommandSizeIsCalculatedThenCorrectCommandSizeIsReturned, IGFX_XE_HPG_CORE);

View File

@ -142,6 +142,11 @@ XE_HPG_CORETEST_F(GfxCoreHelperTestXeHpgCore, GivenVariousValuesWhenAlignSlmSize
EXPECT_EQ(65536u, gfxCoreHelper.alignSlmSize(65536)); EXPECT_EQ(65536u, gfxCoreHelper.alignSlmSize(65536));
} }
XE_HPG_CORETEST_F(ProductHelperTestXeHpgCore, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue) {
auto &productHelper = getHelper<ProductHelper>();
EXPECT_TRUE(productHelper.isDummyBlitWaRequired());
}
XE_HPG_CORETEST_F(GfxCoreHelperTestXeHpgCore, givenGfxCoreHelperWhenCheckTimestampWaitSupportForQueuesThenReturnFalse) { XE_HPG_CORETEST_F(GfxCoreHelperTestXeHpgCore, givenGfxCoreHelperWhenCheckTimestampWaitSupportForQueuesThenReturnFalse) {
auto &gfxCoreHelper = getHelper<GfxCoreHelper>(); auto &gfxCoreHelper = getHelper<GfxCoreHelper>();
EXPECT_FALSE(gfxCoreHelper.isTimestampWaitSupportedForQueues()); EXPECT_FALSE(gfxCoreHelper.isTimestampWaitSupportedForQueues());

View File

@ -21,4 +21,3 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfPatIndexP
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrderAvailableCallThenFalseReturn, IGFX_METEORLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrderAvailableCallThenFalseReturn, IGFX_METEORLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueueAllowedThenReturnTrue, IGFX_METEORLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueueAllowedThenReturnTrue, IGFX_METEORLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_METEORLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_METEORLAKE);
HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_METEORLAKE);

View File

@ -350,8 +350,4 @@ HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallIsCachingOnCpuAvail
HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallIsNewCoherencyModelSupportedThenTrueIsReturned, IsXeLpg) { HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallIsNewCoherencyModelSupportedThenTrueIsReturned, IsXeLpg) {
EXPECT_TRUE(productHelper->isNewCoherencyModelSupported()); EXPECT_TRUE(productHelper->isNewCoherencyModelSupported());
} }
HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue, IsXeLpg) {
EXPECT_TRUE(productHelper->isDummyBlitWaRequired());
}