FFD Variants for Virtual Machine Placement in Cloud Computing Data Centers

Virtualization technology is used to efficiently utilize the resources of a Cloud datacenter by running multiple virtual machines (VMs) on a single physical machine (PM) as if each VM is a standalone PM. Efficient placement/consolidation of VMs into PMs can reduce number of active PMs which consequently reduces resource wastage and power consumption. Therefore, VM placement algorithms need to be optimized to reduce the number of PMs required for VM Placements. In this paper, two heuristic based Vector Bin Packing algorithms called FFDmean and FFDmedian are proposed for VM placement. These algorithms use First Fit Decreasing (FFD) technique. FFD preprocesses VMs by sorting all VMs in descending order of their sizes. Since a VM is multidimensional therefore, it is difficult to decide on its size. For this, FFDmean and FFDmedian use measures of central tendency, i.e. mean and median as heuristics, respectively, in order to estimate the size of a VM. The goal of these algorithms is to utilize the PM resources efficiently so that the number of required PMs for accommodation of all VMs can be reduced. CloudSim toolkit is used to carry out the cloud simulation and experiments. Algorithms are compared over three metrics, i.e. hosts used, power consumption and resource utilization efficiency. The results reveal that FFDmean and FFDmedian remarkably outperformed two existing algorithms called Dot-Product and L2 in all three metrics when PM resources were limited. Keywords—Cloud computing; virtual machine placement; virtualization; first fit decreasing; first fit decreasing (FFD)


I. INTRODUCTION
Cloud computing is an internet based business model of computation for outsourcing computing resources such as processing power, networks, servers, storage, applications, and services [1].NIST (National Institute of Standards and Technology) published their 16th and final definition of cloud computing, which is.
"Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g.networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction" [1].
Cloud computing provides a lot of opportunities for the IT industry.It is a rapidly enhancing and developing paradigm.The modern computational power has allowed it to become a utility that provides services to customers on a pay-as-you-go model i.e. the customers are required to pay only when they use the service.Hence, it is considered to become 5 th utility [2] of our lives after other four utilities such as electricity, water, gas and telephony.
In cloud computing everything that is provided is a service.The services are available on-demand from anywhere in the world through internet.A cloud service provider provides services to its customers in three basic service models, which are: 1) Software-as-a-Service (SaaS): SaaS is software provided as a service.The software (application) is provided on demand which is built over an infrastructure and a platform.The software provided is a web application, accessible through a browser [3].SalesForce, BaseCamp, GoToMeeting and NETSUITE are some examples of SaaS.
2) Platform-as-a-Service (PaaS): PaaS is a complete platform provided as a service to developers, which consists of all the required systems and the developing environment with underlying infrastructure.The end users (developers) of this service are allowed to develop their own software by testing, deploying and then hosting their custom web based applications [3].Generally PaaS is a middleware (like OS) that allows communication between hardware and application [4].Google APP Engine and IBM bluemix are some examples of PaaS.
3) Infrastructure-as-a-Service (IaaS): IaaS is a complete infrastructure provided as a Service.It provides Computing power with high level of adjustability as it allows the developers to create their own infrastructure like virtualization, etc. [3].The customer is allowed to build their own platform and software over it.Amzaon EC2 and IBM Cloud are some examples of IaaS.These services are highly scalable i.e. they may be increased or decreased according to the current demand of customers.The cloud customer does not need to worry about management and provisioning of resources when the demand rises or decreases.This is all done at the cloud providers' side.This relaxes customers from the hassle of managing, updating, over and under provisioning of resource (The customers and the service providers agree upon a contract called Service Level Agreements (SLAs) [27] to ensure Quality of Service (QoS).
The cloud Infrastructure is based on huge datacenter(s) comprised of millions of physical machines (PMs).These nextwww.ijacsa.thesai.org generation datacenters are so powerful that millions of customers can be served.Every end user is assigned a dedicated virtual machine (VM) which eventually runs on a PM residing in a Cloud datacenter.This is accomplished by using virtualization technology which helps in sharing PM resources to multiple users by running multiple VMs on a single PM as if each VM is a standalone PM [5].Since these PMs are hosts for VMs, PMs are also called as hosts.
A lot of electrical power is wasted due to inefficient utilization of datacenter's physical resources which results in high operational costs.About 70% of total data center's power is consumed by PMs [6].The principal approach to power saving in cloud computing is to cut the operational costs of datacenters by efficiently utilizing the resources of a PM, in order to minimize the number of PMs in use and idle/inactive PMs are turned off or to low power mode [7].Hence power efficient cloud computing [26] is an active research area and is often termed as Green Cloud Computing.
The VM placement (VMP) is a process of allocating VMs into PMs.A VM Placement algorithm is responsible to place/consolidate VMs into PMs.Efficient placement of VMs can reduce the number of PMs required for their accommodation, consequently increasing utilization of PM's resources and reducing power consumption.Therefore, there is a continuous need to design efficient algorithms for VMP so that VMs are packed in minimum possible PMs and resource utilization efficiency is increased by increasing utilization of each resource in a PM.
In this work two Vector Bin Packing (VBP) algorithms named as FFDmean and FFDmedian are proposed.These algorithms are essentially First Fit Decreasing (FFD) variants which are supposed to increase PM utilization to reduce number of PMs required and in turn reduce power consumption.
The remaining paper is structured as follows: Section II discusses the related work to this research.Section III formulates VMP problem as VBP problem.Section IV discusses the proposed algorithms.Section V describes the system model.Section VI explains the experimental setup.Section VII presents the results.Section VIII discusses the results.Section IX concludes this research and Section X presents the future recommendations.

II. RELATED WORK
Cloud computing is a rapidly growing paradigm of computer science.A lot of academic and industrial research [24], [25] has been conducted in this field to enhance the quality of cloud.As our work is specific to VMP, in this section some of the work related to VMP in cloud computing is reviewed.

A. Power Aware VMP Approaches
Power conservation is a very important challenge in Cloud computing.In this section some of the VMP algorithms/policies that opt for power conservation are discussed.

1) Cutting back power usage and co 2 footprint by ECE algorithm:
To become highly available, cloud data centers maintain different power sources.Mostly, these sources are not renewable and use carbon fuels to run, eventually leading to increased carbon footprint (cf) of environment which is injurious to our environment and health.The cf rate of these power sources is an important consideration, since data centers utilize electricity provided by these sources to run PMs and eventually VMs.Khosravi et al. in [8] proposed ECE algorithm for VMP to minimize power consumption and cf.ECE integrates two parameters i.e.Power Usage Effectiveness (PUE) and cf.It aims to place a VM in to a PM so that the power consumption, cf and PUE of the PM, its datacenter and cluster is minimized.Initially, when a VM request is received, ECE sorts all the clusters by their PUExcf values in ascending order.After that for each PM in a cluster the change in power consumption (ΔP) after that VM's placement is calculated.These PMs are then sorted in ascending order of their ΔP.A suitable PM which has minimum ΔP after placement is selected.If a suitable PM is not found for the VM, algorithm tries the next cluster.The ECE algorithm decreased cf and saved power compared to many existing algorithms.

2) Power saving by demand forecasting:
As cloud computing has an on-demand resource provisioning method; resource (de)allocation is dynamic.The service provider needs switched on PMs in spare to deal with dynamic resource demands.These idle PMs until they get some work waste a lot of power.On the other hand switching them on/off on demand also wastes power and takes 2-3 minutes to restart.One way to solve this issue is to standby the inactive PMs.It takes less time to restart and also consume lesser power compared to completely switching them off.If the future resource demands are estimated before time then according to the estimate some PMs could be set on standby while others shutdown to save power.Cao et al.,in [9] proposed a power efficient approach to solve VMP problem by forecasting the demand for VMs.The VMP is carried out in three steps.Initially demand forecasting is done by using Holt-Winter's exponential smoothing method assuming that in cloud computing a particular user's demands are identical and a particular demand succeeds a seasonal pattern.Next, a modification of multi-dimensional knapsack algorithm is used to allocate VMs to hosts; considering hosts as knapsacks and VMs as items with two types of costs i-e memory and cores.Finally a self-Optimizing module is used to update the forecasting parameter values in the demand forecasting model and mining the appropriate forecast periods by Hill Climbing method.The experiment result showed that proposed algorithm with forecast saves up to 60% power.

3) Power saving by decentralized VM migration technique
for fault-tolerant load balancing: Mostly, centralized approaches are used for resource management in cloud computing.Management becomes easy with these approaches however they are not fault tolerant.If the centralized resource manager crashes, all of the system crashes and becomes unmanaged.www.ijacsa.thesai.orgWang et al. in [10] proposed a decentralized VM migration technique for resource management instead of using a central resource manager, for fault-tolerance and to efficiently balance load across the data center and save power.In this approach each PM sends its load information maintained in a load vector, to every other PM in the data center(s), thus all active PMs have each other's load information.The proposed DVM algorithm uses lower and upper thresholds to judge the over and underutilization of a PM's CPU respectively.VMs are migrated from PM's with over utilized CPU to avoid SLA violations.In an underutilized PM, all VMs are migrated to some other PM with minimum increment in utilization after addition of migrating VM and the PM is turned off/sleep for power conservation.DVM showed balanced resource utilization and saved up to 20% power compared to static and round robin algorithms.

4) Power saving by euclidean distance based algorithm:
Srikantaiah et al. in [11] proposed a power aware multi dimensional bin-packing algorithm that uses a euclidean distance based heuristic for VMP.The algorithm considers two dimensions i.e.CPU and disk.It first finds out an optimal point where combination of CPU and disk utilization gives minimum power usage per transaction.Next, when it receives application (VM) requests it uses the euclidean distance heuristic which calculates euclidean distance of the utilization of each PM after allocation of the requested VM to the optimal point calculated in first step.The PM that has maximum euclidean distance of all is selected for VMP.Results showed that more power is saved as performance degradation tolerance is increased.At 20% tolerance the proposed algorithm used only 5.4% more power than optimal algorithm.5) Power saving by live VM migration using vector based repacking: Consuegra et al. in [12] proposed a vector repacking algorithm called replicas to minimize operational costs of a datacenter, that include power and migration cost.This algorithm places copies of each item/VM on different PMs that are selected by replica allocation algorithm.Among these copies only one copy is considered to be active and the operations are executed on it.When a VM has an increase in demand and cannot fit anymore in the current PM where it resides, then a PM is selected by the help of active replica selection algorithm.The copy in the newly selected PM is activated, the newly activated copy is synchronized with the previous copy to update if there are any changes and the previous copy is sent to inactive mode.By using replicas algorithm migration cost is reduced or even eliminated.

6) Consolidating complementary
VMs with spatial/temporal-awareness in cloud datacenters: Chen et al., in [13] proposed a spatial/temporal aware VBP algorithm for initial VMP.The algorithm forecasts resource usage patterns of VMs and packs together complementary VMs with spatial/temporal knowledge.This algorithm considers balanced utilization of CPU and memory of a PM.For e.g. a high CPU-intensive and low memory-intensive VM and a low CPU-intensive and high memory-intensive VM can be packed together to give a balanced utilization of PM resources.These types of VMs are complimentary VMs i.e.VMs for which overall requirement of every resource dimension (in the spatial space) almost arrives at their PM's capacity throughout VM lifetime phase (in the temporal space).The results show that the proposed techniques helped in utilization of PM's resources, reduction in VM migrations and active PMs in use alongwith maintaining SLAs.

B. Vector Bin Packing Algorithms for VMP
In cloud computing the VM resource demands are multidimensional.To solve the multidimensional VMP problem one of the solutions is to use a variant of bin packing called Vector Bin Packing (VBP) is used.Unlike the classic bin packing it considers the items and bins as multi-dimensional vectors.

1) FFD variants for VBP:
VBP can be solved by classic FFD heuristic.In FFD, items are first sorted by decreasing order of their sizes and then placed in the first bin (container) they fit into.Since in VBP the items are considered as multidimensional, it is difficult to decide the size of an item.For this, many FFD variants have been put forward which use some heuristic to estimate the size of a multidimensional item.
Maruyama et al. in [14] proposed a generalized VBP algorithm for FFD and best fit decreasing (BFD) techniques where BFD chooses the best bin in which an item can fit into.The algorithm considers many heuristics to estimate the size of a multi-dimensional item.The heuristics include taking product of all dimensions, sum of average and standard deviation of all dimensions and different versions of sum of all dimensions.Among these they found taking sum of dimensions and sum of average and standard deviation, far better than taking product.Kou and Markowsky in [15] proposed multidimensional bin packing algorithms.Three heuristics were used to calculate the size of items for FFD and BFD.Heuristics used for deciding the size were lexicographical (Lex), maximum component (Max) and sum of components.In Lex an item a>b if a equals b or first component of a-b is positive.In Max a>b if maximum component of a is greater than that of b.In sum of components a>b iff sum of all components of a is greater than that of b.
Spieksma in [16] proposed FFD heuristic algorithm which sorts items by assigning priorities and a branch and bound algorithm for 2-dimensional (2d) VBP.Han et al., in [17] proposed heuristics and exact algorithms for 2d VBP for heterogeneous bins.Caprara and Toth in [18] also studied the 2d case of VBP in detail.They proposed enhanced lower bounding methods, heuristics, and exact algorithms for this problem.Stillwell et al. in [19] proposed some VBP algorithms for resource allocation in virtualized shared hosting platforms.To sort items for FFD and BFD they used heuristics such as Sum, Max and Lex from [15].They also proposed choose pack and permutation pack algorithms, greedy algorithms, a genetic algorithm and relaxed linear programming solution.From all these, the algorithms which used Sum as a heuristic performed well.Panigrahy et al. in [20] proposed two FFD variants called Dot-Product (DP) and L2 which use dot product and L2 norm techniques, respectively as heuristics to estimate the size of a VM.www.ijacsa.thesai.orgMeasures of central tendency such as mean and median are used to calculate a particular value from a dataset which identifies the central point of that dataset.This technique can be used to estimate the size of a multi-dimensional VM.As far as related work is reviewed for this research, FFD variants that use these measures for VMP in cloud computing environment are not found.Therefore, in this work two new VBP algorithms called FFDmean and FFDmedian for VMP in cloud computing environment are proposed, which are essentially FFD variants.The algorithms use mean and median respectively as heuristics to estimate the size of a VM.

III. PROBLEM FORMULATION
1) VBP problem: Vector Bin packing (VBP) problem is a variant of bin packing problem.It is NP-hard which means that it cannot be solved in polynomial time however approximation algorithms are proposed for this problem.The problem is all same as bin packing problem except the items here are not one dimensional but d-dimensional vectors where d≥2.
The resource demand of an item is represented by demand vector ⃗⃗ and the bin capacity is represented by resource vector ⃗⃗⃗ .Both vectors are d-dimensional where d≥2 and are represented in ( 1) and (2), respectively, here i is item's demand and c is the bin's capacity in a particular dimension.
In VBP, there is B number of bins each with a resource vector ⃗ ⃗ and I number of items each with a demand vector ⃗⃗ .The problem is to place all items in minimum number of bins, such that in each bin b, the sum of demands in each dimension of all accommodated items does not exceed the bin capacity in each corresponding dimension.
2) VMP problem: VM Placement (VMP) problem is a NPhard problem.The VMP problem receives a set V of VMs, each with d-dimensional resource demands and a Set P of PMs, each with d-dimensional resource capacity.The problem is to place all VMs in minimum number of PMs, such that in each PM the sum of demands in each dimension of all VMs does not exceed the PM capacity in each corresponding dimension.
3) VMP problem formulation as VBP problem: Since VMP problem is multi-dimensional, it is difficult to formulate it as general bin packing problem.VMP Problem can be transformed into a VBP problem by considering VMs as items with d-dimensional demand vector ⃗⃗ and PMs as bins with ddimensional resource vector ⃗⃗ .In this work ⃗⃗ in (3) for a VM v has four-dimensions which are CPU mips, ram, bandwidth (bw) and Storage (strg).⃗⃗ in (4) for PM p which is used as a host for VMs also has the same dimensions.FFD is a simple heuristic approach to solve bin packing problem, which receives set of items and bins.Since FFD is used here for VMP, items are considered as VMs and bins as PMs/hosts.In FFD, VMs are first sorted in descending order of their sizes.After that starting from the largest VM, each VM is placed in the first available PM they fit into.The process continues until all VMs are placed.
The first requirement of FFD heuristic is to sort all the VMs into descending order of their sizes; however in this case where a VM is four-dimensional vector, it is difficult to decide which dimension should be selected as size of a VM.Therefore, a particular value/number is required in order to sort VMs.For this, measures of central tendency such as mean and median can be used to calculate a particular value from demand vector ⃗⃗ of a VM.This value identifies the central point of the vector ⃗⃗ and is the estimated size of a VM.

A. FFDmean and FFDmedian
FFDmean and FFDmedian use mean and median respectively to estimate the size of a multi-dimensional VM.The algorithms work in three steps, i.e.Normalization, size estimation and sorting and placement.Step 1 and Step 3 are same for both algorithms, however Step 2 is different.

1) Step 1 (Normalization):
In this step, all the VMs are normalized to bring them on same scale.VMs are normalized by dividing all dimensions of a VM by their corresponding dimension in the PM as shown in (5).
Step 2 (Size Estimation): In this step, the size of each VM is estimated by using a Size function S.This function is different for FFDmean and FFDmedian.a) Size function for FFDmean: For FFDmean this function calculates mean of VM dimensions in demand vector ⃗⃗ .The larger the mean the larger is the VM size.The size function S for FFDmean is presented in (6) where v represents a VM, i is a dimension and d is the total number of dimensions 1 ≤ i ≤ d) from ⃗⃗ .

S(
Size function for FFDmedian: For FFDmedian this function calculates median of VM dimensions in demand vector ⃗⃗ .The larger the median the larger is the VM size.For median there are two cases.The first case is for odd number of dimensions in ⃗⃗ .In this case the middle value is taken as the median.The second case is for even number of dimensions in ⃗⃗ , which is true for this research.In this case two middle values are taken and then average of these values is calculated.The size function S for the second case is presented in (7) www.ijacsa.thesai.orgwhere v represents a VM and x and y represent two middle values in ⃗⃗ .

3) Step 3 (Sorting and placement):
In this step, all the VMs are sorted in decreasing order of their sizes and then placed in PMs by using FFD technique.
Bin-centric version of FFD [20] is used in which a PM is taken at a time t.The process continues from Step 1 to Step 3 for each PM until no VM is left for placement.

V. SYSTEM MODEL
This work is based on the IaaS layer of cloud computing.CloudSim toolkit [21] is used to simulate the IaaS environment and the experimental setup.CloudSim is a framework for modeling and simulation of cloud computing infrastructures and services.
The system consists of one datacenter which contains 800 identical PMs.Since the cloud computing datacenters are multi-tenant i.e.VMs of different users might run on same PM, the VM instances are designed to bring the effect of different resource requirements by different users.For example, a user may demand a VM with high CPU capacity while another user may demand a VM with high memory etc.There are six types of VMs inspired by Amazon EC2 VM instances, used in our experiments.VM requirements are designed to be within PM capacities.
This work is limited to only initial VMP.This means that VMs complete their lifetime in only one PM in which they are initially placed and they are not migrated.Four algorithms are used separately for VMP.The algorithms are FFDmean, FFDmedian, Dot-Product (DP) and L2.FFDmean and FFDmedian are the proposed algorithms in this work while DP and L2 [20] are existing algorithms used for comparative analysis.DP uses dot product and L2 uses L2Norm as heuristic to estimate the size of a VM.In DP the larger the dot product between ⃗⃗ and ⃗ ⃗ the larger is a VM's size whereas in L2 the smaller the difference between ⃗⃗ and ⃗ ⃗ the larger is a VM's size.
The system receives user requests for VMs in the form of PlanetLab workload.It is a real workload of user requests (tasks/Jobs) selected by CloudSim from PlanetLab and provided by CoMon project [22].

A. PlanetLab Workload
PlanetLab is a research network spread worldwide which supports the advancement of new network services.From the start of 2003, above 1,000 researchers from industrial research labs and remarkable academic institutes have chosen PlanetLab to develop new techniques for distributed storage, peer-to-peer systems, network mapping, distributed hash tables, and query processing.
PlanetLab workload is the real workload traces from real systems.It is the data made available as a part of the CoMon project [22] which is a monitoring infrastructure for PlanetLab.This data consists of CPU utilizations of more than a 1,000 VMs from PMs (servers) situated at more than 500 places around the world.The utilizations of VMs are measured at an interval of five minutes.
To make our experiments more authentic it is important to test our algorithms with a real workload.For this we have chosen the PlanetLab Workload traces of 10 random days collected during March and April 2011, provided in CloudSim.

B. Power Model
Power consumption in an IaaS is decided by data center resources such as electric power supplies, cooling systems, CPU, memory, disk storage, network equipment, etc.According to recent research [23], among these resources CPU utilization has a linear relationship with PM's power consumption.This is because there are least amount of states that can be assigned to the voltage and frequency of a CPU and furthermore performance scaling such as DVFS (Dynamic Voltage and Frequency Scaling) is not functional to other resources that use power, for instance network devices, memory, storage, etc.
Due to the increased use of virtualization technology, stateof-the-art PMs are designed with multi-core CPUs and large quantities of other resources.Memory, network and other devices also add in the power consumption of a PM.For the reason that modeling power expenditure of current PMs is a difficult research problem, in this research genuine information on power expenditure made available by SPEC (Standard Performance Evaluation Corporation) power benchmark is used rather than making an analytical power model [23].SPEC power model provides real power usage of PMs at different CPU usage/load levels.

VI. EXPERIMENTAL SETUP
Three Experiments are designed to evaluate FFDmean and FFDmedian algorithms compared with DP and L2.In each experiment, there is one datacenter with 800 identical PMs of types 1, 2 and 3, respectively as shown in Table 1.The difference between the experiments is the PM type (configuration).Since the goal is to test the performance sustainability of algorithms as the resources increases under different PM types.VMs are created according to the Instances provided in Table 2.
Jobs/tasks for VMs are taken from PlanetLab Workload provided in CloudSim which is divided into 10 parts or workloads.All algorithms i.e.FFDmean, FFDmedian, DP and L2 are used separately for VMP for all PlanetLab Workloads.Therefore, we have four algorithms, 10 workloads and three experiments; we get total 120 simulations (4*10*3).
Power model made available by SPEC power benchmark for each host type is used.Power consumption of these PMs at different CPU usage/load levels is presented in Table 3. www.ijacsa.thesai.orgTaken from www.spec.org

A. Performance Metrics
There are three performance metrics used to analyze the algorithms.These are described below: 1) Hosts Used: Hosts used is the number of PMs required to host (accommodate) all VMs in the workload.The goal is to minimize this number.The smaller the number the better is the performance.
2) Power Consumption: It is the total electrical power consumed by all PMs in a datacenter.The goal is to reduce the power consumption.Power consumption of a PM is calculated by using SPEC power model.Power consumption of each active PM at different load levels in a datacenter is calculated using the values provided in Table 3.At the end of the simulation, power consumed by all active PMs is then added together to get total power consumption of the datacenter.
3) Resource Utilization Efficiency: Resource utilization efficiency is how well the resources of a PM in each dimension are utilized.The goal is to increase utilization efficiency in all dimensions of a PM.For each PM, utilization percentage in each of its dimension i.e.CPU, RAM, BW, and Strg is calculated first.After that average utilization percentage of each PM in each dimensions is calculated.

VII. RESULTS
The experiments were conducted on a HP notebook PC running Windows 7 Home Premium with Core i5 CPU @ 1.60 GHz and 4 GB RAM.In each experiment all VMs were placed separately by FFDmean, FFDmedian, DP and L2.Average results of each algorithm in each performance metric are presented here.Fig. 1 shows a graphical representation of average hosts used by each algorithm in each experiment and Fig. 2 shows a graphical representation of average power consumption in kilo watts (KW) by each algorithm in each experiment.Fig. 3 shows a graphical representation of average resource utilization efficiency (%) by each algorithm in each experiment.To save space in figures FFDmean and FFDmedian are represented as Mean and Median.Table 4 shows a summary of results in each experiment.

B. Power Consumption
In Exp. 1 FFDmean saved 7.16% power compared to DP and 12.15% power compared to L2. FFDmedian saved 7.12% power compared to DP and saved 12.12% power compared to L2.In Exp. 2 FFDmean saved 6.12% power compared to DP and saved 0.9% compared to L2. FFDmedian saved 3.4% power compared to DP; however, it used 1.98% more power compared to L2.In Exp. 3 FFDmean saved 5.31% power compared to DP and saved 1.43% power compared to L2. FFDmedian saved 1.97% power compared to DP; however, it used 2.05% more power compared to L2.This shows that like hosts used metric, in Exp. 1 where PM resources were limited compared to other experiments FFDmean and FFDmedian both outperformed DP and L2 in saving power.When PM resources were comparatively increased 2 and Exp. 3 FFDmean outperformed both DP and L2 however FFDmedian only performed better than DP.

C. Resource Utilization Efficiency
Table 4 shows that in Exp. 1, FFDmean and FFDmedian performed equally in increasing utilization efficiency in all dimensions and outperformed both DP and L2.The effect of this utilization efficiency can be seen in other two metrics where FFDmean and FFDmedian outperformed very well than both DP and L2.In Exp. 2 FFDmean and L2 showed same utilization values and better than FFDmedian and DP, therefore their performance in other two metrics was almost same.FFDmedian increased up to 1% utilization in all dimensions compared to DP.Even with 1% increase in utilization www.ijacsa.thesai.orgFFDmedian saved 3% hosts and 3.4% power compared to DP.This shows that even minor increase in utilization can bring a lot of effect.In Exp. 3 FFDmean and FFDmedian performed equally to L2. FFDmean and FFDmedian increased up to or more than 1% utilization compared to DP in all dimensions.With this minor change FFDmean saved 5% hosts and saved 5.31% power compared to DP, and FFDmedian saved 2% hosts and 1.97% power compared to DP.This shows that with very limited resources in Exp. 1 FFDmean and FFDmedian remarkably outperformed DP and L2 in increasing resource utilization efficiency.By increasing PM resources in Exp. 2 and Exp. 3 utilization values of all algorithms became almost equal with minor difference.It is observed that even minor changes in utilization can bring a lot of effect in saving hosts and power.
From all experiment results, it is observed that our proposed algorithms FFDmean and FFDmedian remarkably outperformed DP and L2 when PM resources were extremely limited.Our algorithms also performed well when resources were increased, however the performance was not that remarkable compared to the prior situation.This shows that our algorithms can be useful in situations where resources are very limited.

IX. CONCLUSION
This research proposed two Vector Bin Packing algorithms for virtual machine placement called FFDmean and FFDmedian.These algorithms are essentially FFD variants which use mean and median respectively as heuristics to estimate size of a multi-dimensional VM.The performance of proposed algorithms was evaluated by comparing them to existing algorithms DP and L2 over three metrics i-e hosts used, power consumption and resource utilization efficiency.DP and L2 use dot product and L2-norm respectively to estimate the size of a VM.Proposed algorithms were tested over three types of PMs (different in configuration) to evaluate their performance sustainability as the PM resources increase.It is observed that the proposed algorithms remarkably outperformed DP and L2 when PM resources were comparatively limited to other experiments.The algorithms also performed well when resources were increased, however the performance was not that remarkable compared to the prior situation.This shows that the algorithms can be useful in situations where resources are very limited.

X. FUTURE RECOMMENDATIONS
Since this work was limited to only initial VMP, live VM migrations can be incorporated in this work.The algorithms were measured over only three metrics i.e. hosts used, power consumption and resource utilization efficiency this work can also be extended in future by using other metrics such as SLA performance degradation, etc. Moreover non-identical PMs can be used in the experiments.
are two new VBP algorithms proposed for VMP in cloud computing environment.The algorithms use classic FFD heuristic.

TABLE III .
POWER MODEL OF EACH PM

TABLE IV .
SUMMARY OF AVERAGE RESULTS BY ALL ALGORITHMS IN ALL METRICS