Power-efficient Assignment of Virtual Machines to Physical Machines
Date
2013-06-19Abstract
Motivated by current trends in cloud computing, we study a version of the generalized assignment problem where a set of virtual processors has to be implemented by a set of identical processors. For literature consistency we say that a set of virtual machines (VMs) is assigned to a set of physical machines (PMs). The optimization criteria is to minimize the power consumed by all the PMs. We term the problem Virtual Machine Assignment (VMA). Crucial differences with previous work include a variable number of PMs, that the VMs cannot be implemented fractionally (i.e., each VM must be assigned to exactly one PM), and a parametric minimum power consumption for each active PM. We show that the VMA problem is NP-hard in the strong sense and we present a VMA offline approximation algorithm. For this VMA protocol, we show the trade-off between the running time and the approximation ratio achieved. Furthermore, restricting the VMA problem to realistic applications, we observe that such protocol is a PTAS5 for the VMA problem, while there is no FPTAS6. Moving to online VMA algorithms, we show upper and lower bounds on the competitive ratio when only 2 PMs are available, lower bounds when some arbitrary number m of PMs are available, and an upper bound when the number of machines is unbounded. We also carry extensive simulations using real-world input such as Google cluster data. To the best of our knowledge, this is the first time the VMA problem is studied for this cost function.