mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-04 15:53:45 +08:00
fix(sysman): fix Burst Power Limit node retrieval issue in i915 platforms
Related-To: NEO-15450 Signed-off-by: Anvesh Bakwad <anvesh.bakwad@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
fa7e4a3372
commit
3dfc6601ba
@@ -378,14 +378,14 @@ void LinuxPowerImp::init() {
|
||||
}
|
||||
|
||||
if (powerDomain == ZES_POWER_DOMAIN_PACKAGE) {
|
||||
burstPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNamePackageBurstPowerLimit, subdeviceId, false);
|
||||
burstPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNamePackageBurstPowerLimitInterval, subdeviceId, false);
|
||||
burstPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getBurstPowerLimitFile(SysfsName::sysfsNamePackageBurstPowerLimit, subdeviceId, false);
|
||||
burstPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getBurstPowerLimitFile(SysfsName::sysfsNamePackageBurstPowerLimitInterval, subdeviceId, false);
|
||||
criticalPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNamePackageCriticalPowerLimit, subdeviceId, false);
|
||||
sustainedPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNamePackageSustainedPowerLimit, subdeviceId, false);
|
||||
sustainedPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNamePackageSustainedPowerLimitInterval, subdeviceId, false);
|
||||
} else if (powerDomain == ZES_POWER_DOMAIN_CARD) {
|
||||
burstPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNameCardBurstPowerLimit, subdeviceId, false);
|
||||
burstPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNameCardBurstPowerLimitInterval, subdeviceId, false);
|
||||
burstPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getBurstPowerLimitFile(SysfsName::sysfsNameCardBurstPowerLimit, subdeviceId, false);
|
||||
burstPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getBurstPowerLimitFile(SysfsName::sysfsNameCardBurstPowerLimitInterval, subdeviceId, false);
|
||||
criticalPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNameCardCriticalPowerLimit, subdeviceId, false);
|
||||
sustainedPowerLimitFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNameCardSustainedPowerLimit, subdeviceId, false);
|
||||
sustainedPowerLimitIntervalFile = intelGraphicsHwmonDir + "/" + pSysmanKmdInterface->getSysfsFilePath(SysfsName::sysfsNameCardSustainedPowerLimitInterval, subdeviceId, false);
|
||||
|
||||
@@ -177,6 +177,7 @@ class SysmanKmdInterface {
|
||||
virtual std::string getGpuUnBindEntry() const = 0;
|
||||
virtual std::vector<zes_power_domain_t> getPowerDomains() const = 0;
|
||||
virtual void setSysmanDeviceDirName(const bool isIntegratedDevice) = 0;
|
||||
virtual std::string getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) = 0;
|
||||
const std::string getSysmanDeviceDirName() const;
|
||||
ze_result_t checkErrorNumberAndReturnStatus();
|
||||
|
||||
@@ -251,6 +252,7 @@ class SysmanKmdInterfaceI915Upstream : public SysmanKmdInterface, SysmanKmdInter
|
||||
std::string getGpuUnBindEntry() const override;
|
||||
std::vector<zes_power_domain_t> getPowerDomains() const override { return {ZES_POWER_DOMAIN_PACKAGE}; }
|
||||
void setSysmanDeviceDirName(const bool isIntegratedDevice) override;
|
||||
std::string getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) override;
|
||||
|
||||
protected:
|
||||
std::map<SysfsName, valuePair> sysfsNameToFileMap;
|
||||
@@ -311,6 +313,7 @@ class SysmanKmdInterfaceI915Prelim : public SysmanKmdInterface, SysmanKmdInterfa
|
||||
std::string getGpuUnBindEntry() const override;
|
||||
std::vector<zes_power_domain_t> getPowerDomains() const override { return {ZES_POWER_DOMAIN_PACKAGE}; }
|
||||
void setSysmanDeviceDirName(const bool isIntegratedDevice) override;
|
||||
std::string getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) override;
|
||||
|
||||
protected:
|
||||
std::map<SysfsName, valuePair> sysfsNameToFileMap;
|
||||
@@ -373,6 +376,7 @@ class SysmanKmdInterfaceXe : public SysmanKmdInterface {
|
||||
std::string getGpuBindEntry() const override;
|
||||
std::string getGpuUnBindEntry() const override;
|
||||
void setSysmanDeviceDirName(const bool isIntegratedDevice) override;
|
||||
std::string getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) override;
|
||||
|
||||
protected:
|
||||
std::map<SysfsName, valuePair> sysfsNameToFileMap;
|
||||
|
||||
@@ -104,6 +104,10 @@ std::string SysmanKmdInterfaceI915Prelim::getEnergyCounterNodeFile(zes_power_dom
|
||||
return filePath;
|
||||
}
|
||||
|
||||
std::string SysmanKmdInterfaceI915Prelim::getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) {
|
||||
return "";
|
||||
}
|
||||
|
||||
ze_result_t SysmanKmdInterfaceI915Prelim::getEngineActivityFdListAndConfigPair(zes_engine_group_t engineGroup,
|
||||
uint32_t engineInstance,
|
||||
uint32_t gtId,
|
||||
|
||||
@@ -97,6 +97,10 @@ std::string SysmanKmdInterfaceI915Upstream::getEnergyCounterNodeFile(zes_power_d
|
||||
return filePath;
|
||||
}
|
||||
|
||||
std::string SysmanKmdInterfaceI915Upstream::getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) {
|
||||
return "";
|
||||
}
|
||||
|
||||
ze_result_t SysmanKmdInterfaceI915Upstream::getEngineActivityFdListAndConfigPair(zes_engine_group_t engineGroup,
|
||||
uint32_t engineInstance,
|
||||
uint32_t gtId,
|
||||
|
||||
@@ -137,6 +137,10 @@ std::string SysmanKmdInterfaceXe::getEnergyCounterNodeFile(zes_power_domain_t po
|
||||
return filePath;
|
||||
}
|
||||
|
||||
std::string SysmanKmdInterfaceXe::getBurstPowerLimitFile(SysfsName sysfsName, uint32_t subDeviceId, bool baseDirectoryExists) {
|
||||
return getSysfsFilePath(sysfsName, subDeviceId, false);
|
||||
}
|
||||
|
||||
ze_result_t SysmanKmdInterfaceXe::getEngineActivityFdListAndConfigPair(zes_engine_group_t engineGroup,
|
||||
uint32_t engineInstance,
|
||||
uint32_t gtId,
|
||||
|
||||
Reference in New Issue
Block a user