performance: Fill reusable allocation list on xe and later
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
parent
a3e60acc8f
commit
15934ceb43
|
@ -681,14 +681,6 @@ bool GfxCoreHelperHw<GfxFamily>::copyThroughLockedPtrEnabled(const HardwareInfo
|
|||
return false;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
uint32_t GfxCoreHelperHw<GfxFamily>::getAmountOfAllocationsToFill() const {
|
||||
if (debugManager.flags.SetAmountOfReusableAllocations.get() != -1) {
|
||||
return debugManager.flags.SetAmountOfReusableAllocations.get();
|
||||
}
|
||||
return 0u;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
bool GfxCoreHelperHw<GfxFamily>::isChipsetUniqueUUIDSupported() const {
|
||||
return false;
|
||||
|
|
|
@ -43,6 +43,14 @@ bool GfxCoreHelperHw<GfxFamily>::timestampPacketWriteSupported() const {
|
|||
return false;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
uint32_t GfxCoreHelperHw<GfxFamily>::getAmountOfAllocationsToFill() const {
|
||||
if (debugManager.flags.SetAmountOfReusableAllocations.get() != -1) {
|
||||
return debugManager.flags.SetAmountOfReusableAllocations.get();
|
||||
}
|
||||
return 0u;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
bool GfxCoreHelperHw<GfxFamily>::isTimestampWaitSupportedForQueues() const {
|
||||
return false;
|
||||
|
|
|
@ -58,6 +58,14 @@ bool GfxCoreHelperHw<GfxFamily>::isTimestampWaitSupportedForQueues() const {
|
|||
return true;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
uint32_t GfxCoreHelperHw<GfxFamily>::getAmountOfAllocationsToFill() const {
|
||||
if (debugManager.flags.SetAmountOfReusableAllocations.get() != -1) {
|
||||
return debugManager.flags.SetAmountOfReusableAllocations.get();
|
||||
}
|
||||
return 1u;
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
bool GfxCoreHelperHw<GfxFamily>::makeResidentBeforeLockNeeded(bool precondition) const {
|
||||
return true;
|
||||
|
|
|
@ -399,14 +399,6 @@ bool GfxCoreHelperHw<Family>::copyThroughLockedPtrEnabled(const HardwareInfo &hw
|
|||
return true;
|
||||
}
|
||||
|
||||
template <>
|
||||
uint32_t GfxCoreHelperHw<Family>::getAmountOfAllocationsToFill() const {
|
||||
if (debugManager.flags.SetAmountOfReusableAllocations.get() != -1) {
|
||||
return debugManager.flags.SetAmountOfReusableAllocations.get();
|
||||
}
|
||||
return 1u;
|
||||
}
|
||||
|
||||
template <>
|
||||
bool GfxCoreHelperHw<Family>::isRelaxedOrderingSupported() const {
|
||||
return true;
|
||||
|
|
|
@ -1347,11 +1347,6 @@ HWTEST2_F(GfxCoreHelperTest, givenGfxCoreHelperWhenCallCopyThroughLockedPtrEnabl
|
|||
EXPECT_FALSE(gfxCoreHelper.copyThroughLockedPtrEnabled(*defaultHwInfo, productHelper));
|
||||
}
|
||||
|
||||
HWTEST2_F(GfxCoreHelperTest, givenGfxCoreHelperWhenCallGetAmountOfAllocationsToFillThenReturnFalse, IsNotXeHpcCore) {
|
||||
const auto &gfxCoreHelper = getHelper<GfxCoreHelper>();
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 0u);
|
||||
}
|
||||
|
||||
HWTEST_F(GfxCoreHelperTest, givenGfxCoreHelperWhenFlagSetAndCallCopyThroughLockedPtrEnabledThenReturnCorrectValue) {
|
||||
DebugManagerStateRestore restorer;
|
||||
const auto &gfxCoreHelper = getHelper<GfxCoreHelper>();
|
||||
|
@ -1363,9 +1358,11 @@ HWTEST_F(GfxCoreHelperTest, givenGfxCoreHelperWhenFlagSetAndCallCopyThroughLocke
|
|||
EXPECT_TRUE(gfxCoreHelper.copyThroughLockedPtrEnabled(*defaultHwInfo, productHelper));
|
||||
}
|
||||
|
||||
HWTEST_F(GfxCoreHelperTest, givenGfxCoreHelperWhenFlagSetAndCallGetAmountOfAllocationsToFillThenReturnCorrectValue) {
|
||||
HWTEST2_F(GfxCoreHelperTest, givenGfxCoreHelperWhenFlagSetAndCallGetAmountOfAllocationsToFillThenReturnCorrectValue, IsBeforeXeHpCore) {
|
||||
DebugManagerStateRestore restorer;
|
||||
const auto &gfxCoreHelper = getHelper<GfxCoreHelper>();
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 0u);
|
||||
|
||||
debugManager.flags.SetAmountOfReusableAllocations.set(0);
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 0u);
|
||||
|
||||
|
|
|
@ -232,6 +232,19 @@ HWTEST2_F(GfxCoreHelperDg2AndLaterTest, givenGfxCoreHelperWhenCheckMakeResidentB
|
|||
EXPECT_TRUE(gfxCoreHelper.makeResidentBeforeLockNeeded(false));
|
||||
}
|
||||
|
||||
HWTEST2_F(GfxCoreHelperDg2AndLaterTest, givenGfxCoreHelperWhenFlagSetAndCallGetAmountOfAllocationsToFillThenReturnCorrectValue, IsAtLeastXeHpgCore) {
|
||||
DebugManagerStateRestore restorer;
|
||||
MockExecutionEnvironment mockExecutionEnvironment{};
|
||||
auto &gfxCoreHelper = mockExecutionEnvironment.rootDeviceEnvironments[0]->getHelper<GfxCoreHelper>();
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 1u);
|
||||
|
||||
debugManager.flags.SetAmountOfReusableAllocations.set(0);
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 0u);
|
||||
|
||||
debugManager.flags.SetAmountOfReusableAllocations.set(1);
|
||||
EXPECT_EQ(gfxCoreHelper.getAmountOfAllocationsToFill(), 1u);
|
||||
}
|
||||
|
||||
using ProductHelperTestDg2AndLater = ::testing::Test;
|
||||
|
||||
HWTEST2_F(ProductHelperTestDg2AndLater, givenDg2AndLaterPlatformWhenAskedIfHeapInLocalMemThenTrueIsReturned, IsAtLeastXeHpgCore) {
|
||||
|
|
Loading…
Reference in New Issue