View Categories

Memory

Each instance has a specific quantity of Random-Access Memory (RAM) allocated to it. This means that each customer has a fixed quantity of RAM, and that they are charged a set fee by the cloud provider regardless of how much memory they utilize, up to the maximum allocated. 

Tailpipe calculates the power requirements of RAM on an hourly basis using the following process:  

First, Tailpipe fetches the customer’s utilization data to find their CPU utilization for each hour of usage. 

Then, it matches the utilization level against power draw values per GB of RAM.

To find these power draw values, Tailpipe ran stress tests on a range of bare metal instances (where the customer has access to all the resources within the platform) running Ubuntu Linux in cloud service providers. Tailpipe varied the utilization of the CPUs using stress-ng and measured their precise power consumption using Turbostat. In this way, Tailpipe took measurements of the power consumption of the RAM at 5% CPU utilization increments.  

By analyzing the results of 37 distinct bare metal platforms using various regression models, Tailpipe found the following relationship between CPU Utilization and Power Consumed by the RAM (W per GB):   

CPU Utilization (%)  RAM Power Draw (W/GB) 
0.0480
0.0498
10  0.0515
15  0.0530
20  0.0544
25  0.0557
30  0.0568
35  0.0577
40  0.0586
45  0.0593
50  0.0598
55  0.0602
60  0.0605
65  0.0607
70  0.0607
75  0.0606
80  0.0603
85  0.0599
90  0.0593
95  0.0587
100  0.0578

Tailpipe then adds all the hourly utilization power draw values together.  

Tailpipe then accounts for differences in efficiency between DDR3, DDR4, and DDR5 RAM types. The values above represent DDR4 RAM. DDR5 RAM is approximately 20% more efficient than DDR4, and DDR3 RAM is approximately 30% less efficient than DDR4. 

RAM Type  Efficiency Factor 
DDR3  1.3 
DDR4 
DDR5  0.83 

Finally, Tailpipe multiplies this total power draw value by the total quantity (GB) of RAM allocated to the virtual machine, to obtain the total power consumption of the virtual machine’s RAM during the usage period: 

RAM Energy Consumption (Wh) = (Average Memory Power Draw at CPU Utilization per hour * DDR Efficiency Factor) * GB of total reserved RAM

For example, to calculate the RAM power consumption of an instance with 512 GB of DDR5 RAM with a CPU workload of 75%: 

  1. Tailpipe finds the RAM power factor at 75% CPU utilization (60.6%, or 0.606)  

  1. It multiplies this 0.606 power factor by the RAM allocated: 0.606 * 512 = 310.272 

  1. Then factors in the DDR version: 310.272 * 0.83 = 257.526 

These RAM components would therefore consume 287.526 W per hour.