PSU Energy - AC - XGBoost - Machine
What it does
It estimates the total machine energy consumption (AC Power) based on training data from the SPECPower database. The underlying XGBoost model can be found on our GitHub.
Classname
PsuEnergyAcXgboostMachineProvider
Metric Name
psu_energy_ac_xgboost_machine
Prerequisites & Installation
This provider is included as a submodule in the Green Metrics Tool and should have been checked out with the initial install command of this manual. If not, run:
git submodule update --init
If you don’t have them already, you need to install some python libraries:
python3 -m pip install -r ~/green-metrics-tool/metric_providers/psu/energy/ac/xgboost/machine/model/requirements.txt
The provider must be configured in the config.yml
. It must be supplied with the machine params in the config.yml
file:
- CPUChips
- HW_CPUFreq
- CPUCores
- TDP
- HW_MemAmountGB
You can find these parameters in your data sheet of the used machine. In case you are using a VM please check this repository for an example how to derive the values.
Please see Configuration → for further info.
In the config.yml
file the CpuUtilizationProcfsSystemProvider must also be activated for the PsuEnergyAcXgboostMachineProvider to work.
Input Parameters
- args
- Takes no arguments
If you want to run the provider directly we advise that you rather check out it’s main repository: XGBoost SPECPower Model documentation
The provider reads the /tmp/green-metrics-tool/cpu_utilization_procfs_system.log
file
from the CpuUtilizationProcfsSystemProvider in order to keep overhead low and
not to double query the utilization from the system.
Output
Since this provider should not be run directly there it has no direct output.
The resulting data however is the wattage for the whole machine (AC Power) in Watts.
This value has the same granularity as the one configured in the config.yml
for the
CpuUtilizationProcfsSystemProvider
Any errors are printed to Stderr.