Research Article  Open Access
FPABC: Fast and Parallel ABC Based EnergyEfficiency Live VM Allocation Policy in Data Centers
Abstract
Virtual machine (VM) technology is one of the energyefficiency approaches to save energy with acceptable quality of service (QoS). In our previous studies, Artificial Bee Colony (ABC) based VM allocation policy can make a good tradeoff between performance and energy consumption. However, there are two problems in stateoftheart ABC based approaches: () how to find global optimized solutions efficiently; () how to minimize the decision time of VM allocation. To solve these two problems, the idea of simulated annealing is adopted to get a better global optimum, and the idea of gradient descent is applied to accelerate the speed of finding solution space in . Compared with stateoftheart ABC based policies, the experimental results show that the proposed algorithm efficiently reduces energy consumption and SLA violation.
1. Introduction
At present, a large number of data centers have been put into practice to support internetbased services. Many applications, such as Ecommerce and scientific computing, require largescale dataintensive computing. As data centers and their applications continue increasing, how to realize energyefficiency computing has become a particular challenge.
There are several properties of data centers making the problem of energyefficiency computing difficult to be solved. First, workload of a data center is a priori unknown to energyefficiency policy and will likely be variable over both time and space. As a result, a static energyefficiency policy is insufficient. Second, customers wish their jobs can be finished in time with an acceptable price. Third, lots of computing and storage nodes are occupied in finishing their jobs in time with high energy consumption and low utilization. Therefore, finding a tradeoff between energy consumption and performance in data centers is an important issue.
Many practices have been applied to achieve energyefficiency, such as Dynamic Voltage and Frequency Scaling (DVFS) [1] and virtual machine technique [2]. Virtual machine technique can improve the utilization rate of resources, which are computing and storage nodes. For example, lowload nodes will be slept to save energy when their VMs have been migrated to other nodes with workload balance principles.
VM allocation policies with workload balance are considered as one of the important energyefficiency solutions in data centers. In CloudSim [3] simulator, the classical policies have been proposed, such as Random Selection (RS), Minimum Migration Time (MMT), and Median Absolute Deviation (MAD), to make VM allocation decisions. Zhao et al. [4] applied PSO algorithm to VM allocation policy, and they have achieved significantly on the measurement of energyefficiency and QoS. In our previous works, Artificial Bee Colony (ABC) [5] is adopted to achieve energyefficiency [6]. However, ABC based VM allocation policies have disadvantages of finding global solutions in time.
To solve these problems, the idea of simulated annealing is adopted to find the global solution as much as possible in this paper. Based on the principle of simulated annealing, following bees have probability to jump out of local optimum to find global optimum in other solution space. Even more, the idea of gradient descent is applied to accelerate the speed of finding solution in with QoS. Considering these two ideas, an ABC based energyefficiency live VM allocation policy with simulated annealing and gradient descent is proposed in this paper.
The main contributions of the paper are summarized as follows: (i)The idea of gradient descent is used to solve the problem that is how to satisfy the requirement of accelerating the speed of finding local optimum solution in a data center. (ii)The idea of simulated annealing is adopted to get approximate global optimums with searching in turn per duration. (iii)After finding global optimums in time, the frequency of VM migrations is reduced greatly to achieve a fairly high energyefficiency level.
The rest of this paper is organized as follows. Related work is depicted in Section 2. The proposed VM allocation policy is given in Section 3. Simulated experiments are done in Section 4. Discussion and analysis are given in Section 5. Section 6 concludes the paper.
2. Related Work
The virtual machine allocation (VM allocation) is a process that is finding the target host for the live migrant VM. Traditionally, VM allocation policy is designed to achieve high performance. Currently, energy consumption is considered as another important influencing factor to evaluate the reasonability of VM allocation policy. Therefore, performance and energy consumption are two major influencing factors to construct energyefficiency evaluation model.
Fan et al. [7] found a strong correlation between single server and CPU utilization rate; that is, there is a direct linear correlation between CPU utilization rate and the server’s energy consumption. The higher the CPU utilization rate is, the more the energy consumption is. This is represented by a host energy evaluation model:where represents the total energy consumption of a host, represents the energy consumption of an idle host, represents the energy consumption of a high load host, and indicates the CPU utilization rate of a host. But it cannot measure the nonlinear CPU utilization rate.
Boglazov [8] proposed another empirical nonlinear model to evaluate the energy consumption of a host:where represents calibration parameters for minimizing the squared error, which is obtained by experiments.
For the cost of energy consumption from data centers, researchers have found a variety of efficient policies to reduce the cost of energy and keep a relatively high QoS level.
Deng et al. [9] proposed the concept of green data centers, which means low energy consumption, low cost, and low levels of environment pollution. Fiandrino et al. [10] proposed the model of energy consumption for VM migration, which can reduce the cost of energy consumption of data centers to achieve workload balance. However, they did not discuss the problem of finding global optimum and unsuitable VM migration. Nakada and Hirofuchi [11] optimized the number of physical hosts and reduced the frequency of virtual machine migrations. They made Service Level Agreement (SLA) as an important influencing factor to measure the optimal results and also placed VM migration as a multiobjective optimization issue.
Nishant et al. [12] utilized the ant colony algorithm to solve the problem of VM migration. Each ant only updates its local data, which leads to the low rate of convergence. Jeyarani et al. [13] presented SAPSO to realize dynamic VM scheduling in data centers. SAPSO promptly detects and efficiently tracks the changing optimum that represents target servers for VM placement. However, the idea did not take future workload into account. From the perspective of long operation, the policy may incur additional costs.
Previously, our research focuses on making use of ABC algorithm to solve the problem of VM allocation, but it is insufficient on the speed of convergence for finding local optimums in data centers. When dealing with the same volume of jobs, the higher the energyefficiency level of target host is, the less it costs. As we all know, the energyefficiency level will be decreased rapidly when the workload of a target host is larger than a certain critical value. Therefore, it is important to achieve a fairly high energyefficiency level in data centers by making an effective live VM allocation policy. In our previous researches, ABC based energyefficiency live VM allocation policy has been proposed. However, there are still two problems which need to be solved in Section 1.
3. ABC Based Live VM Allocation Policy with Simulated Annealing and Gradient Descent
Workload balance in data centers can save energy by migrating VMs to target hosts, and the key is to assign VM to the optimal target host [14]. To achieve the goal of saving energy in data centers, we introduce an ABC algorithm to seek the best target hosts. However, Bi and Wang [15] found that an ABC algorithm is easy to fall into local optimum. To solve this problem, simulated annealing makes the scouts jump out of local optimal solution space and then optimize the optimal solution within multiple iterations. The following paper will elaborate it from two aspects, one is the energy evaluation model of data centers, and the other is an enhanced energyefficiency live VM allocation policy.
3.1. Data Center Energy Evaluation Model
In the live VM allocation process, we want to assess the cost that the VM needs to be migrated to the target host. We use , which represents difference in the energy consumption, to evaluate virtual machine migration process cost:where corresponds to the energy consumption of a target host after receiving VM and means the current energy consumption of the target host.
On the basis of the energy evaluation model, the metric of fitness is defined as inwhere corresponds to the energy consumption and and mean two different physical hosts.
3.2. Formal Problem
We formalized the problem as migrating virtual machines to hosts. Its solution is represented as dimensional vector, where each element represents a target host. We can describe the problem as to find a virtual machine allocation policy; we define it as , which is to satisfy the demand to maximize computing performance while minimizing energy consumption. To solve this problem, we define an array of . represents physical hosts; , where means the VM migration time and VM represents VMs. is expressed as VM migration demand in . represents the total energy consumption of hosts. The purpose of the algorithm is to find the host location for maximum performance and minimize energy consumption. There are multiple locations to meet the demand, so we define as (6), , , , represents a different location selected that is migrating VM to number host, and it has the following relationship:where represents the smallest computing nodes of VMs and marks the available computing resources of th host. There are positions for max that can be selected in placement policy. It can be expressed as .
The second parameter is based on energy consumption; , where corresponds to any placement of and represents the host number. The position , when selecting the host number , is represented as . Their energy is represented as , and it means, according to , the total energy consumption that is migrating VMs to the host. Hence migrating VM energy consumption can be expressed as (7). In order to achieve better energyefficiency, energyefficiency VM migration can be represented as (8). In other words, in order to minimize energy consumption, we must minimize the value of .
3.3. Expressed Solutions
In order to achieve an ABC based energyefficiency algorithm, representation of the solution becomes a priority. Solutions expressed represent the correspondence between the optimal bee and problem spaces found by ABC based algorithm. In this paper, there are VMs to be migrated to target hosts, so this is an dimensional vector problem. Each dimension is an integer from to . Position vector is represented as . shows a nectar of the th (The th solution vector) position of the th (th VMs to be migrated) dimension. Velocity vector is represented as ; shows dimensional speed of the th nectar source. shows that the current optimal location is found, and best position vector is represented as , which is regarded as the current best target location in the population.
3.4. The Main Idea of ABC Based EnergyEfficiency Live VM Allocation Policy
An ABC based live VM allocation policy has been considered as a better energyefficiency policy. According to [15], it can reduce 25%~30% energy cost with acceptable SLA violation. However, in big data time, the ABC based energyefficiency live VM allocation policy will face huge amount of dataintensive jobs and need to get the best VM allocation decision in time.
To solve these problems, we have improved the ABC algorithm in two ways. First, the traditional speed of ABC based algorithm uses fitness function to find local optima which need to be optimized. Therefore, the idea of gradient descent is applied to getting the local optima rapidly. Second, the traditional ABC based algorithm maybe falls into the local optima in a time window of . Therefore, simulated annealing is applied to finding the global optima.
3.5. Improved Artificial Bees Live VM Allocation Policy
As illustrated in Figure 1, the FPABC VM allocation policy can be described as shown in Algorithm 1.

4. Results
4.1. Experimental Environment
The cloud simulator of CloudSim3.0 [3] is used to conduct a simulation experiment. Java programming language is adopted to get results from MyEclipse9.0. The experiment is done on Lenovo™ desktop. Its system parameters as follows: CPU: Intel(R) Core(™) i73770 CPU @ 3.40 GHz. RAM: 4.00 GB. System type: 64bit operating system. OS: Windows 7.
PlanetLab [8] is a group of computers, which is tested for computer networking and distributed systems research. It was established in 2002 by Professor Larry L. Peterson and Professor David Culler, and it was composed of 1353 nodes at 717 sites worldwide in January 2016 [16]. 10day sample data in PlantLab cloud computing environment are chosen as experimental data as shown in Table 1 [8]. Simulation data center is composed of 800 heterogeneous physical nodes, and half of these nodes are HP ProLiant ML100 G4 server (1860 MIPS) while the other halves are HP ProLiant ML110 G5 server (2660 MIPS) [8]. Energy consumption of these two servers at different loads is shown in Table 2. Server virtual machine is set as singlecore; RAM can also be classified according to the number of VMs. The following are the main types of VMs: HighCPU Medium Instance (2500 MIPS, 0.85 GB), Extra Large Instance (2000 MIPS, 3.75 GB), Small Instance (1000 MIPS, 1.7 GB), and Micro Instance (500 MIPS, 613 MB).


The simulation is performed in CloudSim3.0, is set as 30 seconds, and its safety parameter is 1.5.
4.2. Evaluating the Energy Consumption of FPABC with Different Approaches
In Figure 2, FPABC can reduce the energy consumption of data center by 5.1% on the base of ABC_RS. The proposed energy evaluation model can be used to evaluate different VM allocation policies. Our proposed FPABC policy has advantage in saving energy.
4.3. Evaluating the Violation Rate of SLA with Different Approaches
Service Level Agreement (SLA) represents a guarantee under certain overload performance and reliability of service. In other words the service provider and the userdefined agreements are accepted by each other. SLAV is short for Violations of SLA. ASLAV is the average rate of SLAV. The QoS will be better if its ASLAV is lower. In Figure 3, FPABC is the last one. Among these traditional policies, THR_RS has the worst performance. And it proves that VM allocation policy of THR_RS gets higher ASLAV value. The ASLAV value of FPABC is 10.4%, and it means that FPABC can reduce energy consumption with acceptable ASLAV. Therefore, the workload balance based policy can satisfy user’s requirement of QoS.
4.4. Evaluating the Effectiveness of FPABC with Different VM Allocation Policies
The number of VM migrations is a statistic variable to measure the VM migration times which occurred in data centers. The cost will be lower if fewer VM migrations occurred. As shown in Figure 4, FPABC and ABC_RS can reduce the frequency of VM migrations greatly. Furthermore, FPABC can reduce VM migrations by nearly 6.1% when compared with ABC_RS. An unreasonable VM allocation policy will increase the frequency of VM migrations. Therefore, FPABC policy can find best hosts as BestTargetHostList in . As a result, we can save more energy.
4.5. Evaluating the EnergyEfficiency of FPABC with Different VM Allocation Policies
In formula (9), ESV is an energyefficiency comprehensive index. It measures the tradeoff between performance and energy consumption. As we all know, the QoS will be violated when energy is saved greatly and vice versa. Therefore, achieving a good energyefficiency tradeoff is difficult. However, FPABC has a good performance in the metric of ESV depicted in Figure 5. The first reason is that FPABC policy can reduce the VM migration frequency to keep live workload balance in data centers; the second reason is that the proposed energy consumption evaluation model can be used to make a better evaluation of energy consumption in data centers; the third reason is that idea of simulated annealing and gradient descent can improve the performance of ABC based policy. Evaluation model [8] is presented as follows:
4.6. Evaluating the Decision Time of FPABC with Different VM Allocation Policies
In Figure 6, based on the index of execution time mean in Cloudsim3.0, it can reduce the decision time 85% to THR_RS, 86% to IQR_RS, 88% to MD_RS, and 13.8% to ABC_RS. Compared with these traditional migration policies, the FPABC is more effective to minimize the decisionmaking time.
5. Discussion
5.1. The Importance of Accelerating the Process of Finding Local Optimized Target Hosts with FPABC
A huge number of live migrant VMs are waiting to be allocated to their best target hosts in . Therefore, the solutions should be given in some reasonable time window. Current stateoftheart ABC based live VM allocation policy should be improved by accelerating the speed of finding the local optimized target hosts. To solve this problem, the idea of gradient descent is adopted to ABC based live VM allocation policy. Current ABC based policy only makes the judgment based on its fitness value, without considering the requirement of speed. The idea of achieving a local solution quickly is realized by gradient descent. It will accelerate the process of searching local optimization in order to accelerate the speed of FPABC policy. In Section 4.6, we see that value of execution time mean is reduced when compared with 3 traditional policies and ABC_RS policy. It is significant when facing with amount of applications and also can save energy.
5.2. The Importance of Adopting Idea of Simulated Annealing to Find Global Optimized Target Hosts
We want to find the global optimum target host for each migrant VM in VM allocation, because the unreasonable target host will increase irrational energy consumption. In CloudSim3.0, three traditional VM migration policies are not good at finding the global optimum results, since their decision is made only by workload balance without reasonability analysis. Furthermore, the stateoftheart ABC based policy is easy to fall into local optimum. Therefore, we add the idea of simulated annealing into ABC based policy, which can make scout bees jump out of the current solution space on a certain probability to detect other solution space.
5.3. Tradeoff between Energy Consumption and Service Quality
In data centers, to reduce energy consumption or improve the quality of service simply is not a good energysaving policy, because reducing the total energy consumption will decrease service quality; that is to say, it will increase the value of SLAV. The main objective of this paper is to achieve energy efficient goal and make the value of SLAV accepted. Experimental results show that FPABC can save energy effectively in the balance of the EC and SLAV, which is based on formula (9) introduced in Section 4.5.
6. Conclusions
This paper presents a new live VM allocation policy to reach as far as possible to meet the SLAV value while saving energy consumption. We proposed the stateoftheart ABC based policy with the idea of simulated annealing and the idea of gradient descent. The idea of gradient descent is used to find the optimal solution with higher speed. And the idea of simulated annealing is used to find the global optimal solutions in . Simulation experiment has proved that FPABC policy can effectively reduce energy consumption with relative high level of QoS. In addition, FPABC can effectively reduce the energy consumption of data centers by 5.1%, when compared with the stateoftheart algorithm of ABC_RS.
In the future, the proposed the stateoftheart ABC based policy should be adapted to the cloud of cloud. Cloud of cloud is a new business model to get an economic data center with good service performance. The improved ABC based optimized model should be implemented in new environment.
Competing Interests
The authors declare that they have no competing interests.
Acknowledgments
The authors are grateful to the financial support by the National Natural Science Foundation of China (nos. 61202306, 61472049, 61402193, and 61572225), the Foundation of Jilin University of Finance and Economics (nos. XJ2012007 and 201401), the Education Department of Jilin Province “Twelfth FiveYear” science and technology research projects under Grant no. 2015410, and Social Science Foundation of Jilin Province under Grant no. 2015BS48.
References
 G. Semeraro, G. Magklis, R. Balasubramonian, D. H. Albonesi, S. Dwarkadas, and M. L. Scott, “Energyefficient processor design using multiple clock domains with dynamic voltage and frequency scaling,” in Proceedings of the 8th International Symposium on HighPerformance Computer Architecture (HPCA '02), pp. 29–40, Cambridge, Mass, USA, February 2002. View at: Publisher Site  Google Scholar
 P. Barham, B. Dragovic, K. Fraser et al., “Xen and the art of virtualization,” in Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP '03), pp. 164–177, 2003. View at: Publisher Site  Google Scholar
 R. N. Calheiros, R. Ranjan, A. Beloglazov, C. A. F. De Rose, and R. Buyya, “CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms,” Software: Practice and Experience, vol. 41, no. 1, pp. 23–50, 2011. View at: Publisher Site  Google Scholar
 J. Zhao, L. Hu, Y. Ding, G. Xu, and M. Hu, “A heuristic placement selection of live virtual machine migration for energysaving in cloud computing environment,” PLoS ONE, vol. 9, no. 9, Article ID e108275, 2014. View at: Publisher Site  Google Scholar
 D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Tech. Rep. TR06, Erciyes University, 2005. View at: Google Scholar
 J. Jiang, Y. Liu, L. Wang, J. Chen, N. Huang, and X. Wei, “ABCC: an energyefficiency VM consolidation algorithm based on heuristic backward artificial bee colony method in data centers,” Journal of Jilin University (Science Edition), vol. 6, pp. 1239–1248, 2014. View at: Google Scholar
 X. Fan, W. D. Weber, and L. A. Barroso, “Power provisioning for a warehousesized computer,” ACM SIGARCH Computer Architecture News, vol. 35, no. 2, pp. 13–23, 2007. View at: Google Scholar
 A. Boglazov, EnergyEfficient Management of Virtual Machines in Data Centers for Cloud Computing, The University of Melbourne, Victoria, Australia, 2013.
 W. Deng, F.M. Liu, H. Jin, and D. Li, “Leveraging renewable energy in cloud computing datacenters: state of the art and future research,” Chinese Journal of Computers, vol. 36, no. 3, pp. 582–598, 2013. View at: Publisher Site  Google Scholar
 C. Fiandrino, D. Kliazovich, P. Bouvry, and A. Zomaya, “Performance and energy efficiency metrics for communication systems of cloud computing data centers,” IEEE Transactions on Cloud Computing, 2015. View at: Publisher Site  Google Scholar
 H. Nakada and T. Hirofuchi, “Eliminating datacenter idle power with dynamin and intelligent VM relocation,” in Distributed Computing and Artificial Intelligence, vol. 79, pp. 645–648, Springer, Berlin, Germany, 2010. View at: Google Scholar
 K. Nishant, P. Sharma, V. Krishna et al., “Load balancing of nodes in cloud using ant colony optimization,” in Proceedings of the 14th International Conference on Modelling and Simulation (UKSim '12), pp. 3–8, IEEE, Cambridge, UK, March 2012. View at: Publisher Site  Google Scholar
 R. Jeyarani, N. Nagaveni, and R. Vasanth Ram, “Self adaptive particle swarm optimization for efficient virtual machine provisioning in cloud,” International Journal of Intelligent Information Technologies, vol. 7, no. 2, pp. 25–44, 2011. View at: Publisher Site  Google Scholar
 R. Kapur, “A workload balanced approach for resource scheduling in cloud computing,” in Proceedings of the 8th International Conference on Contemporary Computing (IC3 '15), pp. 36–41, IEEE, Noida, India, August 2015. View at: Google Scholar
 X. J. Bi and Y. J. Wang, “A modified artificial bee colony algorithm and its application,” Journal of Harbin Engineering University, vol. 33, no. 1, pp. 117–123, 2012. View at: Google Scholar  MathSciNet
 PlanetLab, http://planetlab.org/.
Copyright
Copyright © 2016 Jianhua Jiang et al. This 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.