feature(internal): add debug key to override max debug surface size
reduce the value in unit tests Related-To: NEO-14097 Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
parent
6cfb307bd0
commit
8353f68307
|
@ -88,6 +88,9 @@ size_t SipKernel::getStateSaveAreaSize(Device *device) const {
|
|||
auto &hwInfo = device->getHardwareInfo();
|
||||
auto &gfxCoreHelper = device->getGfxCoreHelper();
|
||||
auto maxDbgSurfaceSize = gfxCoreHelper.getSipKernelMaxDbgSurfaceSize(hwInfo);
|
||||
if (debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.get() != -1) {
|
||||
maxDbgSurfaceSize = static_cast<size_t>(debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.get());
|
||||
}
|
||||
const auto &stateSaveAreaHeader = getStateSaveAreaHeader();
|
||||
if (stateSaveAreaHeader.empty()) {
|
||||
return maxDbgSurfaceSize;
|
||||
|
|
|
@ -155,6 +155,7 @@ DECLARE_DEBUG_VARIABLE(int32_t, DebuggerForceSbaTrackingMode, -1, "-1: default,
|
|||
DECLARE_DEBUG_VARIABLE(bool, DisableSupportForL0Debugger, 0, "0: default setting for product, 1: disable l0 debugger")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, DebugApiUsed, 0, "0: default L0 Debug API not used, 1: L0 Debug API used")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, OverrideCsrAllocationSize, -1, "-1: default, >0: use value for size of CSR allocation")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, OverrideSipKernelMaxDbgSurfaceSize, -1, "-1: default, >0: use value as max debug surface size for sip kernel")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, ComputeOverdispatchDisable, -1, "Set Compute Overdispatch Disable field, -1: do not set.")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, CFEWeightedDispatchModeDisable, -1, "Set Weighted Dispatch Mode Disable field in CFE_STATE on XEHP, -1: do not set.")
|
||||
DECLARE_DEBUG_VARIABLE(int32_t, CFESingleSliceDispatchCCSMode, -1, "Set Single Slice Dispatch CCS Mode in CFE_STATE on XEHP, -1 - do not set")
|
||||
|
|
|
@ -449,6 +449,7 @@ int main(int argc, char **argv) {
|
|||
MockSipData::useMockSip = true;
|
||||
}
|
||||
sipInitialized = true;
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(1);
|
||||
}
|
||||
|
||||
Device::createPerformanceCountersFunc = [](Device *) -> std::unique_ptr<NEO::PerformanceCounters> { return {}; };
|
||||
|
|
|
@ -47,6 +47,7 @@ DumpSipHeaderFile = unk
|
|||
InjectInternalBuildOptions = unk
|
||||
InjectApiBuildOptions = unk
|
||||
OverrideCsrAllocationSize = -1
|
||||
OverrideSipKernelMaxDbgSurfaceSize = -1
|
||||
AbortHostSyncOnNonHostVisibleEvent = 0
|
||||
IgnoreProductSpecificIoctlHelper = 0
|
||||
ForceL1Caching = -1
|
||||
|
|
|
@ -427,6 +427,8 @@ TEST_F(HexadecimalHeaderSipTest, whenInitHexadecimalArraySipKernelIsCalledTwiceT
|
|||
using StateSaveAreaSipTest = Test<RawBinarySipFixture>;
|
||||
|
||||
TEST_F(StateSaveAreaSipTest, givenEmptyStateSaveAreaHeaderWhenGetStateSaveAreaSizeCalledThenMaxDbgSurfaceSizeIsReturned) {
|
||||
DebugManagerStateRestore restore;
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(-1);
|
||||
|
||||
MockSipData::useMockSip = true;
|
||||
MockSipData::mockSipKernel->mockStateSaveAreaHeader.clear();
|
||||
|
@ -436,6 +438,8 @@ TEST_F(StateSaveAreaSipTest, givenEmptyStateSaveAreaHeaderWhenGetStateSaveAreaSi
|
|||
}
|
||||
|
||||
TEST_F(StateSaveAreaSipTest, givenCorruptedStateSaveAreaHeaderWhenGetStateSaveAreaSizeCalledThenMaxDbgSurfaceSizeIsReturned) {
|
||||
DebugManagerStateRestore restore;
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(-1);
|
||||
MockSipData::useMockSip = true;
|
||||
MockSipData::mockSipKernel->mockStateSaveAreaHeader = {'g', 'a', 'r', 'b', 'a', 'g', 'e'};
|
||||
auto hwInfo = *NEO::defaultHwInfo.get();
|
||||
|
@ -443,6 +447,21 @@ TEST_F(StateSaveAreaSipTest, givenCorruptedStateSaveAreaHeaderWhenGetStateSaveAr
|
|||
EXPECT_EQ(gfxCoreHelper.getSipKernelMaxDbgSurfaceSize(hwInfo), SipKernel::getSipKernel(*pDevice, nullptr).getStateSaveAreaSize(pDevice));
|
||||
}
|
||||
|
||||
TEST_F(StateSaveAreaSipTest, givenOverrideSipKernelMaxDebugSurfaceSizeFlagSetWhenGettingStateSaveAreaSizeForInvalidInputThenValueOfDebugFlagIsReturned) {
|
||||
DebugManagerStateRestore restore;
|
||||
auto expectedValue = MemoryConstants::pageSize2M;
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(static_cast<int32_t>(expectedValue));
|
||||
MockSipData::useMockSip = true;
|
||||
MockSipData::mockSipKernel->mockStateSaveAreaHeader = {'g', 'a', 'r', 'b', 'a', 'g', 'e'};
|
||||
auto hwInfo = *NEO::defaultHwInfo.get();
|
||||
auto &gfxCoreHelper = this->pDevice->getGfxCoreHelper();
|
||||
EXPECT_NE(gfxCoreHelper.getSipKernelMaxDbgSurfaceSize(hwInfo), expectedValue);
|
||||
EXPECT_EQ(expectedValue, SipKernel::getSipKernel(*pDevice, nullptr).getStateSaveAreaSize(pDevice));
|
||||
|
||||
MockSipData::mockSipKernel->mockStateSaveAreaHeader.clear();
|
||||
EXPECT_EQ(expectedValue, SipKernel::getSipKernel(*pDevice, nullptr).getStateSaveAreaSize(pDevice));
|
||||
}
|
||||
|
||||
TEST_F(StateSaveAreaSipTest, givenCorrectStateSaveAreaHeaderWhenGetStateSaveAreaSizeCalledThenCorrectDbgSurfaceSizeIsReturned) {
|
||||
MockSipData::useMockSip = true;
|
||||
auto hwInfo = pDevice->getHardwareInfo();
|
||||
|
|
|
@ -734,6 +734,9 @@ HWTEST_F(AubFileStreamTests, givenAubCommandStreamReceiverWhenInitializeEngineIs
|
|||
}
|
||||
|
||||
HWTEST_F(AubFileStreamTests, givenAubCommandStreamReceiverWithAubManagerWhenInitFileIsCalledThenMemTraceCommentWithDriverVersionIsPutIntoAubStream) {
|
||||
DebugManagerStateRestore stateRestore;
|
||||
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(-1);
|
||||
auto mockAubManager = std::make_unique<MockAubManager>();
|
||||
|
||||
MockExecutionEnvironment executionEnvironment(defaultHwInfo.get());
|
||||
|
@ -1001,6 +1004,7 @@ HWTEST_F(AubFileStreamTests, givenAndAubCommandStreamReceiverWhenCreateFullFileP
|
|||
HWTEST_F(AubFileStreamTests, givenAubCommandStreamReceiverWithAubManagerWhenInitFileIsCalledThenCommentWithNonDefaultFlagsAreAdded) {
|
||||
DebugManagerStateRestore stateRestore;
|
||||
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(-1);
|
||||
debugManager.flags.MakeAllBuffersResident.set(1);
|
||||
debugManager.flags.ZE_AFFINITY_MASK.set("non-default");
|
||||
|
||||
|
|
|
@ -362,6 +362,9 @@ TEST(ExecutionEnvironment, givenExperimentalUSMAllocationReuseCleanerSetAndNotEn
|
|||
}
|
||||
|
||||
TEST(ExecutionEnvironment, givenNeoCalEnabledWhenCreateExecutionEnvironmentThenSetDebugVariables) {
|
||||
DebugManagerStateRestore restorer;
|
||||
debugManager.flags.OverrideSipKernelMaxDbgSurfaceSize.set(-1);
|
||||
|
||||
const std::unordered_map<std::string, int32_t> config = {
|
||||
{"UseKmdMigration", 0},
|
||||
{"SplitBcsSize", 256}};
|
||||
|
@ -377,7 +380,6 @@ TEST(ExecutionEnvironment, givenNeoCalEnabledWhenCreateExecutionEnvironmentThenS
|
|||
#undef DECLARE_DEBUG_SCOPED_V
|
||||
#undef DECLARE_DEBUG_VARIABLE
|
||||
|
||||
DebugManagerStateRestore restorer;
|
||||
debugManager.flags.NEO_CAL_ENABLED.set(1);
|
||||
ExecutionEnvironment exeEnv;
|
||||
|
||||
|
|
Loading…
Reference in New Issue