FTDS: Adjusting Virtual Computing Resources in Threshing Cases

In a virtual execution environment, dynamic computing resource adjustment technique, configuring the computing resource of virtual machines automatically according to the actual loads generated by applications, is often adopted in virtual machine monitor to improve the resource utilization rate. Traditionally, the simple Additive Increase Subtractive Decrease (AISD) scheme is used as an adjusting rule. However, in some special situations, for example, compiling kernel in a virtual machine, the configuration of virtual machines may change abruptly because of the violent vibration of workload during a short interval, and the threshing can inevitably result in additional overhead under AISD rule. In this paper, we extend the Proportional-Integral-Derivative (PID) algorithm and present a feedback control model for configuring virtual computing resources, and propose an innovative adjusting scheme called Forecasting and Time Delayed Subtraction (FTDS) to reduce the overhead caused by threshing. The FTDS uses both statistic history of resource requests and current utilization of computing resource to predict whether threshing happens and to determine how many and when to adjust the amount of virtual CPUs. Experimental results show that FTDS can effectively reduce the jitter occurred in adjusting and make the performance penalty for threshing decreased from 9% to 0.3% compared with AISD, while maintaining that in non-threshing cases the same as AISD.

[1]  Hugh L. Dryden,et al.  THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION , 1958 .

[2]  Yuting Zhang,et al.  Friendly virtual machines: leveraging a feedback-control model for application adaptation , 2005, VEE '05.

[3]  Scott Devine,et al.  Disco: running commodity operating systems on scalable multiprocessors , 1997, TOCS.

[4]  James E. Smith,et al.  Virtual machines - versatile platforms for systems and processes , 2005 .

[5]  Bilha Mendelson,et al.  Detecting Change in Program Behavior for Adaptive Optimization , 2007, 16th International Conference on Parallel Architecture and Compilation Techniques (PACT 2007).

[6]  Anant Agarwal,et al.  The KILL Rule for Multicore , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[7]  Deepak Bansal,et al.  Binomial congestion control algorithms , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[8]  Hai Jin,et al.  Virtual Machine Resource Management for High Performance Computing Applications , 2009, 2009 IEEE International Symposium on Parallel and Distributed Processing with Applications.

[9]  Su Whan Sung,et al.  Proportional–Integral–Derivative Control , 2009 .

[10]  Daniel A. Menascé,et al.  Autonomic Virtualized Environments , 2006, International Conference on Autonomic and Autonomous Systems (ICAS'06).

[11]  Mendel Rosenblum,et al.  Cellular disco: resource management using virtual clusters on shared-memory multiprocessors , 2000, TOCS.

[12]  Mahmut T. Kandemir,et al.  Adaptive set pinning: managing shared caches in chip multiprocessors , 2008, ASPLOS.

[13]  Tal Garfinkel,et al.  Virtual machine monitors: current technology and future trends , 2005, Computer.

[14]  David E. Irwin,et al.  Automated and on-demand provisioning of virtual machines for database applications , 2007, SIGMOD '07.

[15]  M J Willis Proportional-Integral-Derivative Control , 1999 .

[16]  Sandhya Dwarkadas,et al.  Characterizing and predicting program behavior and its variability , 2003, 2003 12th International Conference on Parallel Architectures and Compilation Techniques.

[17]  Mendel Rosenblum,et al.  Cellular disco: resource management using virtual clusters on shared-memory multiprocessors , 2000, ACM Trans. Comput. Syst..