diff --git a/opencl/source/mem_obj/image.cpp b/opencl/source/mem_obj/image.cpp index 5856d17138..d194479966 100644 --- a/opencl/source/mem_obj/image.cpp +++ b/opencl/source/mem_obj/image.cpp @@ -211,7 +211,7 @@ Image *Image::create(Context *context, auto &clGfxCoreHelper = defaultDevice->getRootDeviceEnvironment().getHelper(); bool preferCompression = MemObjHelper::isSuitableForCompression(!imgInfo.linearStorage, memoryProperties, - *context, defaultProductHelper.isImageSuitableForCompression()); + *context, true); preferCompression &= clGfxCoreHelper.allowImageCompression(surfaceFormat->oclImageFormat); preferCompression &= !clGfxCoreHelper.isFormatRedescribable(surfaceFormat->oclImageFormat); diff --git a/opencl/test/unit_test/mem_obj/image_tests.cpp b/opencl/test/unit_test/mem_obj/image_tests.cpp index 6bb40f3432..2e92be7a25 100644 --- a/opencl/test/unit_test/mem_obj/image_tests.cpp +++ b/opencl/test/unit_test/mem_obj/image_tests.cpp @@ -1113,13 +1113,7 @@ HWTEST_F(ImageCompressionTests, givenTiledImageWhenCreatingAllocationThenPreferC ASSERT_NE(nullptr, image); EXPECT_EQ(defaultHwInfo->capabilityTable.supportsImages, image->isTiledAllocation()); EXPECT_TRUE(myMemoryManager->mockMethodCalled); - - auto isImageSuitableForCompression = context.getDevice(0)->getProductHelper().isImageSuitableForCompression(); - if (isImageSuitableForCompression) { - EXPECT_EQ(defaultHwInfo->capabilityTable.supportsImages, myMemoryManager->capturedPreferCompressed); - } else { - EXPECT_FALSE(myMemoryManager->capturedPreferCompressed); - } + EXPECT_EQ(defaultHwInfo->capabilityTable.supportsImages, myMemoryManager->capturedPreferCompressed); } TEST_F(ImageCompressionTests, givenNonTiledImageWhenCreatingAllocationThenDontPreferCompression) { diff --git a/opencl/test/unit_test/xe_hpg_core/image_tests_xe_hpg_core.cpp b/opencl/test/unit_test/xe_hpg_core/image_tests_xe_hpg_core.cpp index f1bcf17b6f..8a21bc6ce0 100644 --- a/opencl/test/unit_test/xe_hpg_core/image_tests_xe_hpg_core.cpp +++ b/opencl/test/unit_test/xe_hpg_core/image_tests_xe_hpg_core.cpp @@ -48,13 +48,7 @@ XE_HPG_CORETEST_F(ImageCompressionTests, givenDifferentImageFormatsWhenCreatingI ASSERT_NE(nullptr, image); EXPECT_TRUE(myMemoryManager->mockMethodCalled); - - auto isImageSuitableForCompression = context.getDevice(0)->getProductHelper().isImageSuitableForCompression(); - if (isImageSuitableForCompression) { - EXPECT_EQ(format.isCompressable, myMemoryManager->capturedPreferCompressed); - } else { - EXPECT_FALSE(myMemoryManager->capturedPreferCompressed); - } + EXPECT_EQ(format.isCompressable, myMemoryManager->capturedPreferCompressed); } } @@ -70,13 +64,7 @@ XE_HPG_CORETEST_F(ImageCompressionTests, givenRedescribableFormatWhenCreatingAll mockContext.get(), ClMemoryPropertiesHelper::createMemoryProperties(flags, 0, 0, &context.getDevice(0)->getDevice()), flags, 0, surfaceFormat, &imageDesc, nullptr, retVal)); ASSERT_NE(nullptr, image); - - auto isImageSuitableForCompression = context.getDevice(0)->getProductHelper().isImageSuitableForCompression(); - if (isImageSuitableForCompression) { - EXPECT_EQ(defaultHwInfo->capabilityTable.supportsImages, myMemoryManager->capturedPreferCompressed); - } else { - EXPECT_FALSE(myMemoryManager->capturedPreferCompressed); - } + EXPECT_EQ(defaultHwInfo->capabilityTable.supportsImages, myMemoryManager->capturedPreferCompressed); imageFormat.image_channel_order = CL_RG; surfaceFormat = Image::getSurfaceFormatFromTable( @@ -85,10 +73,5 @@ XE_HPG_CORETEST_F(ImageCompressionTests, givenRedescribableFormatWhenCreatingAll mockContext.get(), ClMemoryPropertiesHelper::createMemoryProperties(flags, 0, 0, &context.getDevice(0)->getDevice()), flags, 0, surfaceFormat, &imageDesc, nullptr, retVal)); ASSERT_NE(nullptr, image); - - if (isImageSuitableForCompression) { - EXPECT_TRUE(myMemoryManager->capturedPreferCompressed); - } else { - EXPECT_FALSE(myMemoryManager->capturedPreferCompressed); - } -} + EXPECT_TRUE(myMemoryManager->capturedPreferCompressed); +} \ No newline at end of file diff --git a/shared/source/debug_settings/debug_variables_base.inl b/shared/source/debug_settings/debug_variables_base.inl index 6f95384f02..3e7566d55d 100644 --- a/shared/source/debug_settings/debug_variables_base.inl +++ b/shared/source/debug_settings/debug_variables_base.inl @@ -184,7 +184,6 @@ DECLARE_DEBUG_VARIABLE(int32_t, EnableMultiTileCompression, -1, "-1: default, 0: DECLARE_DEBUG_VARIABLE(int32_t, OverrideGmmResourceUsageField, -1, "-1: default, >=0: gmm.resourceParams.Usage is set to this value") DECLARE_DEBUG_VARIABLE(int32_t, OverrideGmmCacheableField, -1, "-1: default, >=0: gmm Flags.Info.Cacheable is set to this value") DECLARE_DEBUG_VARIABLE(int32_t, OverrideBufferSuitableForRenderCompression, -1, "-1: default, 0: Disable, 1: Enable") -DECLARE_DEBUG_VARIABLE(int32_t, OverrideImageSuitableForRenderCompression, -1, "-1: default, 0: Disable, 1: Enable") DECLARE_DEBUG_VARIABLE(int32_t, OverrideL1CacheControlInSurfaceState, -1, "-1: feature inactive, >=0 : following L1 cache control value will be programmed in render surface state (for regular buffers)") DECLARE_DEBUG_VARIABLE(int32_t, OverrideL1CacheControlInSurfaceStateForScratchSpace, -1, "-1: feature inactive, >=0 : following L1 cache control value will be programmed in render surface state for scratch space") DECLARE_DEBUG_VARIABLE(int32_t, OverridePreferredSlmAllocationSizePerDss, -1, "-1: default, >=0: program value for preferred SLM allocation size per dss") diff --git a/shared/source/os_interface/product_helper.h b/shared/source/os_interface/product_helper.h index bdf7b54ce0..1235809a9f 100644 --- a/shared/source/os_interface/product_helper.h +++ b/shared/source/os_interface/product_helper.h @@ -260,7 +260,6 @@ class ProductHelper { virtual uint64_t getPatIndex(CacheRegion cacheRegion, CachePolicy cachePolicy) const = 0; virtual bool isSharingWith3dOrMediaAllowed() const = 0; virtual bool isL3FlushAfterPostSyncRequired(bool heaplessEnabled) const = 0; - virtual bool isImageSuitableForCompression() const = 0; virtual void overrideDirectSubmissionTimeouts(std::chrono::microseconds &timeout, std::chrono::microseconds &maxTimeout) const = 0; virtual ~ProductHelper() = default; diff --git a/shared/source/os_interface/product_helper.inl b/shared/source/os_interface/product_helper.inl index d2014367ba..9f640e154c 100644 --- a/shared/source/os_interface/product_helper.inl +++ b/shared/source/os_interface/product_helper.inl @@ -1010,14 +1010,6 @@ bool ProductHelperHw::isL3FlushAfterPostSyncRequired(bool heaplessEn return false; } -template -bool ProductHelperHw::isImageSuitableForCompression() const { - if (debugManager.flags.OverrideImageSuitableForRenderCompression.get() != -1) { - return !!debugManager.flags.OverrideImageSuitableForRenderCompression.get(); - } - return true; -} - template void ProductHelperHw::overrideDirectSubmissionTimeouts(std::chrono::microseconds &timeout, std::chrono::microseconds &maxTimeout) const { } diff --git a/shared/source/os_interface/product_helper_hw.h b/shared/source/os_interface/product_helper_hw.h index 62d2697de3..149272c89b 100644 --- a/shared/source/os_interface/product_helper_hw.h +++ b/shared/source/os_interface/product_helper_hw.h @@ -200,7 +200,6 @@ class ProductHelperHw : public ProductHelper { uint64_t getPatIndex(CacheRegion cacheRegion, CachePolicy cachePolicy) const override; bool isSharingWith3dOrMediaAllowed() const override; bool isL3FlushAfterPostSyncRequired(bool heaplessEnabled) const override; - bool isImageSuitableForCompression() const override; void overrideDirectSubmissionTimeouts(std::chrono::microseconds &timeout, std::chrono::microseconds &maxTimeout) const override; ~ProductHelperHw() override = default; diff --git a/shared/source/xe_hpg_core/xe_lpg/linux/product_helper_xe_lpg_linux.inl b/shared/source/xe_hpg_core/xe_lpg/linux/product_helper_xe_lpg_linux.inl index e6657f4861..7e6b378bc4 100644 --- a/shared/source/xe_hpg_core/xe_lpg/linux/product_helper_xe_lpg_linux.inl +++ b/shared/source/xe_hpg_core/xe_lpg/linux/product_helper_xe_lpg_linux.inl @@ -5,7 +5,6 @@ * */ -#include "shared/source/debug_settings/debug_settings_manager.h" #include "shared/source/helpers/hw_info.h" #include "shared/source/memory_manager/allocation_type.h" #include "shared/source/os_interface/linux/product_helper_mtl_and_later.inl" @@ -14,8 +13,6 @@ namespace NEO { template <> int ProductHelperHw::configureHardwareCustom(HardwareInfo *hwInfo, OSInterface *osIface) const { - enableCompression(hwInfo); - enableBlitterOperationsSupport(hwInfo); auto &kmdNotifyProperties = hwInfo->capabilityTable.kmdNotifyProperties; @@ -52,12 +49,4 @@ bool ProductHelperHw::useGemCreateExtInAllocateMemoryByKMD() const { return true; } -template <> -bool ProductHelperHw::isImageSuitableForCompression() const { - if (debugManager.flags.OverrideImageSuitableForRenderCompression.get() != -1) { - return !!debugManager.flags.OverrideImageSuitableForRenderCompression.get(); - } - return false; -} - } // namespace NEO diff --git a/shared/test/common/test_files/igdrcl.config b/shared/test/common/test_files/igdrcl.config index b63fdbb258..ef843d93b3 100644 --- a/shared/test/common/test_files/igdrcl.config +++ b/shared/test/common/test_files/igdrcl.config @@ -389,7 +389,6 @@ ProgramWalkerPartitionSelfCleanup = -1 WparidRegisterProgramming = -1 UsePipeControlAfterPartitionedWalker = -1 OverrideBufferSuitableForRenderCompression = -1 -OverrideImageSuitableForRenderCompression = -1 AllowPatchingVfeStateInCommandLists = 0 PrintMemoryRegionSizes = 0 OverrideDrmRegion = -1 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 6b78f70f63..efd59bfd72 100644 --- a/shared/test/unit_test/os_interface/product_helper_tests.cpp +++ b/shared/test/unit_test/os_interface/product_helper_tests.cpp @@ -1143,17 +1143,3 @@ HWTEST2_F(ProductHelperTest, WhenCheckAssignEngineRoundRobinSupportedThenReturnF auto hwInfo = *defaultHwInfo; EXPECT_EQ(0u, productHelper->getMaxLocalSubRegionSize(hwInfo)); } - -HWTEST2_F(ProductHelperTest, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnTrue, IsNotXeHpgCore) { - EXPECT_TRUE(productHelper->isImageSuitableForCompression()); -} - -HWTEST_F(ProductHelperTest, givenDebugFlagWhenCheckingIfImageIsSuitableForCompressionThenReturnCorrectValue) { - DebugManagerStateRestore restore; - - debugManager.flags.OverrideImageSuitableForRenderCompression.set(0); - EXPECT_FALSE(productHelper->isImageSuitableForCompression()); - - debugManager.flags.OverrideImageSuitableForRenderCompression.set(1); - EXPECT_TRUE(productHelper->isImageSuitableForCompression()); -} diff --git a/shared/test/unit_test/xe_hpg_core/arl/linux/product_helper_tests_arl.cpp b/shared/test/unit_test/xe_hpg_core/arl/linux/product_helper_tests_arl.cpp index 03a7c4f9a9..9c18e63c6e 100644 --- a/shared/test/unit_test/xe_hpg_core/arl/linux/product_helper_tests_arl.cpp +++ b/shared/test/unit_test/xe_hpg_core/arl/linux/product_helper_tests_arl.cpp @@ -100,6 +100,12 @@ ARLTEST_F(ArlProductHelperLinux, givenBooleanUncachedWhenCallOverridePatIndexThe EXPECT_EQ(3u, productHelper->overridePatIndex(isUncached, patIndex, AllocationType::commandBuffer)); } -ARLTEST_F(ArlProductHelperLinux, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnFalse) { - EXPECT_FALSE(productHelper->isImageSuitableForCompression()); +ARLTEST_F(ArlProductHelperLinux, givenProductHelperWhenCallConfigureHardwareCustomThenCompressionIsDisabled) { + auto hwInfo = *defaultHwInfo; + hwInfo.featureTable.flags.ftrE2ECompression = true; + + productHelper->configureHardwareCustom(&hwInfo, nullptr); + + EXPECT_FALSE(hwInfo.capabilityTable.ftrRenderCompressedBuffers); + EXPECT_FALSE(hwInfo.capabilityTable.ftrRenderCompressedImages); } diff --git a/shared/test/unit_test/xe_hpg_core/arl/windows/CMakeLists.txt b/shared/test/unit_test/xe_hpg_core/arl/windows/CMakeLists.txt deleted file mode 100644 index 93c5f5454f..0000000000 --- a/shared/test/unit_test/xe_hpg_core/arl/windows/CMakeLists.txt +++ /dev/null @@ -1,9 +0,0 @@ -# -# Copyright (C) 2025 Intel Corporation -# -# SPDX-License-Identifier: MIT -# - -if(WIN32) - target_sources(neo_shared_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/product_helper_tests_arl_windows.cpp) -endif() diff --git a/shared/test/unit_test/xe_hpg_core/arl/windows/product_helper_tests_arl_windows.cpp b/shared/test/unit_test/xe_hpg_core/arl/windows/product_helper_tests_arl_windows.cpp deleted file mode 100644 index 49bcd85249..0000000000 --- a/shared/test/unit_test/xe_hpg_core/arl/windows/product_helper_tests_arl_windows.cpp +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright (C) 2025 Intel Corporation - * - * SPDX-License-Identifier: MIT - * - */ - -#include "shared/source/xe_hpg_core/hw_info_xe_hpg_core.h" -#include "shared/test/common/test_macros/header/per_product_test_definitions.h" -#include "shared/test/unit_test/os_interface/windows/product_helper_win_tests.h" - -using namespace NEO; - -using ArlProductHelperWindows = ProductHelperTestWindows; - -ARLTEST_F(ArlProductHelperWindows, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnTrue) { - EXPECT_TRUE(productHelper->isImageSuitableForCompression()); -} diff --git a/shared/test/unit_test/xe_hpg_core/dg2/product_config_helper_tests_dg2.cpp b/shared/test/unit_test/xe_hpg_core/dg2/product_config_helper_tests_dg2.cpp index 6fa54a0441..9332c8ff16 100644 --- a/shared/test/unit_test/xe_hpg_core/dg2/product_config_helper_tests_dg2.cpp +++ b/shared/test/unit_test/xe_hpg_core/dg2/product_config_helper_tests_dg2.cpp @@ -845,7 +845,3 @@ DG2TEST_F(ProductHelperTestDg2, givenProductHelperWhenGettingEvictIfNecessaryFla DG2TEST_F(ProductHelperTestDg2, givenProductHelperWhenGettingUseLocalPreferredForCacheableBuffersThenExpectTrue) { EXPECT_TRUE(productHelper->useLocalPreferredForCacheableBuffers()); } - -DG2TEST_F(ProductHelperTestDg2, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnTrue) { - EXPECT_TRUE(productHelper->isImageSuitableForCompression()); -} diff --git a/shared/test/unit_test/xe_hpg_core/mtl/linux/product_helper_tests_mtl_linux.cpp b/shared/test/unit_test/xe_hpg_core/mtl/linux/product_helper_tests_mtl_linux.cpp index 263386de04..94356018c5 100644 --- a/shared/test/unit_test/xe_hpg_core/mtl/linux/product_helper_tests_mtl_linux.cpp +++ b/shared/test/unit_test/xe_hpg_core/mtl/linux/product_helper_tests_mtl_linux.cpp @@ -74,6 +74,12 @@ MTLTEST_F(MtlProductHelperLinux, givenBooleanUncachedWhenCallOverridePatIndexThe EXPECT_EQ(3u, productHelper->overridePatIndex(isUncached, patIndex, AllocationType::commandBuffer)); } -MTLTEST_F(MtlProductHelperLinux, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnFalse) { - EXPECT_FALSE(productHelper->isImageSuitableForCompression()); +MTLTEST_F(MtlProductHelperLinux, givenProductHelperWhenCallConfigureHardwareCustomThenCompressionIsDisabled) { + auto hwInfo = *defaultHwInfo; + hwInfo.featureTable.flags.ftrE2ECompression = true; + + productHelper->configureHardwareCustom(&hwInfo, nullptr); + + EXPECT_FALSE(hwInfo.capabilityTable.ftrRenderCompressedBuffers); + EXPECT_FALSE(hwInfo.capabilityTable.ftrRenderCompressedImages); } diff --git a/shared/test/unit_test/xe_hpg_core/mtl/windows/product_helper_tests_mtl_windows.cpp b/shared/test/unit_test/xe_hpg_core/mtl/windows/product_helper_tests_mtl_windows.cpp index 6f638b78bb..ea9f72c056 100644 --- a/shared/test/unit_test/xe_hpg_core/mtl/windows/product_helper_tests_mtl_windows.cpp +++ b/shared/test/unit_test/xe_hpg_core/mtl/windows/product_helper_tests_mtl_windows.cpp @@ -24,7 +24,3 @@ MTLTEST_F(MtlProductHelperWindows, whenCheckingIsTimestampWaitSupportedForEvents MTLTEST_F(MtlProductHelperWindows, givenProductHelperWhenIsStagingBuffersEnabledThenTrueIsReturned) { EXPECT_TRUE(productHelper->isStagingBuffersEnabled()); } - -MTLTEST_F(MtlProductHelperWindows, givenProductHelperWhenAskedIsImageSuitableForCompressionThenReturnTrue) { - EXPECT_TRUE(productHelper->isImageSuitableForCompression()); -}