Fairness scheduler for virtual machines on heterogonous multi-core platforms

Heterogeneous multi-core processors are now widely deployed to meet computation requirements for multimedia applications on embedded mobile devices. However, due to the difference on computation capability of heterogeneous multi-cores, it is challenging to share the load among cores and to better utilize the cores on the processor. In this work, we develop a fairness scheduler to share the load among cores to meet the above challenge. The developed framework ensures that each virtual machine receives its proportional share of computation time over different processing elements. To fairly schedule the tasks on the platform, VM-aware fair scheduler (VMAFS) takes into account the preemptibility of processes on co-processors. A family of algorithms is designed to schedule tasks on preemptive and non-preemptive processing elements. We define fairness on such architectures and use this metric to efficiently drive VMAFS algorithm so as to fairly manage non-preemptive computing resources. Performance evaluations result show that when VMAFS algorithm is used, scheduling fairness is not sensitive to the amount of computation time of non-preemptive tasks. In addition, VMAFS algorithm greatly outperforms credit-based scheduling algorithm, which is deployed in existing virtualization environment.

[1]  Banu Özden,et al.  Fair queuing for aggregated multiple links , 2001, SIGCOMM.

[2]  Cédric Augonnet,et al.  StarPU: a unified platform for task scheduling on heterogeneous multicore architectures , 2011, Concurr. Comput. Pract. Exp..

[3]  Hui Zhang,et al.  WF/sup 2/Q: worst-case fair weighted fair queueing , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[4]  Bernd Fröhlich,et al.  The cubic mouse: a new device for three-dimensional input , 2000, CHI.

[5]  Mary K. Vernon,et al.  The performance of multiprogrammed multiprocessor scheduling algorithms , 1990, SIGMETRICS '90.

[6]  Larry L. Peterson,et al.  Reasoning about naming systems , 1993, TOPL.

[7]  Lin Shi,et al.  vCUDA: GPU accelerated high performance computing in virtual machines , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[8]  Ragunathan Rajkumar,et al.  Distributed Resource Kernels: OS Support for End-To-End Resource Isolation , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[9]  Vanish Talwar,et al.  GViM: GPU-accelerated virtual machines , 2009, HPCVirt '09.

[10]  Jason Nieh,et al.  Group Ratio Round-Robin: O(1) Proportional Share Scheduling for Uniprocessor and Multiprocessor Systems , 2005, USENIX Annual Technical Conference, General Track.

[11]  Jason Nieh,et al.  Group Ratio Round-Robin: An O(1) Proportional Share Scheduler , 2003 .

[12]  Leslie Lamport,et al.  LaTeX User''''s Guide and Document Reference Manual , 1986 .

[13]  Yuan-Hua Chu,et al.  Overview of ITRI PAC project - from VLIW DSP processor to multicore computing platform , 2008, 2008 IEEE International Symposium on VLSI Design, Automation and Test (VLSI-DAT).

[14]  Abhay Parekh,et al.  A generalized processor sharing approach to flow control in integrated services networks: the single-node case , 1993, TNET.

[15]  Scott Shenker,et al.  Analysis and simulation of a fair queueing algorithm , 1989, SIGCOMM '89.

[16]  David R. Cheriton,et al.  Borrowed-virtual-time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler , 1999, OPSR.

[17]  Michael Sannella,et al.  Constraint satisfaction and debugging for interactive user interfaces , 1994 .

[18]  Abhay Parekh,et al.  A generalized processor sharing approach to flow control in integrated services networks-the single node case , 1992, [Proceedings] IEEE INFOCOM '92: The Conference on Computer Communications.

[19]  Sanjoy K. Baruah,et al.  Proportionate progress: a notion of fairness in resource allocation , 1993, STOC '93.

[20]  Kevin Skadron,et al.  Scalable parallel programming , 2008, 2008 IEEE Hot Chips 20 Symposium (HCS).

[21]  Gary Marchionini,et al.  A study on video browsing strategies , 1997 .