performance: enable compression on PTL

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
This commit is contained in:
Szymon Morek
2025-04-11 12:46:47 +00:00
committed by Compute-Runtime-Automation
parent e37decb8ef
commit 5b20450162
4 changed files with 32 additions and 11 deletions

View File

@@ -6,6 +6,7 @@
*/
#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/mocks/mock_execution_environment.h"
#include "shared/test/common/test_macros/header/per_product_test_definitions.h"
@@ -133,8 +134,8 @@ class SystemMemFenceWithBlitterXe3Core : public MulticontextOclAubFixture,
if (!productHelper.obtainBlitterPreference(*defaultHwInfo.get())) {
GTEST_SKIP();
}
MulticontextOclAubFixture::setUp(1, EnabledCommandStreamers::single, true);
auto releaseHelper = mockExecutionEnvironment.rootDeviceEnvironments[0]->getReleaseHelper();
MulticontextOclAubFixture::setUp(1, EnabledCommandStreamers::single, releaseHelper->getFtrXe2Compression());
}
void TearDown() override {
MulticontextOclAubFixture::tearDown();

View File

@@ -82,4 +82,13 @@ void MemorySynchronizationCommands<Family>::encodeAdditionalTimestampOffsets(Lin
EncodeStoreMMIO<Family>::encode(commandStream, RegisterOffsets::globalTimestampUn, globalAddress + sizeof(uint32_t), false, nullptr, isBcs);
}
template <>
bool GfxCoreHelperHw<Family>::usmCompressionSupported(const NEO::HardwareInfo &hwInfo) const {
if (NEO::debugManager.flags.RenderCompressedBuffersEnabled.get() != -1) {
return !!NEO::debugManager.flags.RenderCompressedBuffersEnabled.get();
}
return hwInfo.capabilityTable.ftrRenderCompressedBuffers;
}
} // namespace NEO

View File

@@ -263,15 +263,6 @@ uint32_t GfxCoreHelperHw<Family>::adjustMaxWorkGroupSize(const uint32_t grfCount
return (threadsPerThreadGroup * simd);
}
template <>
bool GfxCoreHelperHw<Family>::usmCompressionSupported(const NEO::HardwareInfo &hwInfo) const {
if (NEO::debugManager.flags.RenderCompressedBuffersEnabled.get() != -1) {
return !!NEO::debugManager.flags.RenderCompressedBuffersEnabled.get();
}
return hwInfo.capabilityTable.ftrRenderCompressedBuffers;
}
template <>
uint32_t GfxCoreHelperHw<Family>::getMetricsLibraryGenId() const {
return static_cast<uint32_t>(MetricsLibraryApi::ClientGen::Xe2HPG);

View File

@@ -846,6 +846,26 @@ XE3_CORETEST_F(GfxCoreHelperTestsXe3Core, givenGfxCoreHelperWhenFlagSetAndCallGe
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 1u);
}
XE3_CORETEST_F(GfxCoreHelperTestsXe3Core, givenGfxCoreHelperWhenUsmCompressionSupportedCalledThenReturnTrue) {
VariableBackup<HardwareInfo> backupHwInfo(defaultHwInfo.get());
DebugManagerStateRestore restorer;
MockExecutionEnvironment mockExecutionEnvironment{};
auto &gfxCoreHelper = mockExecutionEnvironment.rootDeviceEnvironments[0]->getHelper<GfxCoreHelper>();
defaultHwInfo->capabilityTable.ftrRenderCompressedBuffers = false;
EXPECT_FALSE(gfxCoreHelper.usmCompressionSupported(*defaultHwInfo));
defaultHwInfo->capabilityTable.ftrRenderCompressedBuffers = true;
EXPECT_TRUE(gfxCoreHelper.usmCompressionSupported(*defaultHwInfo));
debugManager.flags.RenderCompressedBuffersEnabled.set(0);
EXPECT_FALSE(gfxCoreHelper.usmCompressionSupported(*defaultHwInfo));
debugManager.flags.RenderCompressedBuffersEnabled.set(1);
defaultHwInfo->capabilityTable.ftrRenderCompressedBuffers = false;
EXPECT_TRUE(gfxCoreHelper.usmCompressionSupported(*defaultHwInfo));
}
using ProductHelperTestXe3 = ::testing::Test;
XE3_CORETEST_F(ProductHelperTestXe3, when64bAddressingIsEnabledForRTThenResourcesAreNot48b) {