Vmeter: Power Modelling For Virtualized Clouds
Vmeter: Power Modelling For Virtualized Clouds
Vmeter: Power Modelling For Virtualized Clouds
2
Introduction (1/2)
• Most of the recent power monitoring techniques:
– Use an externally attached power meter to obtain the
power consumption for the complete system.
– Lack a fine-grained mechanism to profile the power of
an individual hosted VM.
• Seamless job/VM migration can reduce the total
power consumption:
– Without a fine-grained data monitoring and analysis
system, it may not guarantee.
• VMeter is proposed to solve these problems.
3
Introduction (2/2)
• The major contributions of this paper include:
– Propose a low-overhead power model, VMeter, to
predict instantaneous power consumption by individual
VM.
– Reduce the datacenter bill without attaching an external
power meter.
– Implement a utility using proposed power model on a
cluster node.
4
System Events and Current Limitations
(1/2)
• Most hardware architectures expose system events via
performance counter registers.
– The access to these registers enables profiling of the
complete system or the running applications.
• We selected these events that have high correction with
the power consumption to monitor vital system:
– CPU_CLK_UNHALTED
– DRAM_ACCESSES
– INSTRUCTION_CACHE_FETCHES
– DATA_CACHE_FETCHES
– Plus use a disk monitor utility to sample disk accesses per VM
• Because of the lack of any direct hardware performance counter to measure.
5
System Events and Current Limitations
(2/2)
• Limitations:
– Monitoring tools cannot profile virtual disk reads when VM
is mounted using blktap (Block Tap) drivers.
– Furthermore, the tool is not capable of providing vital
statistics for the cache and DRAM utilization per VM.
– Virtualization package lacks a port of performance counter
driver that can enable application level access to hardware
performance counter registers.
• Solution:
– Develop a utility program to provide utilization details: CPU,
cache, DRAM and disk for each VM.
– Monitor by accessing system event files and hardware
performance counters.
6
Power Model (1/5)
• VMeter consists of two sub components:
– vm_monitor
– vm_power
• VM_Monitor
– Oprofile: To sample the hardware performance counters
– iostat: To sample the disk accesses
1. Run the above profilers periodically
2. Parse or analyze the event data we want
3. Generate the resource utilization per VM about CPU, cache,
DRAM and disk
7
Power Model (2/5)
• VM_Power
– Because there are no means to measure actual VM
power, we developed several models to predict it.
• Objectives:
– Low runtime overhead cost
– Acceptable average deviation from actual measured
power using external attached power meter
8
Power Model (3/5)
• The more the utilization of the sub-components, the
more is the total power consumption.
• We created a simple 4-D linear weighted power model:
𝑃 𝑡𝑜𝑡𝑎𝑙 = 𝑐0 + 𝑐1 𝑝𝐶𝑃𝑈 + 𝑐2 𝑝𝑐𝑎𝑐ℎ𝑒 + 𝑐3 𝑝𝐷𝑅𝐴𝑀 + 𝑐4 𝑝𝑑𝑖𝑠𝑘
– The mean prediction accuracy is 82%
– Can’t determine the power consumption by individual VM
• We performed principal component analysis (PCA) on
the input data set.
– Result shows a high correlation between the pairs {CPU,
cache} and {disk, DRAM}.
9
Power Model (4/5)
• We can classify the system workloads into two
categories: CPU-bound and I/O-bound process.
• We then decomposed the linear model into two
linear regression models:
𝑃*𝐶𝑃𝑈,𝑐𝑎𝑐ℎ𝑒+ = 𝑎1 + 𝑎2 𝑝𝐶𝑃𝑈 + 𝑎3 𝑝𝑐𝑎𝑐ℎ𝑒
𝑃*𝐷𝑅𝐴𝑀,𝑑𝑖𝑠𝑘+ = 𝑎4 + 𝑎5 𝑝𝐷𝑅𝐴𝑀 + 𝑎6 𝑝𝑑𝑖𝑠𝑘
𝑃(𝑡𝑜𝑡𝑎𝑙) = α𝑃*𝐶𝑃𝑈,𝑐𝑎𝑐ℎ𝑒+ + β𝑃*𝐷𝑅𝐴𝑀,𝑑𝑖𝑠𝑘+
– This model is better than the simple linear model.
10
Power Model (5/5)
• We compute the power consumption for each VM,
and decompose the total system power consumption
into two categories:
– The baseline and the dynamic power.
𝑃*𝑏𝑎𝑠𝑒𝑙𝑖𝑛𝑒+ = 𝛼 ∗ 𝑎1 + 𝛽 ∗ 𝑎4
𝑁
𝑃(𝑡𝑜𝑡𝑎𝑙) = 𝑃*𝑏𝑎𝑠𝑒𝑙𝑖𝑛𝑒+ + 𝑃*𝑑𝑜𝑚𝑎𝑖𝑛(𝑘)+
𝑘=1
𝑃*𝑑𝑜𝑚𝑎𝑖𝑛(𝑖)+ = 𝛼 𝑎2 𝑝𝐶𝑃𝑈(𝑖) + 𝑎3 𝑝𝑐𝑎𝑐ℎ𝑒(𝑖) + 𝛽 𝑎5 𝑝𝐷𝑅𝐴𝑀(𝑖) + 𝑎6 𝑝𝑑𝑖𝑠𝑘(𝑖)
11
Experimental Setup (1/6)
• Hardware:
– AMD Opteron Sun Sparc Server Platforms
• CentOS 5.3 (Kernel 2.6.18)
• Xen-3.1 package
– oprofile-0.9.3 + xenoprofile
• Benchmark software:
Name CPU Intensive I/O Intensive
NAS-NPB 2.4 ● ●
Iozone ●
Bonnie++ ●
BYTEmark ●
Cachebench ● ●
Dense matrix ●
multiplication
GCC ● ● 12
Experimental Setup (2/6)
4-D linear power model is used to predict instantaneous full system power. 13
Experimental Setup (3/6)
Our proposed power model is used to predict instantaneous full system power. 14
Experimental Setup (4/6)
I/O CPU
CPU I/O
CPU CPU
I/O+CPU CPU+CPU
I/O+CPU
CPU+CPU
I/O+I/O
I/O+I/O
Housekeeping activity
18