5. Energy Proportionality

Maximize the energy efficiency of hardware

Energy proportionality is a measure of the relationship between power consumed in a computer system and the rate at which useful work is done (its utilization).

Utilization is a measure of how much of a computer’s resources are being used, usually given as a percent. An idle computer has a low utilization percentage and isn’t being utilized, a computer running at its maximum capacity has a high percentage and is being fully utilized.

The relationship between power and utilization is not exactly proportional.

alt_text
At 0% utilization the computer still draws 100W, at 50% utilization it draws 180W and at 100% utilization it draws 200W. The relationship between power consumption and utilization is not linear and it doesn't cross the origin.

Because of this, the more you utilize a computer, the more efficient it becomes at converting electricity to useful computing operations. Running your work on as few servers as possible with the highest utilization rate maximizes their energy efficiency.

An idle computer, even one at zero percent utilization, still draws electricity. This static power draw varies by configuration and by hardware components, but all components have some static power draw. This is one of the reasons PCs, laptops, and mobile devices have power-save modes available. If the device is idle it will eventually trigger a hibernation mode and put the disk and screen to sleep or even change the frequency of the CPU. These power-save modes save on electricity, but they have other trade-offs, such as a slower restart when the device wakes up.

Servers are usually not configured for aggressive or even minimal power-saving. Many server use-cases demand full capacity as quickly as possible in response to rapidly changing demands. This can leave many servers in idle modes during low demand periods. An idle server has a cost both from embedded carbon and its inefficient utilization.

The most efficient and green approach is to run your work on as few servers as possible with the highest rate of utilization.


All Principles permalink

  1. Carbon   Build applications that are carbon efficient
  2. Electricity   Build applications that are energy efficient
  3. Intensidad de carbono   Consuma electricidad con la mínima intensidad de carbono
  4. Carbon Intensity   Consume electricity with the lowest carbon intensity
  5. Embodied Carbon   Build applications that are hardware efficient
  6. Energy Proportionality   ▶ Maximize the energy efficiency of hardware ◀
  7. Networking   Reduce the amount of data and distance it must travel across the network
  8. Moldeo de la demanda   Crear aplicaciones que sean conscientes del carbono que emiten.
  9. Demand Shaping   Build carbon-aware applications.
  10. Measurement & Optimization   Focus on step-by-step optimizations that increase the overall carbon efficiency