You are on page 1of 6

Energy-efficient Multi-task Scheduling based on MapReduce for Cloud Computing

Xiaoli Wang
School of Computer Science and Technology
Xidian University
Xian, Shaanxi, China
E-mail: wangxiaolibox@gmail.com
Yuping Wang
School of Computer Science and Technology
Xidian University
Xian, Shaanxi, China
E-mail: ywang@xidian.edu.cn


AbstractFor the problem that the energy efficiency of the
cloud computing data center is low, from the point of view of
the energy efficiency of the servers, we propose a new energy-
efficient multi-task scheduling model based on Googles
massive data processing framework. To solve this model, we
design a practical encoding and decoding method for the
individuals, and construct an overall energy efficiency function
of the servers as the fitness value of the individual. Meanwhile,
in order to accelerate the convergent speed and enhance the
searching ability of our algorithm, a local search operator is
introduced. Finally, the experiments show that the proposed
algorithm is effective and efficient.
Keywords-Energy-efficient; multi-task; scheduling; Cloud
computing; MapReduce
I. INTRODUCTION
Cloud computing
[1]
is a model for enabling convenient,
on-demand network access to a shared pool of configurable
computing resources that can be rapidly provisioned and
released with minimal management effort or service provider
interaction. As a new business modelwhile being favored
by providing services such as on-demand self-service, broad
network access and rapid elasticity, cloud computing faces
some new challenges. One of the prominent issues is the
energy efficiency of data centers.
According to Amazons CEMS project
[2]
, based on a 3-
year amortization schedule for servers and 15-year
amortization schedule for other infrastructure, the monthly
capital investment of the data center is illustrated in figure 1.
As can be seen from this figure, energy-related costs amount
to 41.62% of the total. In other words, the largest investment
to build data centers for cloud computing is not only to
purchase thousands of server equipment, but also to buy the
distribution and cooling infrastructure and to pay the bill for
energy consumption of all these facilities. In order to
illustrate the importance of energy consumption for data
centers, we introduce the concept, power usage effectiveness
(PUE), which was developed by a consortium called The
Green Grid.
Definition 1Power Usage Effectiveness
[3]
, is the ratio
of total amount of power used by a data center facility to the
power delivered to computing equipment. It is a measure of
how efficiently a computer data center uses its power.
power equipment IT
power facility Total
PUE =
Where, the IT Equipment Power is the power delivered
to the critical load, the servers in the data center, while the
total facility power in addition to the servers also includes
other energy facilities, specifically, the energy consumed by
distribution and cooling infrastructure which accounts for the
main part. A PUE of 2.0 states that for every watt delivered
to the servers, we dissipate 1 watt in cooling system and
power distribution. In the Environmental Protection Agency
(EPA)s report
[4]
to the U.S. Congress, it is expected that
equipment efficiency improvements alone, with current
practices, could result in a 2011 PUE of 1.9. Beyond that, the
EPA predicted that "state-of-the-art" data centers could reach
a PUE of 1.2. By now, Google has claimed that their data
centers, on average for all, have exceeded the EPA's most
optimistic scenario
[5]
, which is of course accompanied by
doubt voices from other cloud computing providers
[2]
.
$2,997,090
$1,296,902
$284,686
$1,042,440
Servers
Power & Cooling
Infrast ruct ure
Power
Ot her
Infrast ruct ure

Figure 1. Monthly costs of the data center
To reduce the energy consumption of data centers and
improve energy efficiency, many scholars have done some
related research, such as literatures [6-10]. Overall, we can
make efforts in three aspects:
(1) Reduce power loss during distribution. However, the
statistics from Amazons CEMS project show that for a data
center with a PUE of 1.7, an overall power distribution loss
only accounts for 8% of total energy consumption. Even
with better technology, the reduction will not exceed 8%
[2]
.
(2) Reduce energy consumed by cooling system. For
example, you can use Googles free cooling mode. Google
claims that there is no cooling equipment in its data centers
in Belgium
[11]
. The climate in Belgium will support free
cooling almost year-round. If the weather gets hot, Google
says it will turn off equipment as needed in Belgium and
shift computing load to other data centers. Although the free
cooling mode can reduce the energy consumed by cooling
2011 Seventh International Conference on Computational Intelligence and Security
978-0-7695-4584-4/11 $26.00 2011 IEEE
DOI 10.1109/CIS.2011.21
57
system, it has a key prerequisite that the providers have
sufficient enough financial and technical strength to run
several data centers around the world and the data can
backup across those data centers with seamless migration of
computing load. This is hardly possible for majority of cloud
computing providers.
(3) Improve energy efficiency of servers. Say a data
center with a PUE of 2.0, only 50% of the power can be used
on severs. Therefore, it becomes critical whether servers
have used all the energy to complete the workload. We are
aware that low energy utilization of a server is mainly due to
its idle state caused by low CPU utilization. Even at a very
low load, such as 10% CPU utilization, the power consumed
is over 50% of the peak power
[12]
. Thus, the energy
efficiency of servers plays an important role for the entire
energy efficiency of the data center.
This paper mainly focuses on how to improve the energy
efficiency of servers through appropriate scheduling
strategies. We propose a new energy-efficient multi-task
scheduling model based on MapReduce. As the basics of our
model, section II highlights Googles MapReduce
framework; Section III gives the mathematical description of
the problem and the corresponding model. In order to solve
this model, a genetic algorithm is designed in Section IV.
Finally, simulation experiments show the proposed algorithm
is effective and efficient in Section V.
II. MAPREDUCE FRAMEWORK
MapReduce
[13]
is Googles massive data processing
framework. Users specify a map function that processes a
key/value pair to generate a set of intermediate key/value
pairs, and a reduce function that merges all intermediate
values associated with the same intermediate key. Figure 2
shows the overall flow of a MapReduce operation. When the
user program calls the MapReduce function, the following
sequence of actions occurs:

Figure 2. Overall flow of a MapReduce operation
Step1. The MapReduce library first splits the input files
into M pieces of typically 64 megabytes (MB) per piece.
Step2. The master picks idle workers and assigns each
one a map task or a reduce task.
Step3. A worker who is assigned a map task parses
key/value pairs out of the input data and passes each pair to
the user-defined Map function.
Step4. The locations of these intermediate pairs on the
local disk are passed back to the master.
Step5. When a reduce worker is notified by the master
about these locations, it uses remote procedure calls to read
the buffered data from the local disks of the map workers.
Step6. The reduce worker passes the key and the
corresponding set of intermediate values to the user's Reduce
function. The output of the Reduce function is appended to a
final output file for this reduce partition.
Step7. When all map tasks and reduce tasks have been
completed, the master wakes up the user program.
III. ENERGY-EFFICIENT MULTI-TASK SCHEDULING
MODEL BASED ON MAPREDUCE
The problem of improving the energy efficiency of
servers can not be solved as easy as balancing loads among
servers so as to make all the servers CPU utilization reach
100%. Instead, there exists an optimal performance and
energy point for each server
[12]
. Energy consumption per
task is influenced by the CPU utilization of servers. When
the CPU utilization is low, idle power is not amortized
effectively and hence the energy per task is high. At high
CPU utilization on the other hand, energy consumption is
high due to the competition for resources among tasks,
which leads to performance degradation and longer
execution time. Typical variation of energy per task with
CPU utilization can be expected to result in a U-shaped
curve. Therefore, it can be assumed that the servers achieve
the maximum energy efficiency when all servers running at
its optimal performance and power point.
Problem description: Assuming that there are N servers
and the current CPU utilization of sever k is
k
CS , and its
optimal point is
k
CO ; there are F projects
} , , , {
2 1 F
A A A " = and the input data of project
q
A is
q
D
which will be divided into
q
m splits, so there are

=
=
F
q
q
m
1
m splits. To ensure the reliability of data, each
split will choose three different servers for storage. We use a
3 m matrix P to represent the storage location, where
element
ij
p indicates the storage location of split i .
Provided that the CPU utilization required for each map task
of project
q
A is
q
CM , and for each reduce task is
q
CR .
The problem is how to assign these

= =
+ =
F
q
q
F
q
q
r m v
1 1
tasks on N servers, so that the energy
efficiency of all servers reaches the highest point.
Here we give the single-objective optimization model for
the energy-efficient multi-task scheduling problem:

= = =
+ +
N
k
F
q
q
q
k
F
q
q
q
k k k
CR NR CM NM CS CO
1
2
1 1
) ) ) ( ) ( ( ( min

s.t. (1) for scheduling scheme S ,

+ + =
=
. , , 2 , 1 ], , 1 [
. , , 2 , 1 }, , , {
3 2 1
v m m i for N s
m i for p p p s
i
i i i i
"
"

58
(2) , | { | k s s NM
i i
q
k
= =
. | } , , 2 , 1
1
0
1
0
1
0
q
q
j
j
q
j
j
q
j
j
m m m m i + + + =


=

=
"
where 0
0
= m , N k " , 2 , 1 = and F q , , 2 , 1 " = .
(3) , | { | k s s NR
i i
q
k
= =
. | } , , 2 , 1
1
0
1
0
1
0
q
q
j
j
q
j
j
q
j
j
r r m r m r m i + + + + + + =


=

=
"
where 0
0
= r N k " , 2 , 1 = and F q , , 2 , 1 " = .
(4) . 1 ) ( ) (
1 1
+ +

= =
F
q
q
q
k
F
q
q
q
k
k
CR NR CM NM CS
where N k " , 2 , 1 = , ] 1 , 0 [
q
CM , ] 1 , 0 [
q
CR
and F q , , 2 , 1 " = .
Where, constraints (1) expresses that if a map task i is
assigned to server
i
s , then this server must have stored the
corresponding input data. Constrains (2) and (3) computes
the number of map tasks
q
k
NM and reduce tasks
q
k
NR of
project
q
A assigned to server k respectively. Constrains (4)
indicates that the CPU utilization of any server should not
exceed 100% after the task scheduling.
IV. AN ENERGY-EFFICIENT MULTI-TASK SCHEDULING
ALGORITHM BASED ON MAPREDUCE
Task scheduling is an NP problem, and the genetic
algorithm based on evolutionary theory is very suitable for
complex optimization problems. Here we give the energy-
efficient multi-task scheduling algorithm in detail.
A. Encoding and decodingn.
In the genetic algorithm, the encoding method is of great
significance. We adopt the integer coding and use vector
) , , , (
2 1 v
s s s S " = as an individual to represent a scheduling
scheme. To compute its fitness value, we need to decode the
individual first. The individual decoding method as follows:
Algorithm 4-1
Step1. let 0 =
q
k
NM and 0 =
q
k
NR where N k " , 2 , 1 =
and q q " , 2 , 1 = . Empty set
k
M and
k
R .
Step2. For each element
i
s of individual S , set
i
s k = and
. 0
0
= m For each project
q
A , where F q , , 2 , 1 " = , if
q
q
j
j
q
j
j
q
j
j
m m m m i + + + =


=

=
1
0
1
0
1
0
, , 2 , 1 "
q
k
NM plus 1
and put i into set
k
M otherwise,
q
q
j
j
q
j
j
q
j
j
r r m r m r m i + + + + + + =


=

=
1
0
1
0
1
0
, , 2 , 1 "
q
k
NR
plus 1, put i into set
k
R .
B. Modified operator
As the CPU utilization of each server can not exceed
100% after task scheduling and the population initialization
can not guarantee this, so the new generated individuals may
need to be modified. The following shows the specific steps
for the modified operator:
Algorithm 4-2
Step1. Decode individual S according to Algorithm 4-1.
Step2. For N k " 2 , 1 = ,
If 1 ) ( ) (
1 1
> + +

= =
F
q
q
q
k
F
q
q
q
k
k
CR NR CM NM CS , go to
step4; otherwise, if N k > , stop.
Step4. If 0
k k
CS CO , let

= =
+ =
F
q
q
q
k
F
q
q
q
k
CR NR CM NM cut
1 1
) ( ) ( ; Otherwise, let
. ) ( ) (
1 1
k
F
q
q
q
k
F
q
q
q
k
k
CO CR NR CM NM CS cut + + =

= =

Step 5. Remove excess map tasksFor
k
NM x " , 2 , 1 = ,
take the xth map task i from set
k
M . There exists an integer
] , 1 [ F s which satisfies

+
= =

1
1 1
s
q
q
s
q
q
m i m .
If 0 <
s
CM cut , go to step 8; otherwise, reassign taski on a
new server w which satisfies k w and } , , {
3 2 1 i i i
p p p w .
Let w s
i
= . Set 1 + = x x and
s
CM cut cut = .
Step6. Remove excess reduce tasks: For
k
NR x " , 2 , 1 = ,
take the xth reduce task i from set
k
R . There exists an
integer ] , 1 [ F s which satisfies

+
= =
+ +
1
1 1
s
q
q
s
q
q
r m i r m .
If 0 <
s
CR cut , then go to step1; otherwise, reassign this
task on a new server w which satisfies ] , 1 [ N w and k w .
Let w s
i
= . Set 1 + = x x and
s
CR cut cut = .
C. Crossover operator
We adopt the multi-point crossover operator for the
evolution of individuals. Take two projects 2 = F as an
example, and the crossover process is as follows:
Algorithm 4-3
Step1. Say the crossover probability is pc . For each
individual in the population, generate a real number ] 1 , 0 [ q .
If pc q <= , then put this individual into pl .
Step2. Select two individuals
1
S and
2
S from pl without
replacement. Generate four random
integers ] , 1 [ 1
1
m c , ] , 1 [ 2
1
m m c + , ] , 1 [ 3
1
r m m c + + and
59
] , 1 [ 4
1
v r m c + + as the crossover points. Generate new
individuals
3
S and
4
S as follows:

=
=
+ + + +
+ + + +
) , , , , , , , , , , , , , , (
) , , , , , , , , , , , , , , (
2 2
1 4
2
4
2
1 3
2
3
2
1 2
2
2
2
1 1
2
1
2
1
2
1 1
1 4
1
4
1
1 3
1
3
1
1 2
1
2
1
1 1
1
1
1
1
1
v c c c c c c c c
v c c c c c c c c
s s s s s s s s s s S
s s s s s s s s s s S
" # " # " # " # "
" # " # " # " # "

=
=
+ + + +
+ + + +
) , , , , , , , , , , , , , , (
) , , , , , , , , , , , , , , (
2 2
1 4
1
4
1
1 3
2
3
2
1 2
1
2
1
1 1
2
1
2
1
4
1 1
1 4
2
4
2
1 3
1
3
1
1 2
2
2
2
1 1
1
1
1
1
3
v c c c c c c c c
v c c c c c c c c
s s s s s s s s s s S
s s s s s s s s s s S
" # " # " # " # "
" # " # " # " # "
Step3. Modify and locally search individuals
3
S and
4
S
according to Algorithm 4-2 and Algorithm 4-5 respectively.
D. Mutation operator
We use single-point mutation operator for the evolution
of individuals. The mutation process is as follows:
Algorithm 4-4
Step1. Suppose that the mutation probability is pm. For
the individual S , generate a real number ] 1 , 0 [ q .
If pm q <= , go to step2; otherwise, stop.
Step2. Randomly generate an integer ] , 1 [ v i . If m i ,
reassign this task to a new server w which satisfies
i
s w
and } , , {
3 2 1 i i i
p p p w . Let w s
i
= ; otherwise, randomly
generate an integer ] , 1 [ N k that satisfies
i
s k . Let k s
i
= .
Modify and locally search the new generated individual
according to Algorithm 4-2 and Algorithm 4-5 respectively.
E. Local search operator
In order to accelerate the convergent speed and enhance
the searching ability of the proposed algorithm, a local
search operator is designed in this paper.
Algorithm 4-5
Step1. Say the fitness value of S is f .Let S S = .
Step2. Decode individual S according to Algorithm 4-1.
Step3. Among all the servers, there exists a server k with
the highest CPU utilization. If 0 <
k k
CS CO ,
let

= =
+ =
F
q
q
q
k
F
q
q
q
k
CR NR CM NM cut
1 1
) ( ) ( ; otherwise,
let . ) ( ) (
1 1
k
F
q
q
q
k
F
q
q
q
k
k
CO CR NR CM NM CS cut + + =

= =

Step4. Remove excess map tasks: For
k
NM x " , 2 , 1 = ,
take the xth map task i from set
k
M . There exists an integer
] , 1 [ F s which satisfies

+
= =

1
1 1
s
q
q
s
q
q
m i m .
If 0 <
s
CM cut , go to step5; otherwise, reassign taski on a
new server w which satisfies k w and } , , {
3 2 1 i i i
p p p w .
Let w s
i
= and
s
CM cut cut = .
Step5. Remove excess reduce tasks: For
k
NR x " , 2 , 1 = ,
take the xth reduce task i from set
k
R . There exists an
integer ] , 1 [ F s which satisfies

+
= =
+ +
1
1 1
s
q
q
s
q
q
r m i r m .
If 0 <
s
CR cut , compute the fitness value of individual S ;
otherwise, reassign task i on a new server w which
satisfies ] , 1 [ N w and k w . Let w s
i
= and
s
CR cut cut = .
Step6. If f f < , let S S = and go to step2; otherwise,
let S S = . Decode individual S according to Algorithm 4-1.
Step7. Among all the servers, there exists a server k with
the lowest CPU utilization. Let

= =
+ + =
F
q
q
q
k
F
q
q
q
k
k k
CR NR CM NM CS CO add
1 1
) ( ) (
.
Step8. Add map tasks: Denote all tasks which can be
assigned on server k as set
k
MM . There exists a map task
k
MM p and k s
p
. For this task, pick an integer
] , 1 [ F s which satisfies

+
= =

1
1 1
s
q
q
s
q
q
m p m .
If 0 <
p
CM add , go to step9; otherwise, let k s
p
=
and
p
CM add add = , go to step8.
Step9. Add reduce tasks: There exists task
] , 1 [ v m p + and k s
p
. For this task, pick an integer
] , 1 [ F s which satisfies

+
= =
+ +
1
1 1
s
q
q
s
q
q
r m p r m .
If 0 <
p
CR add , go to step10; otherwise, let
k s
p
= and
p
CR add add = , go to step9.
Step10. If f f < , then S is better than S . Let S S = , go
to step7; otherwise, stop.
F. An energy-efficient multi-task scheduling algorithm
based on MapReduce
Algorithm 4-6
Step1. Initializing. Generate an initial population P .
Modify each individual according to Algorithm 4-2, and
compute its fitness values. Set generation number 0 = t .
Step2. Crossover. Execute crossover by Algorithm 4-3.
The offspring set is denoted as 1 P and compute each
individuals fitness value.
Step3. Mutation. Execute mutation on 1 P by Algorithm
4-4. The offspring set is denoted as 2 P and compute each
individuals fitness value.
Step4. Elitist strategy. Sort the individuals in set
2 1 P P P * * according to its fitness value, and select the
best k individuals directly to form the next generation
population, while the others are selected by using roulette
wheel method on the set 2 1 P P P * * .
Step5. If stopping criterion is not met, let 1 + = t t , go to
step2; otherwise, stop.
60
V. EXPERIMENTS AND ANALYSIS
A. Parameter values
Given that there are 200 servers in a data center and 2
projects need to be processed. The data sizes of the projects
are 500G and 750G respectively, which means 8000
1
= m
and 12000
2
= m . Suppose that the number of reduce tasks
required for the two projects are 180
1
= r and 270
2
= r
respectively. Based on a 3-year amortization schedule for
servers in a data center, different server may have different
optimal performance-energy point for how long it has been
used. Here we assume that 1/3 servers have been used for
one year with its optimal point of 0.9 and other 1/3 servers
have been used for two years with its optimal point of 0.7,
while the others with its optimal point of 0.5. Take random
real numbers over ] 35 . 0 , 0 [ as servers initial CPU utilization
value. We set some special initial states of servers as follows:
5 . 0
5
= CS ; 7 . 0
25
= CS ; 9 . 0
45
= CS ;
5 . 0
75
= CS ; 7 . 0
95
= CS ; 9 . 0
115
= CS ;
5 . 0
145
= CS ; 7 . 0
165
= CS ; 9 . 0
195
= CS ;
We adopt the following parameters values for genetic
algorithm: population size 100 = X ; crossover probability
6 . 0 = pc ; mutation probability 02 . 0 = pm ; elitist number
5 = k and stop criterion 1000 = t .
B. Simulation results and comparions
We conduct three sets of comparative experiments
between the proposed algorithm and the general load
balancing method based on MapReduce.
Comparison 1: Set 0055 . 0
1
= CM , 0046 . 0
2
= CM
0017 . 0
1
= CR and 0022 . 0 = CR . The experimental results of
the proposed algorithm in this paper are shown in Figure 3(a),
while the results of the load balancing method are shown in
Figure 3(b).
From Figure 3(a), it can be seen that the proposed
algorithm in this paper can effectively schedule multi-task on
servers according to each servers optimal performance-
energy point. For the 5
th
, 75
th
and 145
th
servers with the same
initial CPU utilization of 0.5, the proposed algorithm only
assign tasks on the 5
th
and 75
th
servers, while the 145
th
server
stays at its original state, since the optimal points of these
three servers are 0.9, 0.7 and 0.5. Similarly, for the 25
th
, 95
th

and 165
th
servers with the same initial CPU utilization of 0.7,
the proposed algorithm only assign tasks on the 25
th
server.
Also, for the 45
th
, 115
th
and 195
th
servers with the same
initial CPU utilization of 0.9, the proposed algorithm does
not assign any tasks on them.
Comparison 2Suppose that the input data is relatively
small. Set 005 . 0
1
= CM , 004 . 0
2
= CM , 0015 . 0
1
= CR and
002 . 0 = CR . The experimental results of the proposed
algorithm are shown in Figure 4(a), while the results of the
load balancing method are shown in Figure 4(b).
From Figure 4(a), it can be seen that even when the input
data is relatively small, the proposed algorithm can
effectively schedule multi-task on servers according to each
servers optimal performance-energy point. Although the
CPU utilizations of all servers are not able to reach their
optimal points after the scheduling, each servers CPU
utilization is near as much as possible to its optimal point.
Comparison 3Suppose that the input data is relatively
large. Set 006 . 0
1
= CM , 005 . 0
2
= CM , 002 . 0
1
= CR and
0025 . 0 = CR . The experimental results of the proposed
algorithm in this paper are shown in Fig. 5-3(a), while the
results of the load balancing method based on MapReduce
are shown in Figure 5(b).
From Figure 5(a), it can be seen that even when the input
data to be processed is relatively large, the proposed
algorithm in this paper can effectively schedule multi-task on
servers according to each servers optimal performance-
energy point. Although the CPU utilizations of all servers are
beyond their optimal points after the scheduling, each
servers CUP utilization is near as much as possible to its
optimal point.
VI. CONCLUSION
This paper mainly focuses on how to improve the energy
efficiency of servers through appropriate scheduling
strategies. We propose a new energy-efficient multi-task
scheduling model based on MapReduce. Meanwhile, we
design a practical encoding and decoding method for the
individuals, and construct an overall energy efficiency
function of the servers as the fitness value of the individual.
Also, in order to accelerate the convergent speed and
enhance the searching ability of our algorithm, a local search
operator is introduced. Finally, the experiments show that the
proposed algorithm is effective and efficient.
ACKNOWLEDGMENT
This work was supported by National Natural Science
Foundation of China (No.60873099), the PhD Programs
Foundation of Education Ministry of China
(No.20090203110005) and the Fundamental Research Funds
for the Central Universities (No. k50510030014).
REFERENCES
[1] Mell P, Grance T. The NIST definition of cloud computing[J].
National Institute of Standards and Technology, 2009,53(6).
[2] Hamilton J. Cooperative expendable micro-slice servers (CEMS): low
cost, low power servers for internet-scale services[C]. Citeseer.
[3] Belady C. The Green Grid Data Center Power Efficiency Metrics:
PUE and DCiE [J]. White paper: Metrics & Measurements, 2007.
[4] ENERGY S. Report to Congress on Server and Data Center Energy
Efficiency Public Law 109-431[J]. Public law, 2007,109:431.
[5] Efficiency measurements .http://www.google.com/corporate
/datacenter/efficiency-measurements.html.
[6] Beloglazov A, Buyya R. Energy efficient allocation of virtual
machines in cloud data centers, 2010[C]. IEEE/ACM International
Conference on Cluster, Cloud and Grid Computing.
[7] Berl A, Gelenbe E, Di Girolamo M, et al. Energy-efficient cloud
computing[J]. The Computer Journal, 2010,53(7):1045.
[8] Buyya R, Beloglazov A, Abawajy J. Energy-Efficient management of
data center resources for cloud computing: A vision, architectural
elements, and open challenges[J]. Arxiv preprint arXiv:1006.0308,
2010.
61
[9] Baliga J, Ayre R W A, Hinton K, et al. Green cloud computing:
Balancing energy in processing, storage, and transport[J].
Proceedings of the IEEE, 2011,99(1):149-167.
[10] Barroso L A, H Lzle U. The datacenter as a computer: An
introduction to the design of warehouse-scale machines[J]. Synthesis
Lectures on Computer Architecture, 2009,4(1):1-108.
[11] Miller R. Google s Chiller-less Data Center [J].
Datacenterknowledge.com, 2009.
[12] Srikantaiah S, Kansal A, Zhao F. Energy aware consolidation for
cloud computing, 2008[C]. USENIX Association.
[13] Dean J, Ghemawat S. MapReduce: Simplified data processing on
large clusters[J]. Communications of the ACM, 2008,51(1):107-113
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
rInitial state
Project 1
Project 2
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
rInitial state
Project 1
Project 2

Figure 3.(a) Comparative experiment 1 Figure 3.(b) Comparative experiment 1
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
r
Initial state
Project 1
Project 2
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
r
Initial state
Project 1
Project 2

Figure 4.(a) Comparative experiment 2 Figure 4.(b) Comparative experiment 2
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
r
Initial state
Project 1
Project 2
0 20 40 60 80 100 120 140 160 180 200
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Server No.
C
P
U

u
t
i
l
i
z
a
t
i
o
n

o
f

e
a
c
h

s
e
r
v
e
r
Initial state
Project 1
Project 2

Figure 5.(a) Comparative experiment 3 Figure 5.(b) Comparative experiment 3
62

You might also like