English

On Non-Preemptive VM Scheduling in the Cloud

Networking and Internet Architecture 2018-07-04 v1 Distributed, Parallel, and Cluster Computing

Abstract

We study the problem of scheduling VMs (Virtual Machines) in a distributed server platform, motivated by cloud computing applications. The VMs arrive dynamically over time to the system, and require a certain amount of resources (e.g. memory, CPU, etc) for the duration of their service. To avoid costly preemptions, we consider non-preemptive scheduling: Each VM has to be assigned to a server which has enough residual capacity to accommodate it, and once a VM is assigned to a server, its service \textit{cannot} be disrupted (preempted). Prior approaches to this problem either have high complexity, require synchronization among the servers, or yield queue sizes/delays which are excessively large. We propose a non-preemptive scheduling algorithm that resolves these issues. In general, given an approximation algorithm to Knapsack with approximation ratio rr, our scheduling algorithm can provide rβr\beta fraction of the throughput region for β<r\beta < r. In the special case of a greedy approximation algorithm to Knapsack, we further show that this condition can be relaxed to β<1\beta<1. The parameters β\beta and rr can be tuned to provide a tradeoff between achievable throughput, delay, and computational complexity of the scheduling algorithm. Finally extensive simulation results using both synthetic and real traffic traces are presented to verify the performance of our algorithm.

Keywords

Cite

@article{arxiv.1807.00851,
  title  = {On Non-Preemptive VM Scheduling in the Cloud},
  author = {Konstantinos Psychas and Javad Ghaderi},
  journal= {arXiv preprint arXiv:1807.00851},
  year   = {2018}
}

Comments

29 pages

R2 v1 2026-06-23T02:48:37.023Z