diff --git a/opencl/test/unit_test/command_stream/command_stream_receiver_hw_1_tests.cpp b/opencl/test/unit_test/command_stream/command_stream_receiver_hw_1_tests.cpp index ef8c2f3898..e07a2fd481 100644 --- a/opencl/test/unit_test/command_stream/command_stream_receiver_hw_1_tests.cpp +++ b/opencl/test/unit_test/command_stream/command_stream_receiver_hw_1_tests.cpp @@ -13,6 +13,7 @@ #include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/os_interface/device_factory.h" #include "shared/source/os_interface/product_helper.h" +#include "shared/source/release_helper/release_helper.h" #include "shared/test/common/helpers/debug_manager_state_restore.h" #include "shared/test/common/helpers/engine_descriptor_helper.h" #include "shared/test/common/helpers/relaxed_ordering_commands_helper.h" @@ -1259,7 +1260,8 @@ HWTEST_F(BcsTests, givenBltSizeWithLeftoverWhenDispatchedThenProgramAllRequiredC cmdIterator++; } } - if (pDevice->getProductHelper().isDummyBlitWaRequired()) { + auto releaseHelper = pDevice->getReleaseHelper(); + if (releaseHelper && releaseHelper->isDummyBlitWaRequired()) { UnitTestHelper::verifyDummyBlitWa(&(pDevice->getRootDeviceEnvironmentRef()), cmdIterator); } auto miFlushCmd = genCmdCast(*(cmdIterator++)); diff --git a/opencl/test/unit_test/command_stream/command_stream_receiver_hw_2_tests.cpp b/opencl/test/unit_test/command_stream/command_stream_receiver_hw_2_tests.cpp index 496cd0f96a..7d27fcf860 100644 --- a/opencl/test/unit_test/command_stream/command_stream_receiver_hw_2_tests.cpp +++ b/opencl/test/unit_test/command_stream/command_stream_receiver_hw_2_tests.cpp @@ -11,6 +11,7 @@ #include "shared/source/helpers/blit_commands_helper.h" #include "shared/source/helpers/definitions/command_encoder_args.h" #include "shared/source/helpers/flush_stamp.h" +#include "shared/source/release_helper/release_helper.h" #include "shared/test/common/helpers/debug_manager_state_restore.h" #include "shared/test/common/helpers/engine_descriptor_helper.h" #include "shared/test/common/helpers/raii_gfx_core_helper.h" @@ -792,7 +793,8 @@ HWTEST_F(BcsTests, givenInputAllocationsWhenBlitDispatchedThenMakeAllAllocations EXPECT_TRUE(csr.isMadeResident(csr.getTagAllocation())); EXPECT_EQ(expectedCalled, csr.makeSurfacePackNonResidentCalled); auto &rootDeviceEnvironment = pDevice->getRootDeviceEnvironmentRef(); - if (getHelper().isDummyBlitWaRequired()) { + auto releaseHelper = rootDeviceEnvironment.getReleaseHelper(); + if (releaseHelper && releaseHelper->isDummyBlitWaRequired()) { residentAllocationsNum++; EXPECT_TRUE(csr.isMadeResident(rootDeviceEnvironment.getDummyAllocation())); } @@ -856,7 +858,8 @@ HWTEST_F(BcsTests, givenFenceAllocationIsRequiredWhenBlitDispatchedThenMakeAllAl EXPECT_TRUE(bcsCsr->isMadeResident(bcsCsr->getTagAllocation())); EXPECT_TRUE(bcsCsr->isMadeResident(bcsCsr->globalFenceAllocation)); auto &rootDeviceEnvironment = pDevice->getRootDeviceEnvironmentRef(); - if (getHelper().isDummyBlitWaRequired()) { + auto releaseHelper = rootDeviceEnvironment.getReleaseHelper(); + if (releaseHelper && releaseHelper->isDummyBlitWaRequired()) { EXPECT_TRUE(bcsCsr->isMadeResident(rootDeviceEnvironment.getDummyAllocation())); residentAllocationsNum++; } @@ -2132,4 +2135,4 @@ HWTEST_F(BcsTests, givenHostPtrToImageWhenBlitBufferIsCalledThenBlitCmdIsFound) hwParser.parseCommands(csr.commandStream, 0); auto cmdIterator = find(hwParser.cmdList.begin(), hwParser.cmdList.end()); EXPECT_NE(hwParser.cmdList.end(), cmdIterator); -} \ No newline at end of file +} diff --git a/shared/source/helpers/blit_commands_helper_xehp_and_later.inl b/shared/source/helpers/blit_commands_helper_xehp_and_later.inl index 875e8f3dd3..b61d887af1 100644 --- a/shared/source/helpers/blit_commands_helper_xehp_and_later.inl +++ b/shared/source/helpers/blit_commands_helper_xehp_and_later.inl @@ -10,6 +10,7 @@ #include "shared/source/gmm_helper/resource_info.h" #include "shared/source/helpers/blit_commands_helper_base.inl" #include "shared/source/helpers/local_memory_access_modes.h" +#include "shared/source/release_helper/release_helper.h" namespace NEO { @@ -363,8 +364,9 @@ bool BlitCommandsHelper::isDummyBlitWaNeeded(const EncodeDummyBlitWaA if (debugManager.flags.ForceDummyBlitWa.get() != -1) { return debugManager.flags.ForceDummyBlitWa.get(); } - auto &productHelper = waArgs.rootDeviceEnvironment->getProductHelper(); - return productHelper.isDummyBlitWaRequired(); + auto releaseHelper = waArgs.rootDeviceEnvironment->getReleaseHelper(); + UNRECOVERABLE_IF(!releaseHelper); + return releaseHelper->isDummyBlitWaRequired(); } return false; } diff --git a/shared/source/os_interface/product_helper.h b/shared/source/os_interface/product_helper.h index 53953e6d16..448a5e4c22 100644 --- a/shared/source/os_interface/product_helper.h +++ b/shared/source/os_interface/product_helper.h @@ -181,7 +181,6 @@ class ProductHelper { virtual bool useLocalPreferredForCacheableBuffers() const = 0; virtual bool useGemCreateExtInAllocateMemoryByKMD() const = 0; virtual bool isTlbFlushRequired() const = 0; - virtual bool isDummyBlitWaRequired() const = 0; virtual bool isDetectIndirectAccessInKernelSupported(const KernelDescriptor &kernelDescriptor, const bool isPrecompiled, const uint32_t precompiledKernelIndirectDetectionVersion) const = 0; virtual uint32_t getRequiredDetectIndirectVersion() const = 0; virtual uint32_t getRequiredDetectIndirectVersionVC() const = 0; diff --git a/shared/source/os_interface/product_helper.inl b/shared/source/os_interface/product_helper.inl index e9efe0c525..ef37659656 100644 --- a/shared/source/os_interface/product_helper.inl +++ b/shared/source/os_interface/product_helper.inl @@ -809,11 +809,6 @@ bool ProductHelperHw::isCalculationForDisablingEuFusionWithDpasNeede return false; } -template -bool ProductHelperHw::isDummyBlitWaRequired() const { - return false; -} - template bool ProductHelperHw::is48bResourceNeededForRayTracing() const { return true; diff --git a/shared/source/os_interface/product_helper_hw.h b/shared/source/os_interface/product_helper_hw.h index 6f34534e73..197d4ff2d7 100644 --- a/shared/source/os_interface/product_helper_hw.h +++ b/shared/source/os_interface/product_helper_hw.h @@ -124,7 +124,6 @@ class ProductHelperHw : public ProductHelper { bool useLocalPreferredForCacheableBuffers() const override; bool useGemCreateExtInAllocateMemoryByKMD() const override; bool isTlbFlushRequired() const override; - bool isDummyBlitWaRequired() const override; bool isDetectIndirectAccessInKernelSupported(const KernelDescriptor &kernelDescriptor, const bool isPrecompiled, const uint32_t precompiledKernelIndirectDetectionVersion) const override; uint32_t getRequiredDetectIndirectVersion() const override; uint32_t getRequiredDetectIndirectVersionVC() const override; diff --git a/shared/source/release_helper/release_helper.h b/shared/source/release_helper/release_helper.h index 94fdcca0bf..d4c7edf9d0 100644 --- a/shared/source/release_helper/release_helper.h +++ b/shared/source/release_helper/release_helper.h @@ -60,6 +60,7 @@ class ReleaseHelper { virtual uint32_t getStackSizePerRay() const = 0; virtual bool isLocalOnlyAllowed() const = 0; virtual bool isDisablingMsaaRequired() const = 0; + virtual bool isDummyBlitWaRequired() const = 0; virtual const SizeToPreferredSlmValueArray &getSizeToPreferredSlmValue(bool isHeapless) const = 0; protected: @@ -100,6 +101,7 @@ class ReleaseHelperHw : public ReleaseHelper { uint32_t getStackSizePerRay() const override; bool isLocalOnlyAllowed() const override; bool isDisablingMsaaRequired() const override; + bool isDummyBlitWaRequired() const override; const SizeToPreferredSlmValueArray &getSizeToPreferredSlmValue(bool isHeapless) const override; protected: diff --git a/shared/source/release_helper/release_helper_1260.cpp b/shared/source/release_helper/release_helper_1260.cpp index 9bd5df2c0a..707c969cd9 100644 --- a/shared/source/release_helper/release_helper_1260.cpp +++ b/shared/source/release_helper/release_helper_1260.cpp @@ -34,6 +34,11 @@ const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferred return sizeToPreferredSlmValue; } +template <> +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return true; +} + } // namespace NEO template class NEO::ReleaseHelperHw; diff --git a/shared/source/release_helper/release_helper_1261.cpp b/shared/source/release_helper/release_helper_1261.cpp index 20cb5f87de..2eb3fcb67a 100644 --- a/shared/source/release_helper/release_helper_1261.cpp +++ b/shared/source/release_helper/release_helper_1261.cpp @@ -44,6 +44,11 @@ const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferred return sizeToPreferredSlmValue; } +template <> +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return true; +} + } // namespace NEO template class NEO::ReleaseHelperHw; diff --git a/shared/source/release_helper/release_helper_1270.cpp b/shared/source/release_helper/release_helper_1270.cpp index 9eab4ec89f..9b440af55e 100644 --- a/shared/source/release_helper/release_helper_1270.cpp +++ b/shared/source/release_helper/release_helper_1270.cpp @@ -60,6 +60,11 @@ const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferred return sizeToPreferredSlmValue; } +template <> +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return true; +} + } // namespace NEO #include "shared/source/release_helper/release_helper_common_xe_lpg.inl" diff --git a/shared/source/release_helper/release_helper_1271.cpp b/shared/source/release_helper/release_helper_1271.cpp index f313ced13b..506552dafc 100644 --- a/shared/source/release_helper/release_helper_1271.cpp +++ b/shared/source/release_helper/release_helper_1271.cpp @@ -60,6 +60,11 @@ const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferred return sizeToPreferredSlmValue; } +template <> +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return true; +} + } // namespace NEO #include "shared/source/release_helper/release_helper_common_xe_lpg.inl" diff --git a/shared/source/release_helper/release_helper_1274.cpp b/shared/source/release_helper/release_helper_1274.cpp index 6e228b533b..6b26ffbf8b 100644 --- a/shared/source/release_helper/release_helper_1274.cpp +++ b/shared/source/release_helper/release_helper_1274.cpp @@ -48,6 +48,11 @@ const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferred return sizeToPreferredSlmValue; } +template <> +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return true; +} + } // namespace NEO template class NEO::ReleaseHelperHw; diff --git a/shared/source/release_helper/release_helper_base.inl b/shared/source/release_helper/release_helper_base.inl index ca97dab172..20963687ec 100644 --- a/shared/source/release_helper/release_helper_base.inl +++ b/shared/source/release_helper/release_helper_base.inl @@ -147,6 +147,11 @@ bool ReleaseHelperHw::isDisablingMsaaRequired() const { return false; } +template +bool ReleaseHelperHw::isDummyBlitWaRequired() const { + return false; +} + template const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferredSlmValue(bool isHeapless) const { static const SizeToPreferredSlmValueArray sizeToPreferredSlmValue = {}; diff --git a/shared/source/xe_hpc_core/pvc/os_agnostic_product_helper_pvc.inl b/shared/source/xe_hpc_core/pvc/os_agnostic_product_helper_pvc.inl index a23798cb48..b8a29a3748 100644 --- a/shared/source/xe_hpc_core/pvc/os_agnostic_product_helper_pvc.inl +++ b/shared/source/xe_hpc_core/pvc/os_agnostic_product_helper_pvc.inl @@ -12,10 +12,6 @@ #include "aubstream/product_family.h" namespace NEO { -template <> -bool ProductHelperHw::isDummyBlitWaRequired() const { - return true; -} template <> bool ProductHelperHw::isMaxThreadsForWorkgroupWARequired(const HardwareInfo &hwInfo) const { diff --git a/shared/source/xe_hpg_core/xe_lpg/os_agnostic_product_helper_xe_lpg.inl b/shared/source/xe_hpg_core/xe_lpg/os_agnostic_product_helper_xe_lpg.inl index 2e503531c5..5efcdeda79 100644 --- a/shared/source/xe_hpg_core/xe_lpg/os_agnostic_product_helper_xe_lpg.inl +++ b/shared/source/xe_hpg_core/xe_lpg/os_agnostic_product_helper_xe_lpg.inl @@ -46,11 +46,6 @@ bool ProductHelperHw::blitEnqueuePreferred(bool isWriteToImageFromBu template <> std::optional ProductHelperHw::getAubStreamProductFamily() const { return aub_stream::ProductFamily::Mtl; -}; - -template <> -bool ProductHelperHw::isDummyBlitWaRequired() const { - return true; } template <> diff --git a/shared/test/common/helpers/unit_test_helper_xehp_and_later.inl b/shared/test/common/helpers/unit_test_helper_xehp_and_later.inl index 9f4a2a3ebc..844e43aabc 100644 --- a/shared/test/common/helpers/unit_test_helper_xehp_and_later.inl +++ b/shared/test/common/helpers/unit_test_helper_xehp_and_later.inl @@ -10,6 +10,7 @@ #include "shared/source/command_stream/linear_stream.h" #include "shared/source/debug_settings/debug_settings_manager.h" #include "shared/source/kernel/kernel_descriptor.h" +#include "shared/source/release_helper/release_helper.h" #include "shared/test/common/cmd_parse/hw_parse.h" #include "shared/test/common/helpers/unit_test_helper.h" @@ -122,8 +123,8 @@ size_t UnitTestHelper::getAdditionalDshSize(uint32_t iddCount) { template void UnitTestHelper::verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) { - const auto &productHelper = rootDeviceEnvironment->getProductHelper(); - if (productHelper.isDummyBlitWaRequired()) { + const auto releaseHelper = rootDeviceEnvironment->getReleaseHelper(); + if (releaseHelper->isDummyBlitWaRequired()) { using XY_COLOR_BLT = typename GfxFamily::XY_COLOR_BLT; auto dummyBltCmd = genCmdCast(*(cmdIterator++)); EXPECT_NE(nullptr, dummyBltCmd); diff --git a/shared/test/common/mocks/mock_release_helper.h b/shared/test/common/mocks/mock_release_helper.h index 147d021386..c8285fd630 100644 --- a/shared/test/common/mocks/mock_release_helper.h +++ b/shared/test/common/mocks/mock_release_helper.h @@ -40,6 +40,7 @@ class MockReleaseHelper : public ReleaseHelper { ADDMETHOD_CONST_NOBASE(getStackSizePerRay, uint32_t, {}, ()); ADDMETHOD_CONST_NOBASE(isLocalOnlyAllowed, bool, {}, ()); ADDMETHOD_CONST_NOBASE(isDisablingMsaaRequired, bool, false, ()); + ADDMETHOD_CONST_NOBASE(isDummyBlitWaRequired, bool, false, ()); const SizeToPreferredSlmValueArray &getSizeToPreferredSlmValue(bool isHeapless) const override { static SizeToPreferredSlmValueArray sizeToPreferredSlmValue = {}; diff --git a/shared/test/common/xe_hpc_core/unit_test_helper_xe_hpc_core.cpp b/shared/test/common/xe_hpc_core/unit_test_helper_xe_hpc_core.cpp index b3f0daa840..7185741187 100644 --- a/shared/test/common/xe_hpc_core/unit_test_helper_xe_hpc_core.cpp +++ b/shared/test/common/xe_hpc_core/unit_test_helper_xe_hpc_core.cpp @@ -44,8 +44,8 @@ bool UnitTestHelper::getComputeDispatchAllWalkerFromFrontEndCommand(cons template <> void UnitTestHelper::verifyDummyBlitWa(const RootDeviceEnvironment *rootDeviceEnvironment, GenCmdList::iterator &cmdIterator) { - const auto &productHelper = rootDeviceEnvironment->getProductHelper(); - if (productHelper.isDummyBlitWaRequired()) { + const auto releaseHelper = rootDeviceEnvironment->getReleaseHelper(); + if (releaseHelper->isDummyBlitWaRequired()) { auto dummyBltCmd = genCmdCast(*(cmdIterator++)); EXPECT_NE(nullptr, dummyBltCmd); diff --git a/shared/test/unit_test/helpers/test_blit_commands_helper_xehp_and_later.cpp b/shared/test/unit_test/helpers/test_blit_commands_helper_xehp_and_later.cpp index 05f1cb9934..a08abbda0b 100644 --- a/shared/test/unit_test/helpers/test_blit_commands_helper_xehp_and_later.cpp +++ b/shared/test/unit_test/helpers/test_blit_commands_helper_xehp_and_later.cpp @@ -23,6 +23,7 @@ #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_resource_info.h" +#include "shared/test/common/mocks/mock_release_helper.h" #include "shared/test/common/mocks/ult_device_factory.h" #include "shared/test/common/test_macros/hw_test.h" #include "shared/test/unit_test/helpers/blit_commands_helper_tests.inl" @@ -503,25 +504,14 @@ HWTEST2_F(BlitTests, givenDebugVariableWhenDispatchBlitCommandsForImageRegionIsC EXPECT_EQ(expectedOutput.str(), output); } -template -class TestDummyBlitMockProductHelper : public ProductHelperHw { - public: - bool isDummyBlitWaRequired() const override { - return dummyBlitRequired; - } - uint32_t dummyBlitRequired = true; -}; - HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaRequiredThenDummyBlitIsProgrammedCorrectly, IsXeHPOrAbove) { DebugManagerStateRestore dbgRestore; debugManager.flags.ForceDummyBlitWa.set(-1); auto &rootDeviceEnvironment = static_cast(pDevice->getRootDeviceEnvironmentRef()); - - RAIIProductHelperFactory> raii{ - rootDeviceEnvironment}; - auto &productHelper = *raii.mockProductHelper; - productHelper.dummyBlitRequired = true; + auto releaseHelper = new MockReleaseHelper(); + releaseHelper->isDummyBlitWaRequiredResult = true; + rootDeviceEnvironment.releaseHelper.reset(releaseHelper); uint32_t streamBuffer[100] = {}; LinearStream stream(streamBuffer, sizeof(streamBuffer)); @@ -621,11 +611,7 @@ HWTEST2_F(BlitTests, givenDispatchDummyBlitWhenDummyBlitWaNotRequiredThenAdditio DebugManagerStateRestore dbgRestore; debugManager.flags.ForceDummyBlitWa.set(-1); auto &rootDeviceEnvironment = static_cast(pDevice->getRootDeviceEnvironmentRef()); - - RAIIProductHelperFactory> raii{ - rootDeviceEnvironment}; - auto &productHelper = *raii.mockProductHelper; - productHelper.dummyBlitRequired = false; + rootDeviceEnvironment.releaseHelper = std::make_unique(); uint32_t streamBuffer[100] = {}; LinearStream stream(streamBuffer, sizeof(streamBuffer)); diff --git a/shared/test/unit_test/os_interface/product_helper_tests.cpp b/shared/test/unit_test/os_interface/product_helper_tests.cpp index 206c6ac345..e649fa5f0e 100644 --- a/shared/test/unit_test/os_interface/product_helper_tests.cpp +++ b/shared/test/unit_test/os_interface/product_helper_tests.cpp @@ -841,10 +841,6 @@ HWTEST_F(ProductHelperTest, givenProductHelperWhenCheckingIsUnlockingLockedPtrNe EXPECT_FALSE(productHelper->isUnlockingLockedPtrNecessary(pInHwInfo)); } -HWTEST_F(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse) { - EXPECT_FALSE(productHelper->isDummyBlitWaRequired()); -} - HWTEST_F(ProductHelperTest, givenProductHelperAndKernelBinaryFormatsWhenCheckingIsDetectIndirectAccessInKernelSupportedThenCorrectValueIsReturned) { KernelDescriptor kernelDescriptor; const auto igcDetectIndirectVersion = INDIRECT_ACCESS_DETECTION_VERSION; diff --git a/shared/test/unit_test/release_helper/release_helper_12_55_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_55_tests.cpp index 5086844e08..4404db707e 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_55_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_55_tests.cpp @@ -72,6 +72,10 @@ TEST_F(ReleaseHelper1255Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1255Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper1255Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_56_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_56_tests.cpp index e5d38d44aa..e5e395ee98 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_56_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_56_tests.cpp @@ -72,6 +72,10 @@ TEST_F(ReleaseHelper1256Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1256Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper1256Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_57_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_57_tests.cpp index 59add9b1d7..d05a352b9e 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_57_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_57_tests.cpp @@ -72,6 +72,10 @@ TEST_F(ReleaseHelper1257Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1257Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper1257Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_60_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_60_tests.cpp index b518fe8391..f211cb3f2c 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_60_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_60_tests.cpp @@ -57,6 +57,10 @@ TEST_F(ReleaseHelper1260Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1260Tests, whenIsDummyBlitWaRequiredCalledThenTrueReturned) { + whenIsDummyBlitWaRequiredCalledThenTrueReturned(); +} + TEST_F(ReleaseHelper1260Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_61_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_61_tests.cpp index ef6a3d869d..2a37a5b4fa 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_61_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_61_tests.cpp @@ -56,6 +56,10 @@ TEST_F(ReleaseHelper1261Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1261Tests, whenIsDummyBlitWaRequiredCalledThenTrueReturned) { + whenIsDummyBlitWaRequiredCalledThenTrueReturned(); +} + TEST_F(ReleaseHelper1261Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_70_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_70_tests.cpp index 3778f71814..7b86437d02 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_70_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_70_tests.cpp @@ -69,6 +69,10 @@ TEST_F(ReleaseHelper1270Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1270Tests, whenIsDummyBlitWaRequiredCalledThenTrueReturned) { + whenIsDummyBlitWaRequiredCalledThenTrueReturned(); +} + TEST_F(ReleaseHelper1270Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_71_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_71_tests.cpp index b32a387090..f0cf1e6c78 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_71_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_71_tests.cpp @@ -69,6 +69,10 @@ TEST_F(ReleaseHelper1271Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1271Tests, whenIsDummyBlitWaRequiredCalledThenTrueReturned) { + whenIsDummyBlitWaRequiredCalledThenTrueReturned(); +} + TEST_F(ReleaseHelper1271Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_12_74_tests.cpp b/shared/test/unit_test/release_helper/release_helper_12_74_tests.cpp index f72e45f82c..554ec460a1 100644 --- a/shared/test/unit_test/release_helper/release_helper_12_74_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_12_74_tests.cpp @@ -71,6 +71,10 @@ TEST_F(ReleaseHelper1274Tests, whenIsLocalOnlyAllowedCalledThenTrueReturned) { whenIsLocalOnlyAllowedCalledThenTrueReturned(); } +TEST_F(ReleaseHelper1274Tests, whenIsDummyBlitWaRequiredCalledThenTrueReturned) { + whenIsDummyBlitWaRequiredCalledThenTrueReturned(); +} + TEST_F(ReleaseHelper1274Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_20_01_tests.cpp b/shared/test/unit_test/release_helper/release_helper_20_01_tests.cpp index 8aa6c6f047..780535d198 100644 --- a/shared/test/unit_test/release_helper/release_helper_20_01_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_20_01_tests.cpp @@ -72,6 +72,10 @@ TEST_F(ReleaseHelper2001Tests, whenIsLocalOnlyAllowedCalledThenFalseReturned) { whenIsLocalOnlyAllowedCalledThenFalseReturned(); } +TEST_F(ReleaseHelper2001Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper2001Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_20_04_tests.cpp b/shared/test/unit_test/release_helper/release_helper_20_04_tests.cpp index 5ee2b523e2..a2c1f0e459 100644 --- a/shared/test/unit_test/release_helper/release_helper_20_04_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_20_04_tests.cpp @@ -72,6 +72,10 @@ TEST_F(ReleaseHelper2004Tests, whenIsLocalOnlyAllowedCalledThenFalseReturned) { whenIsLocalOnlyAllowedCalledThenFalseReturned(); } +TEST_F(ReleaseHelper2004Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper2004Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_30_00_tests.cpp b/shared/test/unit_test/release_helper/release_helper_30_00_tests.cpp index fe69734e26..994b3798ec 100644 --- a/shared/test/unit_test/release_helper/release_helper_30_00_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_30_00_tests.cpp @@ -74,6 +74,10 @@ TEST_F(ReleaseHelper3000Tests, whenIsLocalOnlyAllowedCalledThenFalseReturned) { whenIsLocalOnlyAllowedCalledThenFalseReturned(); } +TEST_F(ReleaseHelper3000Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper3000Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_30_01_tests.cpp b/shared/test/unit_test/release_helper/release_helper_30_01_tests.cpp index 77ad1a227a..064abb785e 100644 --- a/shared/test/unit_test/release_helper/release_helper_30_01_tests.cpp +++ b/shared/test/unit_test/release_helper/release_helper_30_01_tests.cpp @@ -74,6 +74,10 @@ TEST_F(ReleaseHelper3001Tests, whenIsLocalOnlyAllowedCalledThenFalseReturned) { whenIsLocalOnlyAllowedCalledThenFalseReturned(); } +TEST_F(ReleaseHelper3001Tests, whenIsDummyBlitWaRequiredCalledThenFalseReturned) { + whenIsDummyBlitWaRequiredCalledThenFalseReturned(); +} + TEST_F(ReleaseHelper3001Tests, whenGettingPreferredSlmSizeThenAllEntriesHaveCorrectValues) { for (auto &revision : getRevisions()) { ipVersion.revision = revision; diff --git a/shared/test/unit_test/release_helper/release_helper_tests_base.cpp b/shared/test/unit_test/release_helper/release_helper_tests_base.cpp index 68369cfc44..730810003a 100644 --- a/shared/test/unit_test/release_helper/release_helper_tests_base.cpp +++ b/shared/test/unit_test/release_helper/release_helper_tests_base.cpp @@ -171,3 +171,21 @@ void ReleaseHelperTestsBase::whenGettingThreadsPerEuConfigsThenCorrectValueIsRet } } } + +void ReleaseHelperTestsBase::whenIsDummyBlitWaRequiredCalledThenTrueReturned() { + for (auto &revision : getRevisions()) { + ipVersion.revision = revision; + releaseHelper = ReleaseHelper::create(ipVersion); + ASSERT_NE(nullptr, releaseHelper); + EXPECT_TRUE(releaseHelper->isDummyBlitWaRequired()); + } +} + +void ReleaseHelperTestsBase::whenIsDummyBlitWaRequiredCalledThenFalseReturned() { + for (auto &revision : getRevisions()) { + ipVersion.revision = revision; + releaseHelper = ReleaseHelper::create(ipVersion); + ASSERT_NE(nullptr, releaseHelper); + EXPECT_FALSE(releaseHelper->isDummyBlitWaRequired()); + } +} diff --git a/shared/test/unit_test/release_helper/release_helper_tests_base.h b/shared/test/unit_test/release_helper/release_helper_tests_base.h index d1ade85700..6a7a053195 100644 --- a/shared/test/unit_test/release_helper/release_helper_tests_base.h +++ b/shared/test/unit_test/release_helper/release_helper_tests_base.h @@ -28,6 +28,8 @@ struct ReleaseHelperTestsBase : public ::testing::Test { void whenGettingTotalMemBankSizeThenReturn32GB(); void whenGettingAdditionalFp16AtomicCapabilitiesThenReturnNoCapabilities(); void whenGettingAdditionalExtraKernelCapabilitiesThenReturnNoCapabilities(); + void whenIsDummyBlitWaRequiredCalledThenTrueReturned(); + void whenIsDummyBlitWaRequiredCalledThenFalseReturned(); void whenIsLocalOnlyAllowedCalledThenTrueReturned(); void whenIsLocalOnlyAllowedCalledThenFalseReturned(); void whenGettingPreferredSlmSizeThenAllEntriesEmpty(); diff --git a/shared/test/unit_test/xe_hpc_core/pvc/excludes_xe_hpc_core_pvc.cpp b/shared/test/unit_test/xe_hpc_core/pvc/excludes_xe_hpc_core_pvc.cpp index 3c64fcc90a..d9b469abd7 100644 --- a/shared/test/unit_test/xe_hpc_core/pvc/excludes_xe_hpc_core_pvc.cpp +++ b/shared/test/unit_test/xe_hpc_core/pvc/excludes_xe_hpc_core_pvc.cpp @@ -10,4 +10,3 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenAskedIfIsBlitSplitEnqueueWARequiredThenReturnFalse, IGFX_PVC); HWTEST_EXCLUDE_PRODUCT(BlitTests, GivenCpuAccessToLocalMemoryWhenGettingMaxBlitSizeThenValuesAreOverriden_BlitPlatforms, IGFX_PVC); HWTEST_EXCLUDE_PRODUCT(GfxCoreHelperTest, GivenCooperativeEngineSupportedAndNotUsedWhenAdjustMaxWorkGroupCountIsCalledThenSmallerValueIsReturned, IGFX_PVC); -HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_PVC); diff --git a/shared/test/unit_test/xe_hpc_core/pvc/test_product_helper_pvc.cpp b/shared/test/unit_test/xe_hpc_core/pvc/test_product_helper_pvc.cpp index 0315624584..dbc4f1b75f 100644 --- a/shared/test/unit_test/xe_hpc_core/pvc/test_product_helper_pvc.cpp +++ b/shared/test/unit_test/xe_hpc_core/pvc/test_product_helper_pvc.cpp @@ -289,10 +289,6 @@ PVCTEST_F(PvcProductHelper, whenQueryingMaxNumSamplersThenReturnZero) { EXPECT_EQ(0u, productHelper->getMaxNumSamplers()); } -PVCTEST_F(PvcProductHelper, whenCheckingIfDummyBlitWaIsRequiredThenTrueIsReturned) { - EXPECT_TRUE(productHelper->isDummyBlitWaRequired()); -} - PVCTEST_F(PvcProductHelper, givenProductHelperWhenAskingForReadOnlyResourceSupportThenTrueReturned) { EXPECT_TRUE(productHelper->supportReadOnlyAllocations()); } \ No newline at end of file diff --git a/shared/test/unit_test/xe_hpg_core/arl/excludes_xe_hpg_core_arl.cpp b/shared/test/unit_test/xe_hpg_core/arl/excludes_xe_hpg_core_arl.cpp index 98621c02a3..32c1353a13 100644 --- a/shared/test/unit_test/xe_hpg_core/arl/excludes_xe_hpg_core_arl.cpp +++ b/shared/test/unit_test/xe_hpg_core/arl/excludes_xe_hpg_core_arl.cpp @@ -22,4 +22,3 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrde HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueuePreferredThenReturnTrue, IGFX_ARROWLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_ARROWLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenBooleanUncachedWhenCallOverridePatIndexThenProperPatIndexIsReturned, IGFX_ARROWLAKE); -HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_ARROWLAKE); diff --git a/shared/test/unit_test/xe_hpg_core/mtl/excludes_xe_hpg_core_mtl.cpp b/shared/test/unit_test/xe_hpg_core/mtl/excludes_xe_hpg_core_mtl.cpp index 45248f23e5..85840de44c 100644 --- a/shared/test/unit_test/xe_hpg_core/mtl/excludes_xe_hpg_core_mtl.cpp +++ b/shared/test/unit_test/xe_hpg_core/mtl/excludes_xe_hpg_core_mtl.cpp @@ -18,4 +18,3 @@ HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenIsAdjustWalkOrde HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckBlitEnqueuePreferredThenReturnTrue, IGFX_METEORLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, whenGettingPreferredAllocationMethodThenNoPreferenceIsReturned, IGFX_METEORLAKE); HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenBooleanUncachedWhenCallOverridePatIndexThenProperPatIndexIsReturned, IGFX_METEORLAKE); -HWTEST_EXCLUDE_PRODUCT(ProductHelperTest, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnFalse, IGFX_METEORLAKE); diff --git a/shared/test/unit_test/xe_hpg_core/os_agnostic_product_helper_xe_lpg_tests.cpp b/shared/test/unit_test/xe_hpg_core/os_agnostic_product_helper_xe_lpg_tests.cpp index 231f434975..b5575e2f32 100644 --- a/shared/test/unit_test/xe_hpg_core/os_agnostic_product_helper_xe_lpg_tests.cpp +++ b/shared/test/unit_test/xe_hpg_core/os_agnostic_product_helper_xe_lpg_tests.cpp @@ -361,10 +361,6 @@ HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallDeferMOCSToPatThenF EXPECT_FALSE(productHelper.deferMOCSToPatIndex()); } -HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue, IsXeLpg) { - EXPECT_TRUE(productHelper->isDummyBlitWaRequired()); -} - HWTEST2_F(XeLpgProductHelperTests, givenPatIndexWhenCheckIsCoherentAllocationThenReturnProperValue, IsXeLpg) { std::array listOfCoherentPatIndexes = {3, 4}; for (auto patIndex : listOfCoherentPatIndexes) {