mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 06:49:52 +08:00
Move setCapabilityCoherencyFlag function from HwHelper to HwInfoConfig
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com> Related-To: NEO-4541
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
80b49e4a47
commit
7c473d0a11
@@ -64,6 +64,7 @@ class HwInfoConfig {
|
||||
virtual bool isNewResidencyModelSupported() const = 0;
|
||||
virtual bool isPipeControlPriorToNonPipelinedStateCommandsWARequired(const HardwareInfo &hwInfo) const = 0;
|
||||
virtual bool heapInLocalMem(const HardwareInfo &hwInfo) const = 0;
|
||||
virtual void setCapabilityCoherencyFlag(const HardwareInfo &hwInfo, bool &coherencyFlag) = 0;
|
||||
|
||||
protected:
|
||||
virtual LocalMemoryAccessMode getDefaultLocalMemoryAccessMode(const HardwareInfo &hwInfo) const = 0;
|
||||
@@ -113,6 +114,7 @@ class HwInfoConfigHw : public HwInfoConfig {
|
||||
bool isNewResidencyModelSupported() const override;
|
||||
bool isPipeControlPriorToNonPipelinedStateCommandsWARequired(const HardwareInfo &hwInfo) const override;
|
||||
bool heapInLocalMem(const HardwareInfo &hwInfo) const override;
|
||||
void setCapabilityCoherencyFlag(const HardwareInfo &hwInfo, bool &coherencyFlag) override;
|
||||
|
||||
protected:
|
||||
HwInfoConfigHw() = default;
|
||||
|
||||
@@ -45,4 +45,9 @@ bool HwInfoConfigHw<gfxProduct>::heapInLocalMem(const HardwareInfo &hwInfo) cons
|
||||
return false;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
void HwInfoConfigHw<gfxProduct>::setCapabilityCoherencyFlag(const HardwareInfo &hwInfo, bool &coherencyFlag) {
|
||||
coherencyFlag = true;
|
||||
}
|
||||
|
||||
} // namespace NEO
|
||||
|
||||
@@ -42,4 +42,9 @@ bool HwInfoConfigHw<gfxProduct>::isNewResidencyModelSupported() const {
|
||||
return true;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
void HwInfoConfigHw<gfxProduct>::setCapabilityCoherencyFlag(const HardwareInfo &hwInfo, bool &coherencyFlag) {
|
||||
coherencyFlag = false;
|
||||
}
|
||||
|
||||
} // namespace NEO
|
||||
|
||||
@@ -17,14 +17,15 @@
|
||||
namespace NEO {
|
||||
|
||||
int HwInfoConfig::configureHwInfoWddm(const HardwareInfo *inHwInfo, HardwareInfo *outHwInfo, OSInterface *osIface) {
|
||||
HwHelper &hwHelper = HwHelper::get(outHwInfo->platform.eRenderCoreFamily);
|
||||
auto &hwHelper = HwHelper::get(outHwInfo->platform.eRenderCoreFamily);
|
||||
auto &hwInfoConfig = *HwInfoConfig::get(outHwInfo->platform.eProductFamily);
|
||||
|
||||
outHwInfo->capabilityTable.ftrSvm = outHwInfo->featureTable.ftrSVM;
|
||||
|
||||
hwHelper.adjustDefaultEngineType(outHwInfo);
|
||||
outHwInfo->capabilityTable.defaultEngineType = getChosenEngineType(*outHwInfo);
|
||||
|
||||
hwHelper.setCapabilityCoherencyFlag(outHwInfo, outHwInfo->capabilityTable.ftrSupportsCoherency);
|
||||
hwInfoConfig.setCapabilityCoherencyFlag(*outHwInfo, outHwInfo->capabilityTable.ftrSupportsCoherency);
|
||||
outHwInfo->capabilityTable.ftrSupportsCoherency &= inHwInfo->featureTable.ftrL3IACoherency;
|
||||
|
||||
PreemptionHelper::adjustDefaultPreemptionMode(outHwInfo->capabilityTable,
|
||||
|
||||
Reference in New Issue
Block a user