13
Research Article A Distributed Parallel Genetic Algorithm of Placement Strategy for Virtual Machines Deployment on Cloud Platform Yu-Shuang Dong, 1 Gao-Chao Xu, 1,2 and Xiao-Dong Fu 1 1 College of Computer Science and Technology, Jilin University, Changchun 130012, China 2 Key Laboratory of Symbolic Computation and Knowledge Engineering of Ministry of Education, Jilin University, Changchun 130012, China Correspondence should be addressed to Yu-Shuang Dong; [email protected] Received 10 March 2014; Revised 17 June 2014; Accepted 17 June 2014; Published 3 July 2014 Academic Editor: Su Fong Chien Copyright © 2014 Yu-Shuang Dong et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. e cloud platform provides various services to users. More and more cloud centers provide infrastructure as the main way of operating. To improve the utilization rate of the cloud center and to decrease the operating cost, the cloud center provides services according to requirements of users by sharding the resources with virtualization. Considering both QoS for users and cost saving for cloud computing providers, we try to maximize performance and minimize energy cost as well. In this paper, we propose a distributed parallel genetic algorithm (DPGA) of placement strategy for virtual machines deployment on cloud platform. It executes the genetic algorithm parallelly and distributedly on several selected physical hosts in the first stage. en it continues to execute the genetic algorithm of the second stage with solutions obtained from the first stage as the initial population. e solution calculated by the genetic algorithm of the second stage is the optimal one of the proposed approach. e experimental results show that the proposed placement strategy of VM deployment can ensure QoS for users and it is more effective and more energy efficient than other placement strategies on the cloud platform. 1. Introduction Cloud computing is at the forefront of information technol- ogy. e internal system of cloud computing can be seen as a collection of a set of services [1], including infrastructure layer (IaaS), platform layer (PaaS), and application layer (SaaS). With the development of cloud computing, more and more cloud centers provide IaaS as the main way of operating. In order to improve the utilization rate of cloud center and to decrease the operating costs, virtualization technology has been applied to the cloud computing [24]. It provides services as required to users by sharding the resources with virtualization. But the distribution of virtual machines (VMs) will become sparser on cloud center with creating and closing the VMs. e placement problem of VMs has attracted more and more attention and became a research hotspot in cloud computing area quickly. It can be regarded as packing problem and has been proved as a NP-completeness problem [5]. Most of early researches were focused on increasing resources utilization rate in considering the system per- formance. With the increase of cloud center scale, energy saving has attracted significant attention in both industry and academia area. In order to reduce operating costs by saving energy, the concept of green cloud is proposed. Most researches are focused on VMs consolidation with living migration technology to reduce energy costs. If we take the energy costs into consideration as a parameter in the VMs deployment process, it can effectively reduce live migration frequency for decreasing the energy costs in maintenance of cloud center. Genetic algorithm has been appreciated by academic circles as a solution of the VMs placement problem because of its speediness and adaptability advantages. Furthermore, parallel genetic algorithm can be used to solve the relatively complex problems. Even so, the genetic algorithm probably terminates before it gets a good enough solution in the case that there are a large number of servers in cloud platform and Hindawi Publishing Corporation e Scientific World Journal Volume 2014, Article ID 259139, 12 pages http://dx.doi.org/10.1155/2014/259139

Research Article A Distributed Parallel Genetic Algorithm ...downloads.hindawi.com/journals/tswj/2014/259139.pdf · that simultaneously minimizes total resource wastage and ... is

  • Upload
    doduong

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Research ArticleA Distributed Parallel Genetic Algorithm of Placement Strategyfor Virtual Machines Deployment on Cloud Platform

Yu-Shuang Dong1 Gao-Chao Xu12 and Xiao-Dong Fu1

1 College of Computer Science and Technology Jilin University Changchun 130012 China2 Key Laboratory of Symbolic Computation and Knowledge Engineering of Ministry of EducationJilin University Changchun 130012 China

Correspondence should be addressed to Yu-Shuang Dong yushuangdonggmailcom

Received 10 March 2014 Revised 17 June 2014 Accepted 17 June 2014 Published 3 July 2014

Academic Editor Su Fong Chien

Copyright copy 2014 Yu-Shuang Dong et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

The cloud platform provides various services to users More and more cloud centers provide infrastructure as the main way ofoperating To improve the utilization rate of the cloud center and to decrease the operating cost the cloud center provides servicesaccording to requirements of users by sharding the resources with virtualization Considering both QoS for users and cost savingfor cloud computing providers we try to maximize performance and minimize energy cost as well In this paper we propose adistributed parallel genetic algorithm (DPGA) of placement strategy for virtualmachines deployment on cloud platform It executesthe genetic algorithm parallelly and distributedly on several selected physical hosts in the first stageThen it continues to execute thegenetic algorithm of the second stage with solutions obtained from the first stage as the initial population The solution calculatedby the genetic algorithm of the second stage is the optimal one of the proposed approach The experimental results show that theproposed placement strategy of VM deployment can ensure QoS for users and it is more effective and more energy efficient thanother placement strategies on the cloud platform

1 Introduction

Cloud computing is at the forefront of information technol-ogy The internal system of cloud computing can be seen as acollection of a set of services [1] including infrastructure layer(IaaS) platform layer (PaaS) and application layer (SaaS)With the development of cloud computing more and morecloud centers provide IaaS as the main way of operatingIn order to improve the utilization rate of cloud center andto decrease the operating costs virtualization technologyhas been applied to the cloud computing [2ndash4] It providesservices as required to users by sharding the resources withvirtualization But the distribution of virtualmachines (VMs)will become sparser on cloud center with creating and closingthe VMs The placement problem of VMs has attractedmore and more attention and became a research hotspot incloud computing area quickly It can be regarded as packingproblem and has been proved as a NP-completeness problem[5]

Most of early researches were focused on increasingresources utilization rate in considering the system per-formance With the increase of cloud center scale energysaving has attracted significant attention in both industryand academia area In order to reduce operating costs bysaving energy the concept of green cloud is proposed Mostresearches are focused on VMs consolidation with livingmigration technology to reduce energy costs If we take theenergy costs into consideration as a parameter in the VMsdeployment process it can effectively reduce live migrationfrequency for decreasing the energy costs in maintenance ofcloud center

Genetic algorithm has been appreciated by academiccircles as a solution of the VMs placement problem becauseof its speediness and adaptability advantages Furthermoreparallel genetic algorithm can be used to solve the relativelycomplex problems Even so the genetic algorithm probablyterminates before it gets a good enough solution in the casethat there are a large number of servers in cloud platform and

Hindawi Publishing Corporatione Scientific World JournalVolume 2014 Article ID 259139 12 pageshttpdxdoiorg1011552014259139

2 The Scientific World Journal

users need to deploy a certain number ofVMsThe traditionalparallel genetic algorithm is executed on single physical hostbut Amdahlrsquos law [6] showed that the performance of parallelprogram executed on single physical host is not much betterthan serial programThe researches [7 8] showed that we canget a better performance of parallel program by enlarging thescale of problem Therefore we propose a new distributedparallel genetic algorithm (DPGA) of placement strategywhich is executed on several physical hosts for the large-scaleVMs deployment problem This algorithm can get a betterand more accurate solution by increasing the iterative timesComparing with the deployment process the time cost ofdeployment strategy is relatively less Therefore we did nottake the time cost in consideration in DPGA We define theinitial population of the DPGA as initial total population andthe initial population of algorithm executing on each selectedhost as initial subpopulation We assign the performanceper watt as fitness value In order to ensure the coverageof the solution space we choose initial subpopulation fromsolution space dispersedly and averagely It executes the firststage genetic algorithm on several selected physical hosts tochoose initial subpopulation and get several solutions Thenit collects the solutions calculated by the first stage of DPGAand puts them into the second stage as initial populationFinally we get a relatively satisfied solution from the secondstage of DPGA

2 Relevant Work

The proposed question refers to finding the target hosts toplace the VMs In this paper relevant knowledge of DVFSwill be used in the standard for evaluating the solutionin considering of minimizing energy costs and ensuringperformance as wellThis subject has not been widely studiedin the field related to placement strategy forVMsdeploymentHowever many researches are focused on the placement ofapplications and services in the cloud environment [9ndash15]and many researchers have been working on data placementin the cloud center [16ndash19]

There are also some researches focused on the similarproblems von Laszewski et al have presented a schedulingalgorithm to allocate virtual machines in a DVFS-enabledcluster [20] The proposed algorithm was focused onscheduling virtual machines in a compute cluster to reducepower consumption via the technique of DVFS (dynamicvoltage and frequency scaling) It dynamically adjusts theCPU frequencies and voltages of the compute nodes in acluster without degrading the virtual machine performancebeyond unacceptable levels Recent studies have revealed thatthe network elements consume 10ndash20 of the total powerin the data center VMPlanner [21] optimized both virtualmachine placement and traffic flow routing so as to turn offas many unneeded network elements as possible for networkpower reduction in the virtualization-based data centers Ittook the advantage of the flexibility provided by dynamicVM migration and programmable flow-based routing tooptimize network power consumption while satisfyingnetwork traffic demands Ge et al have presented distributed

performance-directed DVS (dynamic voltage scaling)scheduling strategies for use in scalable power-aware HPC(high-performance computing) clusters [22] It uses DVStechnology in high-performance microprocessors to reducepower consumption during parallel application runs in thecase that peak CPU performance is not necessary due to loadimbalance communication delays and so forth VMPACS[23] is a multiobjective ant colony system algorithm forthe virtual machine placement problem The purpose ofVMPACS is to efficiently obtain a nondominated Pareto setthat simultaneously minimizes total resource wastage andpower consumptionMILP [24] proposed a holistic approachfor a large-scale cloud system where the cloud services areprovisioned by several data centers interconnected over thebackbone network It is a mixed integer linear programmingformulation that aims at virtualizing the backbone topologyand placing the VMs in inter- and intradata centers withthe objective of jointly optimized network delay and energysaving OVMP [25] is an optimal virtual machine placementalgorithm to provision the resources offered by multiplecloud providers It is based on an IaaS model which leveragesvirtualization technologies that can minimize the total costof resource in each plan for hosting virtual machines in amultiple cloud provider environment under future demandand price uncertainty The tradeoff between the advancereservation of resources and the allocation of on-demandresources is adjusted to be optimal It makes a decision basedon the optimal solution of stochastic integer programming(SIP) to rent resources from cloud providers Jing Tai Piaoproposed a network-aware virtual machine placement andmigration approach for data intensive applications in cloudcomputing environments to minimize the data transfer timeconsumption [26] It places the VMs on physical machineswith consideration of the network conditions between thephysical machines and the data storage It also considersthe scenario in which instable network condition changedthe data access behaviors and deteriorated the applicationperformance It migrates the VM to other physical machinesin order to deal with this scenario

3 Distributed Parallel Genetic Algorithm ofVMs Placement

There are 119908 physical hosts in the cloud platform andusers need 119899 VMs with (ℎ

0 ℎ1 ℎ2 ℎ

119899minus1)Hz CPU and

(1198980 1198981 1198982 119898

119899minus1)MRAM We assume that the physical

hosts in cloud center are DVFS [27] enabled and the cloudcenter can satisfy requirements of users namely 119908 is bigenough for 119899 We assume that 119908 ≫ 119899 and the physicalhosts are in the same network environment Solution spaceis recorded as follows 119875 = (119875

0 1198751 1198752 119875

119908minus1) We need

to find 119899 physical hosts to satisfy the requirements of usersto place the VMs The solution vector is as follows 119878 =

(1198780 1198781 1198782 119878

119899minus1) Remaining available CPU resource of

physical host 119875119894is as follows AF

119894= (1minus119880

119894)times119865119894119880119894is the CPU

utilization rate of 119875119894 The parameter 119865

119894is the CPU frequency

of 119875119894 Remaining available memory resource of physical host

119875119894is as follows AM

119894= TM

119894minus UM

119894minus RM TM

119894is the total

The Scientific World Journal 3

First stage

Second stage

User requests

Data center

Host

Host

1

Host1

Host g-1

Selection

Selection

Selection

Selection

Initial

Initial

Initial

solutions

solutions

Initial

Initial

solutions

solutions

Solution

Solution

Solution

Solution

No

No

No

Crossover

Crossover

Crossover

Crossover

Mutation

Mutation

Mutation

Mutation

Iteration

Iteration

Iteration

Iteration

Termination

Termination

Termination

Termination

Yes

Yes

Yes

Deployment

Figure 1 Distributed parallel genetic algorithm of VMs placement

memory size of 119875119894 UM119894is the used memory size of 119875

119894 RM is

the reserved memory size of the system 119875119894can be a member

of solutions only if AF119894gt ℎ and AM

119894gt 119898

From the view of users cloud center should select thephysical hosts with more remaining resources to load theVMs with the objective of improving the QoS From the viewof cloud operators cloud center should improve the utiliza-tion rates of resources and decrease the energy costs that aimat reducing the operating costs Taken together we assignthe performance per watt to evaluation standard namelymaximizing performance as well as minimizing energy costsAs shown in Figure 1 the idea of DPGA is divided intotwo stages In the first stage genetic algorithm is executedin parallel on 119892 selected physical hosts We select initialpopulations dispersedly and averagely by a certain step sizein solution space for these physical hosts Selection processchooses the solution vectors according to the probabilitywhich is proportional to the fitness valueThen the algorithmcrosses the selected solution vectors and mutates the crossedsolution vectors in the direction conducive to the fitnessvalue After crossover and mutation process the algorithmiterates the first stage until it meets the iterative terminalconditions In the second stage the algorithm collects thesolutions obtained fromeach selected physical host in the firststage and then it executes the genetic algorithm again as inthe first stage with collected solutions as initial population

31 Initial Population Generation in the First Stage Insteadof random way we assign the initial population for highercoverage rate in the initial population generating process

Initial vector set 119908119899 as jump volume among the vectormembersWe select 119892 initial vectors as initial solution vectorsand set 119908119899119892 as jump volume among the initial solutionsWe set 119908119899119892119892 as jump volume among the initial solutionsof the selected physical hosts To ensure the algorithmexecuting correctly in this paper we assume that 119908119899119892119892 gt1 In physical host 119909 (0 le 119909 lt 119892) the vector member119876119909119910119911(0 le 119911 lt 119899) of initial solution vector 119878

119909119910(0 le 119910 lt 119892) is

as follows

119876119909119910119911=

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 le 119908

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899minus119908

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 gt 119908

(1)

Number 119909 is the serial number of the physical host whichis selected to execute the first stage algorithm Number 119910is the solution vector serial number of the physical host 119909Number 119911 is the vector member serial number of the solutionvector 119910

For instance we set 119908 = 1000 119899 = 10 and 119892 = 4 Theinitial population is showed in Table 1

32 Fitness Calculation We assign the performance per wattas fitness value The performance increment of physicalhost 119876

119909119910119911is recorded as Δ119865

119909119910119911times 119879 Δ119865

119909119910119911is the CPU

frequency increment of physical host 119876119909119910119911

and 119879 is the VMwork time The energy consumption increment of physicalhost 119876

119909119910119911is recorded as Δ119864

119909119910119911 The VCPU frequencies of

placement VMs are (ℎ0 ℎ1 ℎ2 ℎ

119899minus1)Hz so Δ119865

1199091199100= ℎ0

Δ1198651199091199101

= ℎ1 Δ119865

119909119910(119899minus1)= ℎ119899minus1

The relationship among

4 The Scientific World Journal

Table 1 An example of initial population in the first stage

Physical host (119909) Initial solution vector (119910) Member of initial solution vector

0

0 (P0 P100 P200 P300 P400 P500 P600 P700 P800 P900)1 (P25 P125 P225 P325 P425 P525 P625 P725 P825 P925)2 (P50 P150 P250 P350 P450 P550 P650 P750 P850 P950)3 (P75 P175 P275 P375 P475 P575 P675 P775 P875 P975)

1

0 (P6 P106 P206 P306 P406 P506 P606 P706 P806 P906)1 (P31 P131 P231 P331 P431 P531 P631 P731 P831 P931)2 (P56 P156 P256 P356 P456 P556 P656 P756 P856 P956)3 (P81 P181 P281 P381 P481 P581 P681 P781 P881 P981)

2

0 (P12 P112 P212 P312 P412 P512 P612 P712 P812 P912)1 (P37 P137 P237 P337 P437 P537 P637 P737 P837 P937)2 (P62 P162 P262 P362 P462 P562 P662 P762 P862 P962)3 (P87 P187 P287 P387 P487 P587 P687 P787 P887 P987)

3

0 (P18 P118 P218 P318 P418 P518 P618 P718 P818 P918)1 (P43 P143 P243 P343 P443 P543 P643 P743 P843 P943)2 (P68 P168 P268 P368 P468 P568 P668 P768 P868 P968)3 (P93 P193 P293 P393 P493 P593 P693 P793 P893 P993)

energy voltage and frequency in CMOS circuits [27] isrelated by

119864 = 119862 times 119865 times 1198812times 119879 119865 = 119870 times

(119881 minus 119881119905)2

119881

(2)

where 119864 is energy consumption 119862 is CPU circuit switchingcapacity 119865 is CPU frequency 119881 is CPU voltage 119870 is afactorwhich depends on technology and119881119905 is CPU thresholdvoltage By formula (2) we can get the relationship betweenvoltage and frequency as follows

119881 =radic119865 times 119881119905

119870

+

1198652

4 times 1198702+ 119881119905 +

119865

2 times 119870

(3)

We can also get the energy consumption increment ofphysical host 119876

119909119910119911as follows

Δ119864119909119910119911= 119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

times 119879

minus 119862119909119910119911times 119865119909119910119911times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

times 119879

(4)

It updates the 119865119909119910119911

= 119865119909119910119911

+ ℎ119911dynamically and

temporarily after Δ119864119909119910119911

calculation The updated 119865119909119910119911

onlyworks in the process of the fitness value calculation forcurrent solution vector The fitness value of the algorithm isthe ratio of the incremental performance and incrementalpower consumption after deploying the VMs according tothe solution vector Thus the fitness value 119868

119909119910of the solution

vector 119878119909119910

in the proposed VM placement strategy can beexpressed as follows

119868119909119910=

sum119899minus1

119911=0Δ119865119909119910119911times 119879

sum119899minus1

119911=0Δ119864119909119910119911

=

119899minus1

sum

119911=0

ℎ119911

times(

119899minus1

sum

119911=0

119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

minus 119862119909119910119911times 119865119909119910119911

times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

)

minus1

(5)

The Scientific World Journal 5

33 Selection Crossover and Mutation in the First StageSelecting operations choose the solution vectors accordingto the probability in the direction proportional to the fitnessvalue The selected solution vectors with higher fitness valuewill get more opportunities to be inherited by succeedinggeneration The selection probability 120573

119909119910of solution vector

119878119909119910

is as follows

120573119909119910=

119868119909119910

sum119892minus1

119886=0119868119909119886

(6)

The selection probability area 120572119909119910

of solution vector 119878119909119910

between 0 and 1 is as follows

120572119909119910=

[0 120573119909119910) 119910 = 0

[

119910minus1

sum

119886=0

120573119909119886

119910

sum

119886=0

120573119909119886] 0 lt 119910 lt 119892 minus 1

(

119910minus1

sum

119886=0

120573119909119886 1] 119910 = 119892 minus 1

(7)

Then selection process generates 119892 random numbersbetween 0 and 1 It selects 119892 solution vectors according to 119892random numbers which appear in probability area

In crossover process we use the multipoint crossovermethod with self-adaptive crossover rate [28] We set theinitial crossover rate with 1 Firstly crossover process calcu-lates the crossover rate for the solution vectors of currentgeneration We record 120577pre as the crossover rate of previousgeneration solution vectors

The average fitness value of current generation solutionvectors is as follows

119868119909 average =

sum119892minus1

119894=0119868119909119894

119892

(8)

119868119909119894is the fitness value of the current generation solution

vector The average fitness value of previous generationsolution vectors is as follows

119868pre119909 average =

sum119892minus1

119894=0119868pre119909119894

119892

(9)

119868pre119909119894

is the fitness value of the previous generation solutionvectorThe crossover rate 120577 of the current generation solutionvectors is as follows

120577 = 120577pretimes (1 minus

119868119909 average minus 119868

pre119909 average

119868pre119909 average

) (10)

We assume that 119868119909max is the largest fitness value of the

solution vectors Crossover process uses the random matingstrategy for mating the population For each pair of matingsolution vectors we assume that 119868

119909119910is the bigger fitness value

of the two solution vectors The crossover rate 120577119909119910

of this pairof mating solution vectors is as follows

120577119909119910= 120577 times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(11)

If this pair of mating solution vectors needs to be crossedaccording to crossover rate 120577

119909119910 crossover process generates 119899

random numbers of 0 or 1 The position will be the crossoverpoint if the random number is 1The process crosses this pairof mating solution vectors according to the crossover points

We use the multipoint mutation method with self-adaptivemutation rate [28] as in the crossover process Firstlythe mutation process calculates the mutation rate for thesolution vectors We assume that 119868

119909max is the largest fitnessvalue of the solution vectors 119868

119909119910is the fitness value of solution

vector 119878119909119910 The mutation rate 120575

119909119910of 119878119909119910

is as follows

120575119909119910=

120577

119899

times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(12)

Then the mutation process sets the mutation points for119878119909119910

according to mutation rate 120575119909119910 If the mutation process

sets the point as a mutation point it records the relatednumber with 1 otherwise it records the related number with0 The solution vector is an incorrect solution after crossoverif the number 120579 of a physical host that appears in solutionvector is bigger than the number 120593 of VMs that can be loadedin this physical host In this case we set 120579-120593mutation points(set the related number with 1) randomly on the position ofthe physical host in solution vector For example there aretwo solution vectors (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875667

119875701

119875899

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875405

119875653

119875878

) the crossover point is 8 and then the solution vectorsafter crossover are (119875

51198751411987554119875189

119875201

119875323

119875405

119875405

119875653

119875878

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875667

119875701

119875899

)The solution vector (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875405

119875653

119875878

) is an incorrect solution if the remaining availableresources of 119875

405only can load one VM So we set 119875

405as

mutation pointAfter determining the mutation points the mutation

process continues to mutate the mutation points In initialpopulation generation process we take the coverage of thesolution space into consideration so the mutation processmutates the mutation point with the scope of 119908119899119892119892 Asfor 119875119894 the mutation interval is as follows

[119875119894minus119908119899119892119892+119908

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 lt 0

[119875119894minus119908119899119892119892

119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 ge 0 119894 + 119908119899119892119892 le 119908 minus 1

[119875119894minus119908119899119892119892

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892minus(119908minus1)

]

119894 + 119908119899119892119892 gt 119908 minus 1

(13)

Because of the indeterminacy of the mutation pointsmutation process mutates the mutation points accordingto the sequence of the mutation points According to thenonmutation points (the relevant position of randomnumberis 0) mutation process updates the information of membersin mutation interval and deletes the members of mutationinterval if the remaining resources of relevant physical

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

2 The Scientific World Journal

users need to deploy a certain number ofVMsThe traditionalparallel genetic algorithm is executed on single physical hostbut Amdahlrsquos law [6] showed that the performance of parallelprogram executed on single physical host is not much betterthan serial programThe researches [7 8] showed that we canget a better performance of parallel program by enlarging thescale of problem Therefore we propose a new distributedparallel genetic algorithm (DPGA) of placement strategywhich is executed on several physical hosts for the large-scaleVMs deployment problem This algorithm can get a betterand more accurate solution by increasing the iterative timesComparing with the deployment process the time cost ofdeployment strategy is relatively less Therefore we did nottake the time cost in consideration in DPGA We define theinitial population of the DPGA as initial total population andthe initial population of algorithm executing on each selectedhost as initial subpopulation We assign the performanceper watt as fitness value In order to ensure the coverageof the solution space we choose initial subpopulation fromsolution space dispersedly and averagely It executes the firststage genetic algorithm on several selected physical hosts tochoose initial subpopulation and get several solutions Thenit collects the solutions calculated by the first stage of DPGAand puts them into the second stage as initial populationFinally we get a relatively satisfied solution from the secondstage of DPGA

2 Relevant Work

The proposed question refers to finding the target hosts toplace the VMs In this paper relevant knowledge of DVFSwill be used in the standard for evaluating the solutionin considering of minimizing energy costs and ensuringperformance as wellThis subject has not been widely studiedin the field related to placement strategy forVMsdeploymentHowever many researches are focused on the placement ofapplications and services in the cloud environment [9ndash15]and many researchers have been working on data placementin the cloud center [16ndash19]

There are also some researches focused on the similarproblems von Laszewski et al have presented a schedulingalgorithm to allocate virtual machines in a DVFS-enabledcluster [20] The proposed algorithm was focused onscheduling virtual machines in a compute cluster to reducepower consumption via the technique of DVFS (dynamicvoltage and frequency scaling) It dynamically adjusts theCPU frequencies and voltages of the compute nodes in acluster without degrading the virtual machine performancebeyond unacceptable levels Recent studies have revealed thatthe network elements consume 10ndash20 of the total powerin the data center VMPlanner [21] optimized both virtualmachine placement and traffic flow routing so as to turn offas many unneeded network elements as possible for networkpower reduction in the virtualization-based data centers Ittook the advantage of the flexibility provided by dynamicVM migration and programmable flow-based routing tooptimize network power consumption while satisfyingnetwork traffic demands Ge et al have presented distributed

performance-directed DVS (dynamic voltage scaling)scheduling strategies for use in scalable power-aware HPC(high-performance computing) clusters [22] It uses DVStechnology in high-performance microprocessors to reducepower consumption during parallel application runs in thecase that peak CPU performance is not necessary due to loadimbalance communication delays and so forth VMPACS[23] is a multiobjective ant colony system algorithm forthe virtual machine placement problem The purpose ofVMPACS is to efficiently obtain a nondominated Pareto setthat simultaneously minimizes total resource wastage andpower consumptionMILP [24] proposed a holistic approachfor a large-scale cloud system where the cloud services areprovisioned by several data centers interconnected over thebackbone network It is a mixed integer linear programmingformulation that aims at virtualizing the backbone topologyand placing the VMs in inter- and intradata centers withthe objective of jointly optimized network delay and energysaving OVMP [25] is an optimal virtual machine placementalgorithm to provision the resources offered by multiplecloud providers It is based on an IaaS model which leveragesvirtualization technologies that can minimize the total costof resource in each plan for hosting virtual machines in amultiple cloud provider environment under future demandand price uncertainty The tradeoff between the advancereservation of resources and the allocation of on-demandresources is adjusted to be optimal It makes a decision basedon the optimal solution of stochastic integer programming(SIP) to rent resources from cloud providers Jing Tai Piaoproposed a network-aware virtual machine placement andmigration approach for data intensive applications in cloudcomputing environments to minimize the data transfer timeconsumption [26] It places the VMs on physical machineswith consideration of the network conditions between thephysical machines and the data storage It also considersthe scenario in which instable network condition changedthe data access behaviors and deteriorated the applicationperformance It migrates the VM to other physical machinesin order to deal with this scenario

3 Distributed Parallel Genetic Algorithm ofVMs Placement

There are 119908 physical hosts in the cloud platform andusers need 119899 VMs with (ℎ

0 ℎ1 ℎ2 ℎ

119899minus1)Hz CPU and

(1198980 1198981 1198982 119898

119899minus1)MRAM We assume that the physical

hosts in cloud center are DVFS [27] enabled and the cloudcenter can satisfy requirements of users namely 119908 is bigenough for 119899 We assume that 119908 ≫ 119899 and the physicalhosts are in the same network environment Solution spaceis recorded as follows 119875 = (119875

0 1198751 1198752 119875

119908minus1) We need

to find 119899 physical hosts to satisfy the requirements of usersto place the VMs The solution vector is as follows 119878 =

(1198780 1198781 1198782 119878

119899minus1) Remaining available CPU resource of

physical host 119875119894is as follows AF

119894= (1minus119880

119894)times119865119894119880119894is the CPU

utilization rate of 119875119894 The parameter 119865

119894is the CPU frequency

of 119875119894 Remaining available memory resource of physical host

119875119894is as follows AM

119894= TM

119894minus UM

119894minus RM TM

119894is the total

The Scientific World Journal 3

First stage

Second stage

User requests

Data center

Host

Host

1

Host1

Host g-1

Selection

Selection

Selection

Selection

Initial

Initial

Initial

solutions

solutions

Initial

Initial

solutions

solutions

Solution

Solution

Solution

Solution

No

No

No

Crossover

Crossover

Crossover

Crossover

Mutation

Mutation

Mutation

Mutation

Iteration

Iteration

Iteration

Iteration

Termination

Termination

Termination

Termination

Yes

Yes

Yes

Deployment

Figure 1 Distributed parallel genetic algorithm of VMs placement

memory size of 119875119894 UM119894is the used memory size of 119875

119894 RM is

the reserved memory size of the system 119875119894can be a member

of solutions only if AF119894gt ℎ and AM

119894gt 119898

From the view of users cloud center should select thephysical hosts with more remaining resources to load theVMs with the objective of improving the QoS From the viewof cloud operators cloud center should improve the utiliza-tion rates of resources and decrease the energy costs that aimat reducing the operating costs Taken together we assignthe performance per watt to evaluation standard namelymaximizing performance as well as minimizing energy costsAs shown in Figure 1 the idea of DPGA is divided intotwo stages In the first stage genetic algorithm is executedin parallel on 119892 selected physical hosts We select initialpopulations dispersedly and averagely by a certain step sizein solution space for these physical hosts Selection processchooses the solution vectors according to the probabilitywhich is proportional to the fitness valueThen the algorithmcrosses the selected solution vectors and mutates the crossedsolution vectors in the direction conducive to the fitnessvalue After crossover and mutation process the algorithmiterates the first stage until it meets the iterative terminalconditions In the second stage the algorithm collects thesolutions obtained fromeach selected physical host in the firststage and then it executes the genetic algorithm again as inthe first stage with collected solutions as initial population

31 Initial Population Generation in the First Stage Insteadof random way we assign the initial population for highercoverage rate in the initial population generating process

Initial vector set 119908119899 as jump volume among the vectormembersWe select 119892 initial vectors as initial solution vectorsand set 119908119899119892 as jump volume among the initial solutionsWe set 119908119899119892119892 as jump volume among the initial solutionsof the selected physical hosts To ensure the algorithmexecuting correctly in this paper we assume that 119908119899119892119892 gt1 In physical host 119909 (0 le 119909 lt 119892) the vector member119876119909119910119911(0 le 119911 lt 119899) of initial solution vector 119878

119909119910(0 le 119910 lt 119892) is

as follows

119876119909119910119911=

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 le 119908

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899minus119908

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 gt 119908

(1)

Number 119909 is the serial number of the physical host whichis selected to execute the first stage algorithm Number 119910is the solution vector serial number of the physical host 119909Number 119911 is the vector member serial number of the solutionvector 119910

For instance we set 119908 = 1000 119899 = 10 and 119892 = 4 Theinitial population is showed in Table 1

32 Fitness Calculation We assign the performance per wattas fitness value The performance increment of physicalhost 119876

119909119910119911is recorded as Δ119865

119909119910119911times 119879 Δ119865

119909119910119911is the CPU

frequency increment of physical host 119876119909119910119911

and 119879 is the VMwork time The energy consumption increment of physicalhost 119876

119909119910119911is recorded as Δ119864

119909119910119911 The VCPU frequencies of

placement VMs are (ℎ0 ℎ1 ℎ2 ℎ

119899minus1)Hz so Δ119865

1199091199100= ℎ0

Δ1198651199091199101

= ℎ1 Δ119865

119909119910(119899minus1)= ℎ119899minus1

The relationship among

4 The Scientific World Journal

Table 1 An example of initial population in the first stage

Physical host (119909) Initial solution vector (119910) Member of initial solution vector

0

0 (P0 P100 P200 P300 P400 P500 P600 P700 P800 P900)1 (P25 P125 P225 P325 P425 P525 P625 P725 P825 P925)2 (P50 P150 P250 P350 P450 P550 P650 P750 P850 P950)3 (P75 P175 P275 P375 P475 P575 P675 P775 P875 P975)

1

0 (P6 P106 P206 P306 P406 P506 P606 P706 P806 P906)1 (P31 P131 P231 P331 P431 P531 P631 P731 P831 P931)2 (P56 P156 P256 P356 P456 P556 P656 P756 P856 P956)3 (P81 P181 P281 P381 P481 P581 P681 P781 P881 P981)

2

0 (P12 P112 P212 P312 P412 P512 P612 P712 P812 P912)1 (P37 P137 P237 P337 P437 P537 P637 P737 P837 P937)2 (P62 P162 P262 P362 P462 P562 P662 P762 P862 P962)3 (P87 P187 P287 P387 P487 P587 P687 P787 P887 P987)

3

0 (P18 P118 P218 P318 P418 P518 P618 P718 P818 P918)1 (P43 P143 P243 P343 P443 P543 P643 P743 P843 P943)2 (P68 P168 P268 P368 P468 P568 P668 P768 P868 P968)3 (P93 P193 P293 P393 P493 P593 P693 P793 P893 P993)

energy voltage and frequency in CMOS circuits [27] isrelated by

119864 = 119862 times 119865 times 1198812times 119879 119865 = 119870 times

(119881 minus 119881119905)2

119881

(2)

where 119864 is energy consumption 119862 is CPU circuit switchingcapacity 119865 is CPU frequency 119881 is CPU voltage 119870 is afactorwhich depends on technology and119881119905 is CPU thresholdvoltage By formula (2) we can get the relationship betweenvoltage and frequency as follows

119881 =radic119865 times 119881119905

119870

+

1198652

4 times 1198702+ 119881119905 +

119865

2 times 119870

(3)

We can also get the energy consumption increment ofphysical host 119876

119909119910119911as follows

Δ119864119909119910119911= 119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

times 119879

minus 119862119909119910119911times 119865119909119910119911times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

times 119879

(4)

It updates the 119865119909119910119911

= 119865119909119910119911

+ ℎ119911dynamically and

temporarily after Δ119864119909119910119911

calculation The updated 119865119909119910119911

onlyworks in the process of the fitness value calculation forcurrent solution vector The fitness value of the algorithm isthe ratio of the incremental performance and incrementalpower consumption after deploying the VMs according tothe solution vector Thus the fitness value 119868

119909119910of the solution

vector 119878119909119910

in the proposed VM placement strategy can beexpressed as follows

119868119909119910=

sum119899minus1

119911=0Δ119865119909119910119911times 119879

sum119899minus1

119911=0Δ119864119909119910119911

=

119899minus1

sum

119911=0

ℎ119911

times(

119899minus1

sum

119911=0

119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

minus 119862119909119910119911times 119865119909119910119911

times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

)

minus1

(5)

The Scientific World Journal 5

33 Selection Crossover and Mutation in the First StageSelecting operations choose the solution vectors accordingto the probability in the direction proportional to the fitnessvalue The selected solution vectors with higher fitness valuewill get more opportunities to be inherited by succeedinggeneration The selection probability 120573

119909119910of solution vector

119878119909119910

is as follows

120573119909119910=

119868119909119910

sum119892minus1

119886=0119868119909119886

(6)

The selection probability area 120572119909119910

of solution vector 119878119909119910

between 0 and 1 is as follows

120572119909119910=

[0 120573119909119910) 119910 = 0

[

119910minus1

sum

119886=0

120573119909119886

119910

sum

119886=0

120573119909119886] 0 lt 119910 lt 119892 minus 1

(

119910minus1

sum

119886=0

120573119909119886 1] 119910 = 119892 minus 1

(7)

Then selection process generates 119892 random numbersbetween 0 and 1 It selects 119892 solution vectors according to 119892random numbers which appear in probability area

In crossover process we use the multipoint crossovermethod with self-adaptive crossover rate [28] We set theinitial crossover rate with 1 Firstly crossover process calcu-lates the crossover rate for the solution vectors of currentgeneration We record 120577pre as the crossover rate of previousgeneration solution vectors

The average fitness value of current generation solutionvectors is as follows

119868119909 average =

sum119892minus1

119894=0119868119909119894

119892

(8)

119868119909119894is the fitness value of the current generation solution

vector The average fitness value of previous generationsolution vectors is as follows

119868pre119909 average =

sum119892minus1

119894=0119868pre119909119894

119892

(9)

119868pre119909119894

is the fitness value of the previous generation solutionvectorThe crossover rate 120577 of the current generation solutionvectors is as follows

120577 = 120577pretimes (1 minus

119868119909 average minus 119868

pre119909 average

119868pre119909 average

) (10)

We assume that 119868119909max is the largest fitness value of the

solution vectors Crossover process uses the random matingstrategy for mating the population For each pair of matingsolution vectors we assume that 119868

119909119910is the bigger fitness value

of the two solution vectors The crossover rate 120577119909119910

of this pairof mating solution vectors is as follows

120577119909119910= 120577 times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(11)

If this pair of mating solution vectors needs to be crossedaccording to crossover rate 120577

119909119910 crossover process generates 119899

random numbers of 0 or 1 The position will be the crossoverpoint if the random number is 1The process crosses this pairof mating solution vectors according to the crossover points

We use the multipoint mutation method with self-adaptivemutation rate [28] as in the crossover process Firstlythe mutation process calculates the mutation rate for thesolution vectors We assume that 119868

119909max is the largest fitnessvalue of the solution vectors 119868

119909119910is the fitness value of solution

vector 119878119909119910 The mutation rate 120575

119909119910of 119878119909119910

is as follows

120575119909119910=

120577

119899

times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(12)

Then the mutation process sets the mutation points for119878119909119910

according to mutation rate 120575119909119910 If the mutation process

sets the point as a mutation point it records the relatednumber with 1 otherwise it records the related number with0 The solution vector is an incorrect solution after crossoverif the number 120579 of a physical host that appears in solutionvector is bigger than the number 120593 of VMs that can be loadedin this physical host In this case we set 120579-120593mutation points(set the related number with 1) randomly on the position ofthe physical host in solution vector For example there aretwo solution vectors (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875667

119875701

119875899

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875405

119875653

119875878

) the crossover point is 8 and then the solution vectorsafter crossover are (119875

51198751411987554119875189

119875201

119875323

119875405

119875405

119875653

119875878

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875667

119875701

119875899

)The solution vector (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875405

119875653

119875878

) is an incorrect solution if the remaining availableresources of 119875

405only can load one VM So we set 119875

405as

mutation pointAfter determining the mutation points the mutation

process continues to mutate the mutation points In initialpopulation generation process we take the coverage of thesolution space into consideration so the mutation processmutates the mutation point with the scope of 119908119899119892119892 Asfor 119875119894 the mutation interval is as follows

[119875119894minus119908119899119892119892+119908

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 lt 0

[119875119894minus119908119899119892119892

119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 ge 0 119894 + 119908119899119892119892 le 119908 minus 1

[119875119894minus119908119899119892119892

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892minus(119908minus1)

]

119894 + 119908119899119892119892 gt 119908 minus 1

(13)

Because of the indeterminacy of the mutation pointsmutation process mutates the mutation points accordingto the sequence of the mutation points According to thenonmutation points (the relevant position of randomnumberis 0) mutation process updates the information of membersin mutation interval and deletes the members of mutationinterval if the remaining resources of relevant physical

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World Journal 3

First stage

Second stage

User requests

Data center

Host

Host

1

Host1

Host g-1

Selection

Selection

Selection

Selection

Initial

Initial

Initial

solutions

solutions

Initial

Initial

solutions

solutions

Solution

Solution

Solution

Solution

No

No

No

Crossover

Crossover

Crossover

Crossover

Mutation

Mutation

Mutation

Mutation

Iteration

Iteration

Iteration

Iteration

Termination

Termination

Termination

Termination

Yes

Yes

Yes

Deployment

Figure 1 Distributed parallel genetic algorithm of VMs placement

memory size of 119875119894 UM119894is the used memory size of 119875

119894 RM is

the reserved memory size of the system 119875119894can be a member

of solutions only if AF119894gt ℎ and AM

119894gt 119898

From the view of users cloud center should select thephysical hosts with more remaining resources to load theVMs with the objective of improving the QoS From the viewof cloud operators cloud center should improve the utiliza-tion rates of resources and decrease the energy costs that aimat reducing the operating costs Taken together we assignthe performance per watt to evaluation standard namelymaximizing performance as well as minimizing energy costsAs shown in Figure 1 the idea of DPGA is divided intotwo stages In the first stage genetic algorithm is executedin parallel on 119892 selected physical hosts We select initialpopulations dispersedly and averagely by a certain step sizein solution space for these physical hosts Selection processchooses the solution vectors according to the probabilitywhich is proportional to the fitness valueThen the algorithmcrosses the selected solution vectors and mutates the crossedsolution vectors in the direction conducive to the fitnessvalue After crossover and mutation process the algorithmiterates the first stage until it meets the iterative terminalconditions In the second stage the algorithm collects thesolutions obtained fromeach selected physical host in the firststage and then it executes the genetic algorithm again as inthe first stage with collected solutions as initial population

31 Initial Population Generation in the First Stage Insteadof random way we assign the initial population for highercoverage rate in the initial population generating process

Initial vector set 119908119899 as jump volume among the vectormembersWe select 119892 initial vectors as initial solution vectorsand set 119908119899119892 as jump volume among the initial solutionsWe set 119908119899119892119892 as jump volume among the initial solutionsof the selected physical hosts To ensure the algorithmexecuting correctly in this paper we assume that 119908119899119892119892 gt1 In physical host 119909 (0 le 119909 lt 119892) the vector member119876119909119910119911(0 le 119911 lt 119899) of initial solution vector 119878

119909119910(0 le 119910 lt 119892) is

as follows

119876119909119910119911=

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 le 119908

119875119909times119908119899119892119892+119910times119908119899119892+119911times119908119899minus119908

119909 times 119908119899119892119892 + 119910 times 119908119899119892 + 119911 times 119908119899 gt 119908

(1)

Number 119909 is the serial number of the physical host whichis selected to execute the first stage algorithm Number 119910is the solution vector serial number of the physical host 119909Number 119911 is the vector member serial number of the solutionvector 119910

For instance we set 119908 = 1000 119899 = 10 and 119892 = 4 Theinitial population is showed in Table 1

32 Fitness Calculation We assign the performance per wattas fitness value The performance increment of physicalhost 119876

119909119910119911is recorded as Δ119865

119909119910119911times 119879 Δ119865

119909119910119911is the CPU

frequency increment of physical host 119876119909119910119911

and 119879 is the VMwork time The energy consumption increment of physicalhost 119876

119909119910119911is recorded as Δ119864

119909119910119911 The VCPU frequencies of

placement VMs are (ℎ0 ℎ1 ℎ2 ℎ

119899minus1)Hz so Δ119865

1199091199100= ℎ0

Δ1198651199091199101

= ℎ1 Δ119865

119909119910(119899minus1)= ℎ119899minus1

The relationship among

4 The Scientific World Journal

Table 1 An example of initial population in the first stage

Physical host (119909) Initial solution vector (119910) Member of initial solution vector

0

0 (P0 P100 P200 P300 P400 P500 P600 P700 P800 P900)1 (P25 P125 P225 P325 P425 P525 P625 P725 P825 P925)2 (P50 P150 P250 P350 P450 P550 P650 P750 P850 P950)3 (P75 P175 P275 P375 P475 P575 P675 P775 P875 P975)

1

0 (P6 P106 P206 P306 P406 P506 P606 P706 P806 P906)1 (P31 P131 P231 P331 P431 P531 P631 P731 P831 P931)2 (P56 P156 P256 P356 P456 P556 P656 P756 P856 P956)3 (P81 P181 P281 P381 P481 P581 P681 P781 P881 P981)

2

0 (P12 P112 P212 P312 P412 P512 P612 P712 P812 P912)1 (P37 P137 P237 P337 P437 P537 P637 P737 P837 P937)2 (P62 P162 P262 P362 P462 P562 P662 P762 P862 P962)3 (P87 P187 P287 P387 P487 P587 P687 P787 P887 P987)

3

0 (P18 P118 P218 P318 P418 P518 P618 P718 P818 P918)1 (P43 P143 P243 P343 P443 P543 P643 P743 P843 P943)2 (P68 P168 P268 P368 P468 P568 P668 P768 P868 P968)3 (P93 P193 P293 P393 P493 P593 P693 P793 P893 P993)

energy voltage and frequency in CMOS circuits [27] isrelated by

119864 = 119862 times 119865 times 1198812times 119879 119865 = 119870 times

(119881 minus 119881119905)2

119881

(2)

where 119864 is energy consumption 119862 is CPU circuit switchingcapacity 119865 is CPU frequency 119881 is CPU voltage 119870 is afactorwhich depends on technology and119881119905 is CPU thresholdvoltage By formula (2) we can get the relationship betweenvoltage and frequency as follows

119881 =radic119865 times 119881119905

119870

+

1198652

4 times 1198702+ 119881119905 +

119865

2 times 119870

(3)

We can also get the energy consumption increment ofphysical host 119876

119909119910119911as follows

Δ119864119909119910119911= 119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

times 119879

minus 119862119909119910119911times 119865119909119910119911times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

times 119879

(4)

It updates the 119865119909119910119911

= 119865119909119910119911

+ ℎ119911dynamically and

temporarily after Δ119864119909119910119911

calculation The updated 119865119909119910119911

onlyworks in the process of the fitness value calculation forcurrent solution vector The fitness value of the algorithm isthe ratio of the incremental performance and incrementalpower consumption after deploying the VMs according tothe solution vector Thus the fitness value 119868

119909119910of the solution

vector 119878119909119910

in the proposed VM placement strategy can beexpressed as follows

119868119909119910=

sum119899minus1

119911=0Δ119865119909119910119911times 119879

sum119899minus1

119911=0Δ119864119909119910119911

=

119899minus1

sum

119911=0

ℎ119911

times(

119899minus1

sum

119911=0

119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

minus 119862119909119910119911times 119865119909119910119911

times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

)

minus1

(5)

The Scientific World Journal 5

33 Selection Crossover and Mutation in the First StageSelecting operations choose the solution vectors accordingto the probability in the direction proportional to the fitnessvalue The selected solution vectors with higher fitness valuewill get more opportunities to be inherited by succeedinggeneration The selection probability 120573

119909119910of solution vector

119878119909119910

is as follows

120573119909119910=

119868119909119910

sum119892minus1

119886=0119868119909119886

(6)

The selection probability area 120572119909119910

of solution vector 119878119909119910

between 0 and 1 is as follows

120572119909119910=

[0 120573119909119910) 119910 = 0

[

119910minus1

sum

119886=0

120573119909119886

119910

sum

119886=0

120573119909119886] 0 lt 119910 lt 119892 minus 1

(

119910minus1

sum

119886=0

120573119909119886 1] 119910 = 119892 minus 1

(7)

Then selection process generates 119892 random numbersbetween 0 and 1 It selects 119892 solution vectors according to 119892random numbers which appear in probability area

In crossover process we use the multipoint crossovermethod with self-adaptive crossover rate [28] We set theinitial crossover rate with 1 Firstly crossover process calcu-lates the crossover rate for the solution vectors of currentgeneration We record 120577pre as the crossover rate of previousgeneration solution vectors

The average fitness value of current generation solutionvectors is as follows

119868119909 average =

sum119892minus1

119894=0119868119909119894

119892

(8)

119868119909119894is the fitness value of the current generation solution

vector The average fitness value of previous generationsolution vectors is as follows

119868pre119909 average =

sum119892minus1

119894=0119868pre119909119894

119892

(9)

119868pre119909119894

is the fitness value of the previous generation solutionvectorThe crossover rate 120577 of the current generation solutionvectors is as follows

120577 = 120577pretimes (1 minus

119868119909 average minus 119868

pre119909 average

119868pre119909 average

) (10)

We assume that 119868119909max is the largest fitness value of the

solution vectors Crossover process uses the random matingstrategy for mating the population For each pair of matingsolution vectors we assume that 119868

119909119910is the bigger fitness value

of the two solution vectors The crossover rate 120577119909119910

of this pairof mating solution vectors is as follows

120577119909119910= 120577 times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(11)

If this pair of mating solution vectors needs to be crossedaccording to crossover rate 120577

119909119910 crossover process generates 119899

random numbers of 0 or 1 The position will be the crossoverpoint if the random number is 1The process crosses this pairof mating solution vectors according to the crossover points

We use the multipoint mutation method with self-adaptivemutation rate [28] as in the crossover process Firstlythe mutation process calculates the mutation rate for thesolution vectors We assume that 119868

119909max is the largest fitnessvalue of the solution vectors 119868

119909119910is the fitness value of solution

vector 119878119909119910 The mutation rate 120575

119909119910of 119878119909119910

is as follows

120575119909119910=

120577

119899

times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(12)

Then the mutation process sets the mutation points for119878119909119910

according to mutation rate 120575119909119910 If the mutation process

sets the point as a mutation point it records the relatednumber with 1 otherwise it records the related number with0 The solution vector is an incorrect solution after crossoverif the number 120579 of a physical host that appears in solutionvector is bigger than the number 120593 of VMs that can be loadedin this physical host In this case we set 120579-120593mutation points(set the related number with 1) randomly on the position ofthe physical host in solution vector For example there aretwo solution vectors (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875667

119875701

119875899

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875405

119875653

119875878

) the crossover point is 8 and then the solution vectorsafter crossover are (119875

51198751411987554119875189

119875201

119875323

119875405

119875405

119875653

119875878

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875667

119875701

119875899

)The solution vector (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875405

119875653

119875878

) is an incorrect solution if the remaining availableresources of 119875

405only can load one VM So we set 119875

405as

mutation pointAfter determining the mutation points the mutation

process continues to mutate the mutation points In initialpopulation generation process we take the coverage of thesolution space into consideration so the mutation processmutates the mutation point with the scope of 119908119899119892119892 Asfor 119875119894 the mutation interval is as follows

[119875119894minus119908119899119892119892+119908

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 lt 0

[119875119894minus119908119899119892119892

119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 ge 0 119894 + 119908119899119892119892 le 119908 minus 1

[119875119894minus119908119899119892119892

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892minus(119908minus1)

]

119894 + 119908119899119892119892 gt 119908 minus 1

(13)

Because of the indeterminacy of the mutation pointsmutation process mutates the mutation points accordingto the sequence of the mutation points According to thenonmutation points (the relevant position of randomnumberis 0) mutation process updates the information of membersin mutation interval and deletes the members of mutationinterval if the remaining resources of relevant physical

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

4 The Scientific World Journal

Table 1 An example of initial population in the first stage

Physical host (119909) Initial solution vector (119910) Member of initial solution vector

0

0 (P0 P100 P200 P300 P400 P500 P600 P700 P800 P900)1 (P25 P125 P225 P325 P425 P525 P625 P725 P825 P925)2 (P50 P150 P250 P350 P450 P550 P650 P750 P850 P950)3 (P75 P175 P275 P375 P475 P575 P675 P775 P875 P975)

1

0 (P6 P106 P206 P306 P406 P506 P606 P706 P806 P906)1 (P31 P131 P231 P331 P431 P531 P631 P731 P831 P931)2 (P56 P156 P256 P356 P456 P556 P656 P756 P856 P956)3 (P81 P181 P281 P381 P481 P581 P681 P781 P881 P981)

2

0 (P12 P112 P212 P312 P412 P512 P612 P712 P812 P912)1 (P37 P137 P237 P337 P437 P537 P637 P737 P837 P937)2 (P62 P162 P262 P362 P462 P562 P662 P762 P862 P962)3 (P87 P187 P287 P387 P487 P587 P687 P787 P887 P987)

3

0 (P18 P118 P218 P318 P418 P518 P618 P718 P818 P918)1 (P43 P143 P243 P343 P443 P543 P643 P743 P843 P943)2 (P68 P168 P268 P368 P468 P568 P668 P768 P868 P968)3 (P93 P193 P293 P393 P493 P593 P693 P793 P893 P993)

energy voltage and frequency in CMOS circuits [27] isrelated by

119864 = 119862 times 119865 times 1198812times 119879 119865 = 119870 times

(119881 minus 119881119905)2

119881

(2)

where 119864 is energy consumption 119862 is CPU circuit switchingcapacity 119865 is CPU frequency 119881 is CPU voltage 119870 is afactorwhich depends on technology and119881119905 is CPU thresholdvoltage By formula (2) we can get the relationship betweenvoltage and frequency as follows

119881 =radic119865 times 119881119905

119870

+

1198652

4 times 1198702+ 119881119905 +

119865

2 times 119870

(3)

We can also get the energy consumption increment ofphysical host 119876

119909119910119911as follows

Δ119864119909119910119911= 119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

times 119879

minus 119862119909119910119911times 119865119909119910119911times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

times 119879

(4)

It updates the 119865119909119910119911

= 119865119909119910119911

+ ℎ119911dynamically and

temporarily after Δ119864119909119910119911

calculation The updated 119865119909119910119911

onlyworks in the process of the fitness value calculation forcurrent solution vector The fitness value of the algorithm isthe ratio of the incremental performance and incrementalpower consumption after deploying the VMs according tothe solution vector Thus the fitness value 119868

119909119910of the solution

vector 119878119909119910

in the proposed VM placement strategy can beexpressed as follows

119868119909119910=

sum119899minus1

119911=0Δ119865119909119910119911times 119879

sum119899minus1

119911=0Δ119864119909119910119911

=

119899minus1

sum

119911=0

ℎ119911

times(

119899minus1

sum

119911=0

119862119909119910119911times (119865119909119910119911+ ℎ119911)

times (radic

(119865119909119910119911+ ℎ119911) times 119881119905

119909119910119911

119870119909119910119911

+

(119865119909119910119911+ ℎ119911)

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911+ ℎ119911

2 times 119870119909119910119911

)

2

minus 119862119909119910119911times 119865119909119910119911

times (radic

119865119909119910119911times 119881119905119909119910119911

119870119909119910119911

+

119865119909119910119911

2

4 times 119870119909119910119911

2

+ 119881119905119909119910119911+

119865119909119910119911

2 times 119870119909119910119911

)

2

)

minus1

(5)

The Scientific World Journal 5

33 Selection Crossover and Mutation in the First StageSelecting operations choose the solution vectors accordingto the probability in the direction proportional to the fitnessvalue The selected solution vectors with higher fitness valuewill get more opportunities to be inherited by succeedinggeneration The selection probability 120573

119909119910of solution vector

119878119909119910

is as follows

120573119909119910=

119868119909119910

sum119892minus1

119886=0119868119909119886

(6)

The selection probability area 120572119909119910

of solution vector 119878119909119910

between 0 and 1 is as follows

120572119909119910=

[0 120573119909119910) 119910 = 0

[

119910minus1

sum

119886=0

120573119909119886

119910

sum

119886=0

120573119909119886] 0 lt 119910 lt 119892 minus 1

(

119910minus1

sum

119886=0

120573119909119886 1] 119910 = 119892 minus 1

(7)

Then selection process generates 119892 random numbersbetween 0 and 1 It selects 119892 solution vectors according to 119892random numbers which appear in probability area

In crossover process we use the multipoint crossovermethod with self-adaptive crossover rate [28] We set theinitial crossover rate with 1 Firstly crossover process calcu-lates the crossover rate for the solution vectors of currentgeneration We record 120577pre as the crossover rate of previousgeneration solution vectors

The average fitness value of current generation solutionvectors is as follows

119868119909 average =

sum119892minus1

119894=0119868119909119894

119892

(8)

119868119909119894is the fitness value of the current generation solution

vector The average fitness value of previous generationsolution vectors is as follows

119868pre119909 average =

sum119892minus1

119894=0119868pre119909119894

119892

(9)

119868pre119909119894

is the fitness value of the previous generation solutionvectorThe crossover rate 120577 of the current generation solutionvectors is as follows

120577 = 120577pretimes (1 minus

119868119909 average minus 119868

pre119909 average

119868pre119909 average

) (10)

We assume that 119868119909max is the largest fitness value of the

solution vectors Crossover process uses the random matingstrategy for mating the population For each pair of matingsolution vectors we assume that 119868

119909119910is the bigger fitness value

of the two solution vectors The crossover rate 120577119909119910

of this pairof mating solution vectors is as follows

120577119909119910= 120577 times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(11)

If this pair of mating solution vectors needs to be crossedaccording to crossover rate 120577

119909119910 crossover process generates 119899

random numbers of 0 or 1 The position will be the crossoverpoint if the random number is 1The process crosses this pairof mating solution vectors according to the crossover points

We use the multipoint mutation method with self-adaptivemutation rate [28] as in the crossover process Firstlythe mutation process calculates the mutation rate for thesolution vectors We assume that 119868

119909max is the largest fitnessvalue of the solution vectors 119868

119909119910is the fitness value of solution

vector 119878119909119910 The mutation rate 120575

119909119910of 119878119909119910

is as follows

120575119909119910=

120577

119899

times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(12)

Then the mutation process sets the mutation points for119878119909119910

according to mutation rate 120575119909119910 If the mutation process

sets the point as a mutation point it records the relatednumber with 1 otherwise it records the related number with0 The solution vector is an incorrect solution after crossoverif the number 120579 of a physical host that appears in solutionvector is bigger than the number 120593 of VMs that can be loadedin this physical host In this case we set 120579-120593mutation points(set the related number with 1) randomly on the position ofthe physical host in solution vector For example there aretwo solution vectors (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875667

119875701

119875899

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875405

119875653

119875878

) the crossover point is 8 and then the solution vectorsafter crossover are (119875

51198751411987554119875189

119875201

119875323

119875405

119875405

119875653

119875878

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875667

119875701

119875899

)The solution vector (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875405

119875653

119875878

) is an incorrect solution if the remaining availableresources of 119875

405only can load one VM So we set 119875

405as

mutation pointAfter determining the mutation points the mutation

process continues to mutate the mutation points In initialpopulation generation process we take the coverage of thesolution space into consideration so the mutation processmutates the mutation point with the scope of 119908119899119892119892 Asfor 119875119894 the mutation interval is as follows

[119875119894minus119908119899119892119892+119908

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 lt 0

[119875119894minus119908119899119892119892

119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 ge 0 119894 + 119908119899119892119892 le 119908 minus 1

[119875119894minus119908119899119892119892

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892minus(119908minus1)

]

119894 + 119908119899119892119892 gt 119908 minus 1

(13)

Because of the indeterminacy of the mutation pointsmutation process mutates the mutation points accordingto the sequence of the mutation points According to thenonmutation points (the relevant position of randomnumberis 0) mutation process updates the information of membersin mutation interval and deletes the members of mutationinterval if the remaining resources of relevant physical

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World Journal 5

33 Selection Crossover and Mutation in the First StageSelecting operations choose the solution vectors accordingto the probability in the direction proportional to the fitnessvalue The selected solution vectors with higher fitness valuewill get more opportunities to be inherited by succeedinggeneration The selection probability 120573

119909119910of solution vector

119878119909119910

is as follows

120573119909119910=

119868119909119910

sum119892minus1

119886=0119868119909119886

(6)

The selection probability area 120572119909119910

of solution vector 119878119909119910

between 0 and 1 is as follows

120572119909119910=

[0 120573119909119910) 119910 = 0

[

119910minus1

sum

119886=0

120573119909119886

119910

sum

119886=0

120573119909119886] 0 lt 119910 lt 119892 minus 1

(

119910minus1

sum

119886=0

120573119909119886 1] 119910 = 119892 minus 1

(7)

Then selection process generates 119892 random numbersbetween 0 and 1 It selects 119892 solution vectors according to 119892random numbers which appear in probability area

In crossover process we use the multipoint crossovermethod with self-adaptive crossover rate [28] We set theinitial crossover rate with 1 Firstly crossover process calcu-lates the crossover rate for the solution vectors of currentgeneration We record 120577pre as the crossover rate of previousgeneration solution vectors

The average fitness value of current generation solutionvectors is as follows

119868119909 average =

sum119892minus1

119894=0119868119909119894

119892

(8)

119868119909119894is the fitness value of the current generation solution

vector The average fitness value of previous generationsolution vectors is as follows

119868pre119909 average =

sum119892minus1

119894=0119868pre119909119894

119892

(9)

119868pre119909119894

is the fitness value of the previous generation solutionvectorThe crossover rate 120577 of the current generation solutionvectors is as follows

120577 = 120577pretimes (1 minus

119868119909 average minus 119868

pre119909 average

119868pre119909 average

) (10)

We assume that 119868119909max is the largest fitness value of the

solution vectors Crossover process uses the random matingstrategy for mating the population For each pair of matingsolution vectors we assume that 119868

119909119910is the bigger fitness value

of the two solution vectors The crossover rate 120577119909119910

of this pairof mating solution vectors is as follows

120577119909119910= 120577 times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(11)

If this pair of mating solution vectors needs to be crossedaccording to crossover rate 120577

119909119910 crossover process generates 119899

random numbers of 0 or 1 The position will be the crossoverpoint if the random number is 1The process crosses this pairof mating solution vectors according to the crossover points

We use the multipoint mutation method with self-adaptivemutation rate [28] as in the crossover process Firstlythe mutation process calculates the mutation rate for thesolution vectors We assume that 119868

119909max is the largest fitnessvalue of the solution vectors 119868

119909119910is the fitness value of solution

vector 119878119909119910 The mutation rate 120575

119909119910of 119878119909119910

is as follows

120575119909119910=

120577

119899

times

119868119909max minus 119868119909119910

119868119909max minus 119868119909 average

(12)

Then the mutation process sets the mutation points for119878119909119910

according to mutation rate 120575119909119910 If the mutation process

sets the point as a mutation point it records the relatednumber with 1 otherwise it records the related number with0 The solution vector is an incorrect solution after crossoverif the number 120579 of a physical host that appears in solutionvector is bigger than the number 120593 of VMs that can be loadedin this physical host In this case we set 120579-120593mutation points(set the related number with 1) randomly on the position ofthe physical host in solution vector For example there aretwo solution vectors (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875667

119875701

119875899

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875405

119875653

119875878

) the crossover point is 8 and then the solution vectorsafter crossover are (119875

51198751411987554119875189

119875201

119875323

119875405

119875405

119875653

119875878

) and (11987588 119875103

119875166

119875255

119875323

119875323

119875391

119875667

119875701

119875899

)The solution vector (119875

5 11987514 11987554 119875189

119875201

119875323

119875405

119875405

119875653

119875878

) is an incorrect solution if the remaining availableresources of 119875

405only can load one VM So we set 119875

405as

mutation pointAfter determining the mutation points the mutation

process continues to mutate the mutation points In initialpopulation generation process we take the coverage of thesolution space into consideration so the mutation processmutates the mutation point with the scope of 119908119899119892119892 Asfor 119875119894 the mutation interval is as follows

[119875119894minus119908119899119892119892+119908

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 lt 0

[119875119894minus119908119899119892119892

119875119894+119908119899119892119892

]

119894 minus 119908119899119892119892 ge 0 119894 + 119908119899119892119892 le 119908 minus 1

[119875119894minus119908119899119892119892

119875119908minus1] cup [119875

0 119875119894+119908119899119892119892minus(119908minus1)

]

119894 + 119908119899119892119892 gt 119908 minus 1

(13)

Because of the indeterminacy of the mutation pointsmutation process mutates the mutation points accordingto the sequence of the mutation points According to thenonmutation points (the relevant position of randomnumberis 0) mutation process updates the information of membersin mutation interval and deletes the members of mutationinterval if the remaining resources of relevant physical

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

6 The Scientific World Journal

hosts cannot satisfy the requirement of users The numberof alternative mutation physical hosts after updating themutation interval is 119897The alternative mutation physical hostsare expressed as (1198751015840

0 1198751015840

1 1198751015840

2 119875

1015840

119897minus1) If 119897 = 0 the mutation

process randomly selects a mutation physical host that cansatisfy the requirements of users from solution space If 119897 gt 0the mutation process selects a physical host from mutationinterval proportional to the benefit of the fitness value tomutate the mutation point

If physical host 1198751015840119894loads the VM the performance per

watt 1198681015840119894is as follows

1198681015840

119894= (ℎ)

times (119862119894times (119865119894+ ℎ)

times(radic(119865119894+ ℎ) times 119881119905

119894

119870119894

+

(119865119894+ ℎ)2

4119870119894

2

+ 119881119905119894+

119865119894+ ℎ

2119870119894

)

2

minus119862119894times 119865119894times (radic

119865119894times 119881119905119894

119870119894

+

119865119894

2

4119870119894

2+ 119881119905119894+

119865119894

2119870119894

)

2

)

minus1

(14)

The selection probability 1205731015840119894of alternative mutation phys-

ical host 1198751015840119894is as follows

1205731015840

119894=

1198681015840

119894

sum119897minus1

119895=01198681015840

119895

(15)

The probability area 1205721015840119894of alternative mutation physical

host 1198751015840119894between 0 and 1 is as follows

1205721015840

119894=

[0 1205731015840

119894) 119894 = 0

[

119894minus1

sum

119886=0

1205731015840

119886

119894

sum

119886=0

1205731015840

119886] 0 lt 119894 lt 119897 minus 1

(

119894minus1

sum

119886=0

1205731015840

119886 1] 119894 = 119897 minus 1

(16)

Then mutation process generates a random numberbetween 0 and 1 It selects an alternative physical hostaccording to the probability area in which the random num-ber appeared After mutating the mutation point mutationprocess sets the relevant position number of solution vectorwith 0

34 Iteration and Termination in the First Stage After themutation process the algorithm judges whether it reaches

the iterative termination conditions of the first stage ofDPGA If so the algorithm stops iteration in the first stageotherwise it continues the iteration The solution vector withthe maximum fitness value is the optimal solution vector inthe first stageThe iterative termination conditions of the firststage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the first stage We set the maximum iterativetimes in the first stage with 120591 The value of 120591 is relatedto 119908 and 119899

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratioof the average fitness value We set the differenceratio of the second termination condition of the firststage with 120583 We record the largest fitness value of thesolution vectors as 119868

119909max Thus the first stage of thealgorithm will terminate if it satisfies the followingformula

119868119909max le (1 + 120583) times 119868119909 average (17)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratioWe set the optimized proportionof the third termination condition of the first stagewith 120590 Thus the first stage of the algorithm willterminate if it satisfies the following formula

119868119909 average le (1 + 120590) times 119868

pre119909 average (18)

35 Genetic Algorithm in the Second Stage After completingthe iteration in the first stage of DPGA the algorithm collectsthe solution vectors obtained from the first stage as the initialpopulation in the second stage The selection process in thesecond stage chooses the solution vectors in the same way asin the first stageWe also use themultipoint crossovermethodwith self-adaptive crossover rate as in the first stage

The average fitness value of current generation solutionvectors in the second stage is as follows

1198681015840

average =sum119892minus1

119894=01198681015840

119894

119892

(19)

1198681015840

119894is the fitness value of the current generation solution

vector in the second stage The average fitness value ofprevious generation solution vectors in the second stage is asfollows

119868pre1015840average =

sum119892minus1

119894=0119868pre1015840119894

119892

(20)

119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840 of the currentgeneration solution vectors in the second stage is as follows

1205771015840= 120577

pre1015840times (1 minus

1198681015840

average minus 119868pre1015840average

119868pre1015840average

) (21)

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World Journal 7

120577pre1015840 is the crossover rate of the previous generation

solution vectors in the second stage 1198681015840119894is the fitness value of

the current generation solution vector in the second stage119868pre1015840119894

is the fitness value of the previous generation solutionvector in the second stageThe crossover rate 1205771015840

119909of the pair of

the mating solution vectors in the second stage is as follows

1205771015840

119909= 1205771015840times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (22)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the bigger fitness value of the pair of

the mating solution vectors in the second stageThe mutation process uses the multipoint mutation

method with self-adaptive mutation rate and confirms themutation points as the way it used in the first stage Themutation rate 1205751015840

119909of 119878119909in the second stage is as follows

1205751015840

119909=

1205771015840

119899

times

1198681015840

max minus 1198681015840

119909

1198681015840

max minus 1198681015840

average (23)

1198681015840

max is the largest fitness value of the solution vectors inthe second stage 1198681015840

119909is the fitness value of solution vector 1198781015840

119909

in the second stage After confirming the mutation pointsin the second stage being different from the process in thefirst stage it mutates the mutation points with the scope ofthe whole solution space Because of the indeterminacy ofthe mutation points mutation process mutates the mutationpoints according to the sequence of the mutation pointsFirstly according to the nonmutation points mutation pro-cess updates the information of all solution space membersand deletes the members of mutation interval if the remain-ing resources of relevant physical hosts cannot satisfy therequirement of users Then the mutation process mutates themutation points in the same way as in the first stage

After the mutation process in the second stage thealgorithm judges whether it reaches the iterative terminationconditions of the second stage of DPGA If so the algorithmstops iteration in the second stage otherwise it continuesthe iteration The solution vector with the maximum fitnessvalue is the optimal solution vectorThe iterative terminationconditions of the second stage are as follows

(1) Iterative times attain the preset maximum iterativetimes in the second stage Because the solution vectorsobtained from the first stage are relative optimalsolutions we decrease the maximum iterative timesaccordingly in the second stageWe set the maximumiterative times in the second stage with 120591119892

(2) The difference between the largest fitness value andthe average fitness value is less than a certain ratio ofthe average fitness value As the result of the fact thatthe solution vectors obtained from the first stage arerelative optimal solutions we decrease the differenceratio accordingly in the second stage We set thedifferent ratio of the second termination conditionof the second stage with 120583119892 We record the largestfitness value of the solution vectors as 1198681015840max Thus the

second stage of the algorithm will terminate if itsatisfies the following formula

1198681015840

max le (1 + 120583119892) times 1198681015840

average (24)

(3) Theoptimized proportion of the average fitness valuesbetween two adjacent generation populations is lessthan the preset ratio We decrease the optimizedproportion accordingly in the second stage in conse-quence of the fact that the solution vectors obtainedfrom the first stage are relative optimal solutions Weset the optimized proportion of the third terminationcondition of the second stage with 120590119892 The secondstage of the algorithm will terminate if it satisfies thefollowing formula

1198681015840

average le (1 + 120590119892) times 119868pre1015840average (25)

4 Evaluation

In order to simulate a dynamic cloud platform we utilizea cloud simulator named CloudSim toolkit [29] version303 The CloudSim framework can create different kindsof entities and remove data center entities at run time TheCloudSim framework can also calculate the status infor-mation of entities such as resource utilization and powerconsumption during the simulation period We choose 6kinds of host models as shown in Table 2 for CloudSimplatform in the experiments

According to Table 3 we need to create power modelclasses for each kind of host models to calculate the powerconsumption of the hosts in CloudSim platform [30]

In the experiments DPGA needs some parameters ofthe hosts The CloudSim platform does not provide theparameters 119862119870 and119881119905 of the hosts which should have beenobtained from the hardware providers Therefore we need tocalculate the approximate values of the parameters Firstly wepick up two groups of core voltage and core frequency foreach kind of host model and then we calculate their powerconsumption by the CloudSim platform Finally we utilizethe matlab [31] to solve the multiple equations establishedby formula (2) according to the information of Table 4 Thevalues of parameters are showed in Table 4

The class PowerHost of the CloudSim platform does notcontain the member variables of 119862 119870 and 119881119905 We create anew class which extends the class PowerHost by adding themember variables of 119862 119870 and 119881119905 so that the entities in theexperiments can record the information of parameters forDPGA In the experiments a data center consisting of119908hostsis created These hosts are averagely composed of the above6 kinds of host models Then the data center creates 119889 VMsaccording to Table 5 averagely with the full utilization modelas the original loads of the data center

In the experiments the data center creates 119899VMs accord-ing to Table 6 averagely as the requirements of users with fullutilization model

41 Performance per Watt with Different Original Loads Inthis experiment we set the hosts number of the data center

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

8 The Scientific World Journal

Table 2 Host models for CloudSim platform in the experiments

Host CPU Memory (G)IBM System X3650 M4 2 times [Intel Xeon E5-2660 2200MHz 10 cores] 64IBM System X3300 M4 2 times [Intel Xeon E5-2470 2300MHz 8 cores] 24Dell PowerEdge R710 2 times [Intel Xeon X5675 3066MHz 6 cores] 24Dell PowerEdge R610 2 times [Intel Xeon X5670 2933MHz 6 cores] 12Acer Altos AR580 F2 4 times [Intel Xeon X4607 2200MHz 6 cores] 64Acer Altos R380 F2 2 times [Intel Xeon X2650 2000MHz 8 cores] 24

Table 3 Benchmark results summary of host models

Host Power consumption for the different target loads (W)0 10 20 30 40 50 60 70 80 90 100

IBM System X3650 M4 527 805 903 100 110 120 131 143 161 178 203IBM System X3300 M4 508 743 841 945 106 122 141 164 188 220 260Dell PowerEdge R710 622 104 117 127 137 147 157 170 187 205 227Dell PowerEdge R610 619 102 115 126 137 149 160 176 195 218 242Acer Altos AR580 F2 109 155 170 184 197 211 226 252 280 324 368Acer Altos R380 F2 529 771 854 94 102 110 124 141 162 186 215

119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center All idlehosts are switched to Sleep state The experiment is designedfor verifying the efficiency of DPGA in performance perwatt of a cloud center under different original loads In thisscenario we compare performance per watt of DPGA withST (static threshold) which sets the utilization threshold to09 IQR (interquartile range) which sets the safety parameterto 15 LR (local regression) which sets the safety parameterto 12 LRR (local regression robust) which sets the safetyparameter to 12 and MAD (median absolute deviation)which sets the safety parameter to 25 [30] As illustratedin Figure 2 DPGA placement strategy for VMs deploymentunder different original loads gets higher performance perwatt than other placement strategies Further when 119889 le

1000 namely the data center under an approximate idlestate performance per watt of DPGA placement strategyincreases rapidly When 1000 lt 119889 le 2000 namely thedata center under a low loading state performance per wattof DPGA placement strategy increases at a relatively flatrate When 2000 lt 119889 le 4000 namely the data centerunder a moderate loading state performance per watt ofDPGA placement strategy is relatively stable When 119889 gt

4000 namely the data center under an overloading stateperformance per watt of DPGA placement strategy begins todecline gradually This is because the hosts under the statefrom idle to load or under the overload states consume morepower than the hosts under the state of a certain load Inconclusion DPGA has a better performance per watt and isrelatively more stable because DPGA placement strategy isthe heuristic approach It takes the performance per watt asevaluation standard and tends towards stability by two stepiterations

2

25

3

35

4

45

0 200 500 1000 1500 2000 3000 4000 4500 5000 5100 5150

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 2 Comparison of performance per watt with differentoriginal loads

42 Performance per Watt with Different User Requests Inthis experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119889 = 3000 as the originalloads Then we allocate these VMs to the hosts randomlyWe adjust the VMs number 119899 as the requirements of usersfrom 10 to 50 All idle hosts are switched to Sleep stateThe experiment is designed for verifying the efficiency ofDPGA in performance per watt of a cloud center withdifferent requirements of users In this scenario we compareperformance per watt of DPGA with ST IQR LR LRRand MAD that take the same parameters as the experimentin Section 41 As illustrated in Figure 3 DPGA placementstrategy for VMs deployment with different requirements ofusers gets higher performance per watt than other placementstrategies Further with the increase of the requirementsof users DPGA placement strategy for VMs deployment

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World Journal 9

Table 4 Parameters summary of host models

Host Core voltage (V) Frequency (Hz) Power (W) Δ119864 (W) 119862 (F) 119870 Vt (V)

IBM System X3650 M4 0806 800 lowast 106 106364 85272 0501 lowast 10minus12 87565 lowast 109 04221172 2100 lowast 106 191636

IBM System X3300 M4 0986 8215 lowast 106 101075 130386 0631 lowast 10minus12 57787 lowast 109 05121433 21359 lowast 106 231461

Dell PowerEdge R710 0857 10664 lowast 106 131781 85647 0526 lowast 10minus12 72411 lowast 109 04681246 29326 lowast 106 217428

Dell PowerEdge R610 0906 980 lowast 106 129754 96781 0566 lowast 10minus12 65298 lowast 109 05021317 2744 lowast 106 226535

Acer Altos AR580 F2 0994 800 lowast 106 192273 191727 0617 lowast 10minus12 85299 lowast 109 05211445 2100 lowast 106 348

Acer Altos R380 F2 0953 700 lowast 106 98 1025 059 lowast 10minus12 55441 lowast 109 05141386 1900 lowast 106 2005

Table 5 VMmodels for loads of data center

Item VMmodelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8

VCPU (MHz) 1000 lowast 1 1200 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1800 lowast 6 2000 lowast 8RAM (M) 512 1024 1024 2048 2048 4096 4096 8192

3

35

4

45

10 20 30 40 50

VMs number (user requests)

Perfo

rman

ce p

er w

att (times108)

DPGAIQRLR

LRRMADST

Figure 3 Comparison of performance per watt with different userrequests

gets more stable performance per watt than other placementstrategies

43 Performance per Watt with Different State of Idle HostsIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirementsof users We adjust the VMs number 119889 as the original loadsfrom 0 to 5000 and allocate these VMs to the hosts randomlyIt represents different load levels of the data center Thereare two policies to be formulated for idle hosts The firstpolicy is OnOff policy wherein all idle hosts are switched offThe second policy is OnSleep policy wherein all idle hostsare switched to Sleep state The experiment is designed for

verifying the efficiency of DPGA in performance per wattof a cloud center with different policies for idle hosts Inthis scenario we compare performance per watt of DPGAwith OnOff policy for idle hosts and DPGA with OnSleeppolicy for idle hosts As illustrated in Figure 4 DPGA place-ment strategy for VMs deployment with OnSleep policygets higher performance per watt than DPGA placementstrategy with OnOff policy when the data center is underan approximate idle state DPGA placement strategy for VMsdeployment with OnSleep policy gets approximately thesame performance per watt as DPGA placement strategywith OnOff policy when the data center is under a loadingstate This is because the idle hosts at Sleep state consumecertain power while the turned-off idle hosts do not consumeany power Therefore DPGA placement strategy for VMsdeployment is more suitable for the cloud center under aloading state

44 Actual and Theoretical Values of Performance per WattIn this experiment we set the hosts number of the data center119908 = 1600 and the VMs number 119899 = 10 as the requirements ofusersWe adjust the VMs number 119889 as the original loads from500 to 5000 and allocate these VMs to the hosts randomly Itrepresents different load levels of the data center All idle hostsare switched to Sleep state In this scenario we compare actualperformance per watt of DPGAwith theoretical performanceper watt of DPGA calculated by formula (5) As illustratedin Figure 5 theoretical performance per watt is higher thanactual performance per watt when the data center is undera low loading state Theoretical performance per watt isapproximately the same as actual performance per watt whenthe data center is under a moderate loading state Theoreticalperformance per watt is lower than actual performance per

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

10 The Scientific World Journal

Table 6 VMmodels for user requests

Item User request modelsModel 1 Model 2 Model 3 Model 4 Model 5 Model 6 Model 7 Model 8 Model 9 Model 10

VCPU (MHz) 1000 lowast 1 1100 lowast 2 1300 lowast 2 1400 lowast 4 1500 lowast 4 1600 lowast 6 1700 lowast 6 1800 lowast 8 1900 lowast 8 2000 lowast 10RAM (M) 256 512 512 1024 1024 2048 2048 4096 4096 8192

0

1

2

3

4

5

0 500 1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

OnOffOnSleep

Figure 4 Comparison of performance per watt with different stateof idle hosts

0

1

2

3

4

5

1000 2000 3000 4000 5000

VMs number (original loads)

Perfo

rman

ce p

er w

att (times108)

Actual performance per wattTheoretical performance per watt

Figure 5 Comparison of actual performance per watt and theoret-ical performance per watt

watt when the data center is under an overloading stateThis is because the hosts under a moderate loading statecan calculate a relatively more accurate value of powerconsumption by DVFS formula than the hosts under a lowloading state or an overloading state In conclusion DPGAplacement strategy for VMs deployment is more suitable forthe cloud center under a moderate loading state

5 Conclusion

In this paper we present the design implementation andevaluation of a distributed parallel genetic algorithm ofvirtual machine placement strategy on cloud platform Thealgorithm is divided into two stages to get a better and more

accurate solution We assign the performance per watt asevaluation standardWe use themultipoint crossovermethodwith self-adaptive crossover rate and themultipointmutationmethod with self-adaptive mutation rate in the proposedapproach DPGA executes the first stage genetic algorithmwith selected initial subpopulation and puts the solutionsobtained into the second stage genetic algorithm as initialpopulation Then it finally gets a relatively optimal solutionfrom the second stage The experimental results show thatour approach is an efficient stable and effective placementstrategy for VM deployment

To further improve the performance of placement strat-egy for VM deployment there are also many problems thatneed to be solved in the future The number of parallelexecutions in the first stage 119892 should be related to thesize of solution space 119908 and the number of deploymentVMs 119899 We plan to assign the value of 119892 according to 119908and 119899 In population initialization process we select initialsubpopulation from solution space dispersedly and averagelyIn crossover and mutation process we use the multipointcrossover method with self-adaptive crossover rate and themultipoint mutation method with self-adaptive mutationrate We plan to optimize the algorithm in detail In thejudgment of iterative termination conditions the maximumiteration times should be related to the size of solution space119908 and the number of deployment VMs 119899 We plan to assignthe maximum iteration times according to119908 and 119899There arealso two open questions on the termination of the two stagesOne is to determine the difference ratio between the largestfitness value and average fitness value and the other one isto determine the optimized proportion of the average fitnessvalues between two adjacent generation populations In thispaper to ensure that the algorithm is executed correctlywe assume that 119908119899119892119892 gt 1 In order to execute thealgorithm efficiently in the case of 119908119899119892119892 le 1 we planto combine our approach with other methods Our approachis appropriate for the case that all physical hosts of solutionspace are in a fast LANand in the samenetwork environmentWe plan to extend our approach to WAN and differentnetwork environment Our approach uses the parallel geneticalgorithm We plan to use other heuristic algorithms suchas ant colony algorithm bee colony algorithm and particleswarmoptimization to implement placement strategy ofVMsdeployment and compare their performance

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper There is no directfinancial relation that might lead to a conflict of interests forany of the authors

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World Journal 11

References

[1] L Wang J Tao M Kunze A C Castellanos D Kramer andW Karl ldquoScientific cloud computing early definition and expe-riencerdquo in Proceedings of the 10th IEEE International Conferenceon High Performance Computing and Communications (HPCC08) pp 825ndash830 Dalian China September 2008

[2] J Nakajima Q Lin S Yang et al ldquoOptimizing virtual machinesusing hybrid virtualizationrdquo in Proceedings of the 26th AnnualACM Symposium on Applied Computing (SAC rsquo11) pp 573ndash578March 2011

[3] N Regola and J Ducom ldquoRecommendations for virtualizationtechnologies in high performance computingrdquo in Proceedingsof the 2nd IEEE International Conference on Cloud ComputingTechnology and Science pp 409ndash416 December 2010

[4] P Barham B Dragovic K Fraser et al ldquoXen and the art ofvirtualizationrdquo in Proceedings of the 19th ACM Symposium onOperating Systems Principles (SOSP rsquo03) pp 164ndash177 New YorkNY USA October 2003

[5] M R Garey and D S Johnson Computers and IntractabilityA Guide to the Theory of NP-Completeness W H Freeman SanFrancisco Calif USA 1979

[6] G M Amdahl ldquoValidity of the single processor approach toachieving large scale computing capabilitiesrdquo in Proceedingsof the Spring Joint Computer Conference pp 483ndash485 ACMAtlantic City NJ USA April 1967

[7] J L Gustafson ldquoReevaluating Amdahlrsquos lawrdquo Communicationsof the ACM vol 31 no 5 pp 532ndash533 1988

[8] HX Sun andLMNi Scalable Problems andMemory-BoundedSpeedup Institute for Computer Applications in Science andEngineering Hampton Va USA 1992

[9] J Tordsson R S Montero R Moreno-Vozmediano and I MLlorente ldquoCloud brokering mechanisms for optimized place-ment of virtual machines across multiple providersrdquo FutureGeneration Computer Systems vol 28 no 2 pp 358ndash367 2012

[10] M Steiner B G Gaglianello V Gurbani et al ldquoNetwork-awareservice placement in a distributed cloud environmentrdquo ACMSIGCOMMComputer Communication Review vol 42 no 4 pp73ndash74 2012

[11] W Wang H Chen and X Chen ldquoAn availability-aware virtualmachine placement approach for dynamic scaling of cloudapplicationsrdquo in Proceedings of the 9th International Conferenceon Ubiquitous Intelligence amp Computing and 9th InternationalConference on Autonomic amp Trusted Computing (UICATC rsquo12)pp 509ndash516 2012

[12] Z I M Yusoh andM Tang ldquoA penalty-based genetic algorithmfor the composite SaaS placement problem in the cloudrdquo inProceedings of the 6th IEEE World Congress on ComputationalIntelligence (WCCI rsquo10) and IEEE Congress on EvolutionaryComputation (CEC rsquo10) pp 1ndash8 July 2010

[13] B Li J Li J Huai T Wo Q Li and L Zhong ldquoEnaCloudan energy-saving application live placement approach for cloudcomputing environmentsrdquo in Proceedings of the IEEE Interna-tional Conference on Cloud Computing (CLOUD rsquo09) pp 17ndash24Bangalore India September 2009

[14] ZWNi X F Pan and Z JWu ldquoAn ant colony optimization forthe composite SaaS placement problem in the cloudrdquo AppliedMechanics and Materials vol 130ndash134 pp 3062ndash3067 2012

[15] Z I M Yusoh and M Tang ldquoA cooperative coevolutionaryalgorithm for the composite SaaS Placement Problem in the

Cloudrdquo in Proceedings of the 17th International Conference onNeural Information Processing pp 618ndash625 Springer 2010

[16] H Wang W Xu F Wang and C Jia ldquoA cloud-computing-based data placement strategy in high-speed railwayrdquo DiscreteDynamics in Nature and Society vol 2012 Article ID 396387 15pages 2012

[17] D Yuan Y Yang X Liu and J Chen ldquoA data placement strategyin scientific cloud workflowsrdquo Future Generation ComputerSystems vol 26 no 8 pp 1200ndash1214 2010

[18] L Guo Z He S Zhao N Zhang J Wang and C Jiang ldquoMulti-objective optimization for data placement strategy in cloudcomputingrdquo in Information Computing and Applications vol308 of Communications in Computer and Information ScienceSpringer Berlin Germany 2012

[19] J Ding H Y Han and A H Zhou ldquoA data placement strategyfor data-intensive cloud storagerdquo Advanced Materials Researchvol 354 pp 896ndash900 2012

[20] G von Laszewski L Wang A J Younge and X He ldquoPower-aware scheduling of virtual machines in DVFS-enabled clus-tersrdquo in Proceedings of the IEEE International Conference onCluster Computing and Workshops (CLUSTER rsquo09) pp 1ndash10September 2009

[21] W Fang X Liang S Li L Chiaraviglio and N XiongldquoVMPlanner optimizing virtual machine placement and trafficflow routing to reduce network power costs in cloud datacentersrdquo Computer Networks vol 57 no 1 pp 179ndash196 2013

[22] R Ge X Feng and K W Cameron ldquoPerformance-constraineddistributed DVS scheduling for scientific applications onpower-aware clustersrdquo in Proceedings of the ACMIEEE Confer-ence on Supercomputing (SC rsquo05) November 2005

[23] Y Gao H Guan Z Qi Y Hou and L Liu ldquoA multi-objectiveant colony system algorithm for virtual machine placement incloud computingrdquo Journal of Computer and System Sciences vol79 no 8 pp 1230ndash1242 2013

[24] B Kantarci L Foschini A Corradi and H T Mouftah ldquoInter-and-intra data center VM-placement for energy-efficient large-Scale cloud systemsrdquo in Proceedings of the IEEE GlobecomWorkshops (GCWkshps 12) pp 708ndash713 Anaheim Calif USADecember 2012

[25] S Chaisiri B Lee and D Niyato ldquoOptimal virtual machineplacement acrossmultiple cloud providersrdquo inProceedings of theIEEE Asia-Pacific Services Computing Conference (APSCC rsquo09)pp 103ndash110 December 2009

[26] J T Piao and J Yan ldquoA network-aware virtual machineplacement andmigration approach in cloud computingrdquo inPro-ceedings of the 9th International Conference on Grid and CloudComputing (GCC rsquo10) pp 87ndash92 Nanjing China November2010

[27] C H Hsu U Kremer and M Hsiao ldquoCompiler-directeddynamic frequency and voltage schedulingrdquo in Power-AwareComputer Systems pp 65ndash81 Springer Berlin Germany 2001

[28] M Srinivas and L M Patnaik ldquoAdaptive probabilities ofcrossover and mutation in genetic algorithmsrdquo IEEE Transac-tions on Systems Man and Cybernetics vol 24 no 4 pp 656ndash667 1994

[29] R N Calheiros R Ranjan A Beloglazov C A F de Rose andR Buyya ldquoCloudSim a toolkit for modeling and simulationof cloud computing environments and evaluation of resourceprovisioning algorithmsrdquo Software Practice and Experience vol41 no 1 pp 23ndash50 2011

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

12 The Scientific World Journal

[30] A Beloglazov and R Buyya ldquoOptimal online deterministicalgorithms and adaptive heuristics for energy and performanceefficient dynamic consolidation of virtual machines in Clouddata centersrdquo Concurrency Computation Practice and Experi-ence vol 24 no 13 pp 1397ndash1420 2012

[31] MathWorks T Matlab The MathWorks Natick Mass USA2004

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014