To perform load balance, there are two main tasks: detect if the system is imbalance and perform migration.
The well-known VMware system  has handled the first task by comparing the "current hosts load standard deviation" (CHLSD) metric to the "target host load standard deviation" (THLSD). CHLSD is calculated as the standard deviation of the hosts’ normalized entitlement value. This value of each host is calculated by dividing the sum of the entire virtual machine load on the same host by the capacity of the host as described in Formula.
The operator predefines THLSD value. If the CHLSD exceeds the THLSD, the cluster is considered imbalanced. For the second task, VMware uses the following algorithm. It checks if the cluster is imbalanced (CHLSD > THLSD), simulates moving each VM from the highly load host to the lower load host to calculate CHLSD, adds migration information giving best improving CHLSD to a list and then repeats the process until CHLSD < THLSD.
In [50,51], the authors proposed the Reactive Load Balancing mechanism using local state of each PM. The mechanism detects the imbalance of each physical machine. If a PM has the resource usage > threshold for any type of resource, it is considered imbalance. VMs from that PM must be migrated to the under loaded PM. To select VM to be migrated, the work in  defined the parameter
The VM having minimum VSR will be selected.
Unlike the work in , the work in  defined the parameter L for VM selection.
The mechanism chooses the VM having minimum L and migrate to the PM that has least enough residual capacity.
In [52, 53], the authors proposed the Proactive Load Balancing mechanism considering the global state of the PM. For a cluster, a PM is imbalance if the coefficient of variance of PM's load > threshold. In , the overloaded VM from overloaded PM will be migrated to the under loaded PM. The work in  move under loaded VM from over loaded PM to the under loaded PM.
In , the authors presented the Compare and Balance algorithm. Algorithms are executed concurrently on independent physical hosts, and having limited information or no information about what the other parts of the algorithm are doing. It picks a VMirunning in the current host, picks randomly another host in the set of active hosts, calculates usage level of the current host c and the selected host c’, if c>c’ migrates VMi to the selected host with the probability of c – c’, and then repeats the process with other VMs.
From the description above, we can see that the load balance algorithms depend on how they define the balanced concept. The work in  considered the imbalance as CHLSD > THLSD. The works in [50,51,52,53] tried to detect the imbalance using a threshold value. Using the probability, the work in  considered that the probability of having imbalance increases along with the greater difference of resource usage of a PM compared with another PM.
In , the authors proposed the min Power Placement algorithm with History, mPPH. mPPHalgorithm tries to minimize migrations by migrating as few VMs as possible with two phases. In the first phase, it determines a target utilization for each server based on the power model for the server. In the second phase, the mechanism calls the bin-packing algorithm.
The work in  proposed a rank-based VM consolidation method for power saving in data centres. Every PM has a server rank that is a unique value representing selection priority of the PM. Usually, the rank is determined by the data centre operator. The mechanism sets 2 values Rhigh and Rlow. The algorithm only considers VMs in PMs having load > Rhighand load < Rlow as candidate for migration. The remapping process is then done with the First Fit Decreasing heuristic. VMware also has the same idea as this one for its DPM (Dynamic Power Management) module .
In , the author proposed a mechanism that uses migration in three basis activities of the system: Workload Arrival Event, Workload Departure Event and Workload Resizing Event. For insert, it uses Best-Fit algorithm. For departure, when a workload finishes its work and departs from node x, the algorithm reinserts the other workloads on x. For Workload Resizing, it can be transformed to a Pop workload size x and an Insert Procedure workload
The work in  proposed the dynamic Round-Robin algorithm for energy efficient VM migration including two rules. In the first rule, if a VM has finished and there are still other VMs hosted on the same physical machine, this physical machine will accept no more new VM. When the rest of the virtual machines finish their execution, this physical machine can be shutdown. In the second rule, if a physical machine is in the “retiring” state for a sufficiently long period of time, it will not wait for the residing virtual machines to finish. The physical machine will be forced to migrate the rest of the virtual machines to other physical machines, and shutdown after the migration finishes.
The work in  proposed a heuristic for energy efficient VM migration. The optimization of the current VM allocation is carried out in two steps. At the first step, the algorithm selects VMs need to be migrated. At the second step, the chosen VMs are placed on the hosts using the modified best fit decreasing algorithm.
In , the authors proposed an algorithm called F4G-CG to optimize the energy consumption of data centres using VM migration. The F4G-CG algorithm has two main phases. In the first phase, the algorithm moves the VMs from low load servers to higher load servers if possible in order to free the low load server. The free low load server can be turned off. In the second phase, the algorithm moves the VMs from the old servers to the modern servers. The free old servers can be turned off.
From the description above, we can see the difference in input parameters for migrations algorithm. While the work in  considers all VMs of the cloud system for migration, the work in [37, 56] focus on the VMs on very high or very low load servers. The work in  deals with even the individual work size change. All those works do not support server turning on/off policy. The work in  moves VMs from low load servers to high load servers in order to turn off free servers. Also having the same idea, the work in  extends it by moving load from old servers to more modern servers to turn off old servers.
VM migration with Miscellanous objectives
The work in  proposed a method for Multi-objective Virtual Machine Placement in Virtualized Data Centre Environments. The objectives include minimizing total resource wastage, minimizing power consumption and minimizing thermal dissipation costs. An improved genetic algorithm with fuzzy multi-objective evaluation is proposed for efficiently searching the large solution space and conveniently combining possibly conflicting objectives.
The work in  proposed a method for Dynamic Placement of Virtual Machines to manage SLA Violations. The overall approach of the paper is to predict future resource requirements based on recent time series of resource demand. Based on the future resource demand, the algorithm remaps the VM to PM using best-fit algorithm.
From the description above, we can see the difference in goal as well as the mechanism of the described algorithms. The work in  supports multi objectives and thus, it uses time-consuming genetic algorithm. The work in  tries to mange SLA violation and it uses best fit heuristic with fast run-time.