Skip to main content
OpenDC2 is no longer being developed

This page documents OpenDC2. OpenDC3 can still run OpenDC2 experiment files with opendc --legacy run, but new features are only added to OpenDC3. See the OpenDC3 documentation, or Migrating to OpenDC3.

Power model

A power model determines the power draw of a CPU or GPU from its utilization. Every host has one for its CPU (cpuPowerModel) and one for its GPU (gpuPowerModel). When none is given, a linear model with an idle power of 200 W and a maximum power of 400 W is used.

FieldTypeDefaultDescription
modelTypestringrequiredThe model, see the table below.
idlePowerPowerrequiredThe power draw at 0% utilization.
maxPowerPowerrequiredThe power draw at 100% utilization. It must be at least idlePower.
powerPower400 WThe power draw of the constant model.
calibrationFactornumber1.0The calibration factor of the mse model.
asymUtilnumber0.0The utilization above which the asymptotic model grows close to linearly.
dvfsbooleantrueWhether the asymptotic model models dynamic voltage and frequency scaling.
Model typePower draw
constantAlways power, independent of the utilization.
linearGrows linearly from idlePower at 0% utilization to maxPower at 100%.
squareGrows with the square of the utilization.
cubicGrows with the cube of the utilization.
sqrtGrows with the square root of the utilization.
mseFitted to measurements, after Fan et al., ISCA 2007.
asymptoticGrows close to linearly above the utilization asymUtil, adapted from GreenCloud.

Example​

"cpuPowerModel": {
"modelType": "sqrt",
"idlePower": "32 W",
"maxPower": "180 W"
}