Energy-centric DVFS Controling Method for
Multi-core Platforms
Shin-gyu Kim, Chanho Choi, Hyeonsang Eom, Heon Y. Yeom
School of Computer Science and Engineering
Seoul National University, Korea
Email: {sgkim, chchoi, hseom, yeom}@dcslab.snu.ac.kr
Huichung Byun
Samsung Electronics, Korea
kw.byun@samsung.com
Abstract—Saving data center energy consumption is a hot issue
for the environment and the economy. CPU is the biggest energy
consuming component in a server, and it has various energy
saving technologies, such as C-state and P-state. Advances in
multi-core processors and virtualization technologies have en-
abled many workloads to be consolidated in a physical server, and
energy efficiency can be degraded due to the contention in shared
resources. We observed that energy efficiency can be improved
further by adjusting CPU frequency according to the degree
of contention in shared resources, and the most energy-efficient
CPU frequency is quite different for each situation. In this
paper, we propose an energy-centric DVFS controlling method
(eDVFS), which aims to minimize total energy consumption. Our
experimental results show that eDVFS method is more energy-
efficient and faster than current “on-demand” CPU governor.
I. I NTRODUCTION
Today, reducing data center energy consumption is a critical
issue for the environment and its operational cost. Environ-
mental activist group Greenpeace reported that data centers in
the US consumed close to 3% of the national power supply,
and the global demand for electricity from data centers was
close to the equivalent of the entire electricity demand of the
UK in 2007. Moreover, this demand is projected to triple or
quadruple by 2020. [1]
There has been a lot of research efforts to reduce energy
consumption in many aspect of data centers. It includes
reducing idle server power [2], server power budgeting [3],
[4] and the use of renewable energy [5]. Actually, these work
achieved significant improvements in general cases. Now, we
focus on virtualized environments where multiple independent
virtual machines (VMs) are consolidated in one physical
server. The VM consolidation implies that multiple VMs
contend for shared resources on each server. Although current
virtualization technologies provide resource isolation, they do
not ensure performance isolation. It is already well known
that shared resource contention can result in performance
degradation of VMs [6], [7], [8].
Most data center energy is consumed by computing servers,
and CPU is the biggest energy consuming component in the
server. Modern CPUs have various energy saving technologies,
such as C-state, P-state and T-state. Especially, P-state changes
operating frequency and voltage while instructions can be
processed. It is also called a DVFS (Dynamic Voltage and
Frequency Scaling) control. It is clear that CPU consumes
0.6
0.8
1
1.2
1.4
Normalized total energy
consumption
CPU frequency
lbm libquantum omnetpp soplex
mcf gcc sjeng povray
Fig. 1. Normalized total energy consumption of eight SPECcpu 2006
benchmark programs with varying CPU frequency. The CPU frequency for
the lowest energy consumption is different from each other.
less power
1
at low frequency than high frequency. However,
total consumed energy of a workload can be reduced with
high operating frequency, and the following graph shows this
situation.
Figure 1 shows normalized total energy consumption of
eight SPECcpu 2006 benchmarks at various CPU frequencies.
This experiment is performed on a server with two Intel
Sandybridge-based 8-core Xeon E5-2670 (2.6 GHz) proces-
sors and 128 GB memory. This CPU has 14 DVFS levels.
The server runs Ubuntu 11.10 of Linux kernel 3.0.0 and KVM
virtualization framework. There are 16 active VMs, and each
VM runs one benchmark program in its entirety. Each VM is
configured to have one virtual CPU with 2 GB memory, and
is pinned to a dedicated CPU core. We measure system-wide
total energy consumption while 16 VMs run the same bench-
mark concurrently. The energy consumption is calculated by
multiplying average execution time and average consumed
power (Watts). As shown in Figure 1, each benchmark shows
a different energy consumption changing pattern with varying
CPU frequency, and has a different CPU frequency for the
lowest energy consumption. For example, lbm consumes more
energy at higher CPU frequency and povray vice versa.
The reason is contention in shared resources, such as last-
level cache (LLC) and memory bus, among VMs. In the
case of lbm, because total memory traffic is already close
1
Power refers to the amount of energy (Joules) per 1 second.
2012 SC Companion: High Performance Computing, Networking Storage and Analysis
978-0-7695-4956-9/13 $26.00 © 2013 IEEE
DOI 10.1109/SC.Companion.2012.94
685