mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-04 15:53:45 +08:00
Updating Sysman Power APIs for Set/Get thresholds
- APIs zetSysmanPowerGetEnergyThreshold & zetSysmanPowerSetEnergyThreshold Change-Id: I052d4df989bc02549936cff5b0f9a801a34e320b Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
cf9d338178
commit
1a90061d54
@@ -16,6 +16,16 @@ ze_result_t LinuxPowerImp::getEnergyCounter(uint64_t &energy) {
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
ze_result_t LinuxPowerImp::getEnergyThreshold(zet_energy_threshold_t *pThreshold) {
|
||||
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
ze_result_t LinuxPowerImp::setEnergyThreshold(double threshold) {
|
||||
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
LinuxPowerImp::LinuxPowerImp(OsSysman *pOsSysman) {
|
||||
LinuxSysmanImp *pLinuxSysmanImp = static_cast<LinuxSysmanImp *>(pOsSysman);
|
||||
pSysfsAccess = &pLinuxSysmanImp->getSysfsAccess();
|
||||
|
||||
@@ -16,6 +16,8 @@ class SysfsAccess;
|
||||
class LinuxPowerImp : public OsPower, public NEO::NonCopyableClass {
|
||||
public:
|
||||
ze_result_t getEnergyCounter(uint64_t &energy) override;
|
||||
ze_result_t getEnergyThreshold(zet_energy_threshold_t *pThreshold) override;
|
||||
ze_result_t setEnergyThreshold(double threshold) override;
|
||||
bool isPowerModuleSupported() override;
|
||||
LinuxPowerImp(OsSysman *pOsSysman);
|
||||
LinuxPowerImp() = default;
|
||||
|
||||
@@ -15,6 +15,8 @@ struct OsSysman;
|
||||
class OsPower {
|
||||
public:
|
||||
virtual ze_result_t getEnergyCounter(uint64_t &energy) = 0;
|
||||
virtual ze_result_t getEnergyThreshold(zet_energy_threshold_t *pThreshold) = 0;
|
||||
virtual ze_result_t setEnergyThreshold(double threshold) = 0;
|
||||
virtual bool isPowerModuleSupported() = 0;
|
||||
static OsPower *create(OsSysman *pOsSysman);
|
||||
virtual ~OsPower() = default;
|
||||
|
||||
@@ -45,10 +45,10 @@ ze_result_t PowerImp::powerSetLimits(const zet_power_sustained_limit_t *pSustain
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
ze_result_t PowerImp::powerGetEnergyThreshold(zet_energy_threshold_t *pThreshold) {
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
return (pOsPower->getEnergyThreshold(pThreshold));
|
||||
}
|
||||
ze_result_t PowerImp::powerSetEnergyThreshold(double threshold) {
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
return (pOsPower->setEnergyThreshold(threshold));
|
||||
}
|
||||
PowerImp::PowerImp(OsSysman *pOsSysman) {
|
||||
pOsPower = OsPower::create(pOsSysman);
|
||||
|
||||
@@ -12,6 +12,8 @@ namespace L0 {
|
||||
class WddmPowerImp : public OsPower {
|
||||
public:
|
||||
ze_result_t getEnergyCounter(uint64_t &energy) override;
|
||||
ze_result_t getEnergyThreshold(zet_energy_threshold_t *pThreshold) override;
|
||||
ze_result_t setEnergyThreshold(double threshold) override;
|
||||
bool isPowerModuleSupported() override;
|
||||
};
|
||||
|
||||
@@ -20,6 +22,16 @@ ze_result_t WddmPowerImp::getEnergyCounter(uint64_t &energy) {
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
ze_result_t WddmPowerImp::getEnergyThreshold(zet_energy_threshold_t *pThreshold) {
|
||||
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
ze_result_t WddmPowerImp::setEnergyThreshold(double threshold) {
|
||||
|
||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||
}
|
||||
|
||||
bool WddmPowerImp::isPowerModuleSupported() {
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user