{'fraction_non_alphanumeric': 0.012713936430317848, 'fraction_numerical': 0.00293398533007335, 'mean_word_length': 4.747191011235955, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Whither Tightness of Packing? The Case for Stable VM Placement

To date, virtual machine (VM) placement has traditionally been viewed as a bin packing problem where a number of virtual machines need to be placed on a given number of physical machines. The goal of bin packing based approach is to minimize the number of physical machines (PMs) used. However, the resource utilization of VMs is dynamic unlike static artifacts in the bin packing problem and varies with the workload being handled by applications on the VM. This means that tight packing may result in a situation where the applications run out of resources needed to handle the workload since there is no room to expand. This will trigger a VM migration to another PM having sufficient resources to allow the VM to expand. Migration is an expensive process both in terms of the resources needed for migration as well as in terms of the degradation of application performance during migration. A simple solution to this is to simply provision every VM for its peak usage-however this results in wasted resources since peaks occur infrequently and only for short durations of time. This peak usage based approach is one of very loose packing which is inefficient but provides stability of the VM in the context of migration. What we need is a balance between the tightness of packing (to optimize the number of physical machines used) and VM stability (to minimize the number of the migrations resulting from a given placement). In this paper we propose a metric to quantify this notion of balance and an algorithm to place VMs so as to minimize “imbalance”. We show through extensive experiments that balanced placement is not so loose as to be inefficient while giving us good stability as measured from the number of resource shortfalls that would occur with a given placement. In our experiments we found that balanced placement results in 15 to 80 percent lesser resource shortfalls and upto 90 percent less severe resource shortfalls when compared to other placement schemes.