mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-08 14:02:58 +08:00
fix: Do not defer MOCS to PAT on xe lpg
Related-To: NEO-10556, NEO-11553 Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
4f8ec54e1d
commit
a1bd375237
@@ -230,6 +230,7 @@ class ProductHelper {
|
||||
virtual std::optional<GfxMemoryAllocationMethod> getPreferredAllocationMethod(AllocationType allocationType) const = 0;
|
||||
virtual bool isCachingOnCpuAvailable() const = 0;
|
||||
virtual bool isNewCoherencyModelSupported() const = 0;
|
||||
virtual bool deferMOCSToPatIndex() const = 0;
|
||||
virtual const std::vector<uint32_t> getSupportedLocalDispatchSizes(const HardwareInfo &hwInfo) const = 0;
|
||||
virtual bool supportReadOnlyAllocations() const = 0;
|
||||
virtual bool isDeviceToHostCopySignalingFenceRequired() const = 0;
|
||||
|
||||
@@ -45,6 +45,11 @@ bool ProductHelperHw<gfxProduct>::isNewResidencyModelSupported() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
bool ProductHelperHw<gfxProduct>::deferMOCSToPatIndex() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
bool ProductHelperHw<gfxProduct>::heapInLocalMem(const HardwareInfo &hwInfo) const {
|
||||
return false;
|
||||
|
||||
@@ -175,6 +175,7 @@ class ProductHelperHw : public ProductHelper {
|
||||
std::optional<GfxMemoryAllocationMethod> getPreferredAllocationMethod(AllocationType allocationType) const override;
|
||||
bool isCachingOnCpuAvailable() const override;
|
||||
bool isNewCoherencyModelSupported() const override;
|
||||
bool deferMOCSToPatIndex() const override;
|
||||
bool supportReadOnlyAllocations() const override;
|
||||
const std::vector<uint32_t> getSupportedLocalDispatchSizes(const HardwareInfo &hwInfo) const override;
|
||||
bool isDeviceToHostCopySignalingFenceRequired() const override;
|
||||
|
||||
@@ -59,6 +59,11 @@ bool ProductHelperHw<gfxProduct>::isNewResidencyModelSupported() const {
|
||||
return true;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
bool ProductHelperHw<gfxProduct>::deferMOCSToPatIndex() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
void ProductHelperHw<gfxProduct>::setCapabilityCoherencyFlag(const HardwareInfo &hwInfo, bool &coherencyFlag) {
|
||||
coherencyFlag = false;
|
||||
|
||||
@@ -11,6 +11,6 @@
|
||||
|
||||
namespace NEO {
|
||||
bool GmmHelper::deferMOCSToPatIndex() const {
|
||||
return this->rootDeviceEnvironment.getProductHelper().isNewCoherencyModelSupported();
|
||||
return this->rootDeviceEnvironment.getProductHelper().deferMOCSToPatIndex();
|
||||
}
|
||||
} // namespace NEO
|
||||
@@ -197,6 +197,11 @@ bool ProductHelperHw<IGFX_UNKNOWN>::isNewResidencyModelSupported() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
template <>
|
||||
bool ProductHelperHw<IGFX_UNKNOWN>::deferMOCSToPatIndex() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
template <>
|
||||
std::pair<bool, bool> ProductHelperHw<IGFX_UNKNOWN>::isPipeControlPriorToNonPipelinedStateCommandsWARequired(const HardwareInfo &hwInfo, bool isRcs, const ReleaseHelper *releaseHelper) const {
|
||||
return {false, false};
|
||||
|
||||
@@ -359,6 +359,11 @@ HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallIsNewCoherencyModel
|
||||
EXPECT_TRUE(productHelper->isNewCoherencyModelSupported());
|
||||
}
|
||||
|
||||
HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCallDeferMOCSToPatThenFalseIsReturned, IsXeLpg) {
|
||||
const auto &productHelper = getHelper<ProductHelper>();
|
||||
EXPECT_FALSE(productHelper.deferMOCSToPatIndex());
|
||||
}
|
||||
|
||||
HWTEST2_F(XeLpgProductHelperTests, givenProductHelperWhenCheckDummyBlitWaRequiredThenReturnTrue, IsXeLpg) {
|
||||
EXPECT_TRUE(productHelper->isDummyBlitWaRequired());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user