On the Homogeneous Multiprocessor Virtual Machine Partitioning Problem

This work addresses the partitioning of virtual machines with real-time requirements onto a multi-core platform. The partitioning is usually done manually through interactions between subsystem vendors and system designers. Such a proceeding is expensive, does not guarantee to find the best solution, and does not scale with regard to the upcoming higher complexity in terms of an increasing number of both virtual machines and processor cores. The partitioning problem is defined in a formal manner by the abstraction of computation time demand of virtual machines and computation time supply of a shared processor. The application of a branch-and-bound partitioning algorithm is proposed. Combined with a generation of a feasible schedule for the virtual machines mapped to a processor, it is guaranteed that the demand of a virtual machine is satisfied, even if independently developed virtual machines share a processor. The partitioning algorithm offers two optimization goals, required number of processors and the introduced optimization metric criticality distribution, a first step towards a partitioning that considers multiple criticality levels. The different outcomes of the two approaches are illustrated exemplarily.

[1]  David S. Johnson,et al.  Computers and In stractability: A Guide to the Theory of NP-Completeness. W. H Freeman, San Fran , 1979 .

[2]  Daniel F. García,et al.  Utilization Bounds for Multiprocessor Rate-Monotonic Scheduling , 2004, Real-Time Systems.

[3]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[4]  Insup Lee,et al.  A Compositional Scheduling Framework for Digital Avionics Systems , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[5]  Stefan Savage,et al.  Processor capacity reserves: operating system support for multimedia applications , 1994, 1994 Proceedings of IEEE International Conference on Multimedia Computing and Systems.

[6]  Sanjoy K. Baruah Task Partitioning Upon Heterogeneous Multiprocessor Platforms , 2004, IEEE Real-Time and Embedded Technology and Applications Symposium.

[7]  A. Land,et al.  An Automatic Method for Solving Discrete Programming Problems , 1960, 50 Years of Integer Programming.

[8]  Sanjoy K. Baruah,et al.  A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms , 2004, Handbook of Scheduling.

[9]  Aloysius K. Mok,et al.  Resource partition for real-time systems , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[10]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[11]  Theodore P. Baker,et al.  The cyclic executive model and Ada , 2006, Real-Time Systems.

[12]  Kang G. Shin,et al.  Assignment and Scheduling Communicating Periodic Tasks in Distributed Real-Time Systems , 1997, IEEE Trans. Software Eng..

[13]  Wind River TM Hypervisor Applying Multi-core and Virtualization to Industrial and Safety-Related Applications Multi-core and virtualization provide the opportunity to improve device performance , reduce costs through hardware consolidation and upgrade applications more cost effectively throughout the product lifecycle , 2009 .

[14]  Sanjoy K. Baruah,et al.  Mixed-Criticality Real-Time Scheduling for Multicore Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[15]  Hakan Aydin,et al.  On Partitioned Scheduling of Fixed-Priority Mixed-Criticality Task Sets , 2011, 2011IEEE 10th International Conference on Trust, Security and Privacy in Computing and Communications.

[16]  Ragunathan Rajkumar,et al.  On the Scheduling of Mixed-Criticality Real-Time Task Sets , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[17]  Yifan Wu,et al.  Partitioning Real-Time Applications Over Multicore Reservations , 2011, IEEE Transactions on Industrial Informatics.

[18]  Insup Lee,et al.  Compositional real-time scheduling framework with periodic model , 2008, TECS.

[19]  Aloysius K. Mok,et al.  Real-Time Virtual Resource: A Timely Abstraction for Embedded Systems , 2002, EMSOFT.

[20]  Sanjoy K. Baruah,et al.  Towards the Design of Certifiable Mixed-criticality Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[21]  Giuseppe Lipari,et al.  Resource partitioning among real-time applications , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[22]  Nuno Pereira,et al.  Static-Priority Scheduling over Wireless Networks with Multiple Broadcast Domains , 2007, RTSS 2007.

[23]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[24]  Edward G. Coffman,et al.  Approximation algorithms for bin packing: a survey , 1996 .

[25]  S. Vestal Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, RTSS 2007.