Academia.eduAcademia.edu

Outline

Real-time multi-core virtual machine scheduling in xen

2014, Proceedings of the 14th International Conference on Embedded Software

https://doi.org/10.1145/2656045.2656061

Abstract

Recent years have witnessed two major trends in the development of complex real-time embedded systems. First, to reduce cost and enhance flexibility, multiple systems are sharing common computing platforms via virtualization technology, instead of being deployed separately on physically isolated hosts. Second, multicore processors are increasingly being used in real-time systems. The integration of real-time systems as virtual machines (VMs) atop common multicore platforms raises significant new research challenges in meeting the real-time performance requirements of multiple systems. This paper advances the state of the art in real-time virtualization by designing and implementing RT-Xen 2.0, a new real-time multicore VM scheduling framework in the popular Xen virtual machine monitor (VMM). RT-Xen 2.0 realizes a suite of real-time VM scheduling policies spanning the design space. We implement both global and partitioned VM schedulers; each scheduler can be configured to support dynamic or static priorities and to run VMs as periodic or deferrable servers. We present a comprehensive experimental evaluation that provides important insights into real-time scheduling on virtualized multicore platforms: (1) both global and partitioned VM scheduling can be implemented in the VMM at moderate overhead; (2) at the VMM level, while compositional scheduling theory shows partitioned EDF (pEDF) is better than global EDF (gEDF) in providing schedulability guarantees, in our experiments their performance is reversed in terms of the fraction of workloads that meet their deadlines on virtualized multicore platforms; (3) at the guest OS level, pEDF requests a smaller total VCPU bandwidth than gEDF based on compositional scheduling analysis, and therefore using pEDF at the guest OS level leads to more schedulable workloads in our experiments; (4) a combination of pEDF in the guest OS and gEDF in the VMM-configured with deferrable server-leads to the highest fraction of schedulable task sets compared to other real-time VM scheduling policies; and (5) on a platform with a shared last-level cache, the benefits of global scheduling outweigh the cache penalty incurred by VM migration.

References (52)

  1. REFERENCES
  2. COQOS Operating System. http://www.opensynergy.com/en/Products/COQOS/.
  3. Credit Scheduler. http://wiki.xen.org/wiki/Credit_Scheduler.
  4. Fiasco micro-kernel. http://os.inf.tu-dresden.de/fiasco/.
  5. INTEGRITY Multivisor. http://www.ghs.com/ products/rtos/integrity_virtualization.html.
  6. Intel 64 and IA-32 Architectures Optimization Reference Manual. http://www.intel.com/content/ dam/www/public/us/en/documents/manuals/ 64-ia-32-architectures-optimization-manual. pdf.
  7. Intel Ivy Bridge 7-Zip LZMA Benchmark Results. http://www.7-cpu.com/cpu/IvyBridge.html.
  8. Kernel Based Virtual Machine. http://www.linux-kvm.org.
  9. LITMUS-RT. http://www.litmus-rt.org/.
  10. The Xen Project's Hypervisor for the ARM architecture. http://www.xenproject.org/ developers/teams/arm-hypervisor.html.
  11. T. Aswathanarayana, D. Niehaus, V. Subramonian, and C. Gill. Design and Performance of Configurable Endsystem Scheduling Mechanisms. In RTAS, 2005.
  12. P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the Art of Virtualization. ACM SIGOPS Operating Systems Review, 2003.
  13. S. Barush and B. Brandenburg. Multiprocessor feasibility analysis of recurrent task systems with specified processor affinities. In RTSS, 2013.
  14. A. Bastoni, B. B. Brandenburg, and J. H. Anderson. An Empirical Comparison of Global, and Clustered Multiprocessor EDF Schedulers. In RTSS. IEEE, 2010.
  15. M. Behnam, I. Shin, T. Nolte, and M. Nolin. SIRAP: A Synchronization Protocol for Hierarchical Resource Sharing in Real-Time Open Systems. In EMSOFT, 2007.
  16. E. Bini, G. Buttazzo, and M. Bertogna. The Multi Supply Function Abstraction for Multiprocessors. In RTCSA. IEEE, 2009.
  17. B. B. Brandenburg and J. H. Anderson. On the Implementation of Global Real-Time Schedulers. In RTSS. IEEE, 2009.
  18. F. Bruns, S. Traboulsi, D. Szczesny, E. Gonzalez, Y. Xu, and A. Bilgic. An Evaluation of Microkernel-Based Virtualization for Embedded Real-Time Systems. In ECRTS, 2010.
  19. G. C. Buttazzo. Rate monotonic vs. edf: judgment day. Real-Time Syst., 29(1):5-26, Jan. 2005.
  20. J. M. Calandrino, H. Leontyev, A. Block, U. C. Devi, and J. H. Anderson. LITMUS-RT: A Testbed for Empirically Comparing Real-Time Multiprocessor Schedulers. In RTSS, 2006.
  21. F. Checconi, T. Cucinotta, D. Faggioli, and G. Lipari. Hierarchical Multiprocessor CPU Reservations for the Linux Kernel. OSPERT, 2009.
  22. A. Crespo, I. Ripoll, and M. Masmano. Partitioned Embedded Architecture Based on Hypervisor: the XtratuM Approach. In EDCC, 2010.
  23. T. Cucinotta, G. Anastasi, and L. Abeni. Respecting Temporal Constraints in Virtualised Services. In COMPSAC, 2009.
  24. T. Cucinotta, F. Checconi, G. Kousiouris, D. Kyriazis, T. Varvarigou, A. Mazzetti, Z. Zlatev, J. Papay, M. Boniface, S. Berger, et al. Virtualised e-learning with real-time guarantees on the irmos platform. In Service-Oriented Computing and Applications (SOCA). IEEE, 2010.
  25. M. Danish, Y. Li, and R. West. Virtual-CPU Scheduling in the Quest Operating System. In RTAS, 2011.
  26. Z. Deng and J. Liu. Scheduling Real-Time Applications in an Open Environment. In RTSS, 1997.
  27. A. Easwaran, M. Anand, and I. Lee. Compositional Analysis Framework Using EDP Resource Models. In RTSS, 2007.
  28. A. Easwaran, I. Shin, and I. Lee. Optimal virtual cluster-based multiprocessor scheduling. Real-Time Syst., 43(1):25-59, Sept. 2009.
  29. A. Easwaran, I. Shin, and I. Lee. Optimal Virtual Cluster-Based Multiprocessor Scheduling. Real-Time Systems, 2009.
  30. S. Govindan, A. R. Nath, A. Das, B. Urgaonkar, and A. Sivasubramaniam. Xen and Co.: Communication-aware CPU Scheduling for Consolidated Xen-based Hosting Platforms. In VEE, 2007.
  31. G. Gracioli, A. A. Fröhlich, R. Pellizzoni, and S. Fischmeister. Implementation and evaluation of global and partitioned scheduling in a real-time os. Real-Time Systems, 2013.
  32. S. Groesbrink, L. Almeida, M. de Sousa, and S. M. Petters. Towards certifiable adaptive reservations for hypervisor-based virtualization. In RTAS, 2014.
  33. D. Gupta, R. Gardner, and L. Cherkasova. Xenmon: Qos Monitoring and Performance Profiling Tool. Hewlett-Packard Labs, Tech. Rep. HPL-2005-187, 2005.
  34. H. Härtig, M. Völp, and M. Hähnel. The case for practical multi-resource and multi-level scheduling based on energy/utility. In RTCSA, 2013.
  35. A. Lackorzyński, A. Warg, M. Völp, and H. Härtig. Flattening hierarchical scheduling. In EMSOFT. ACM, 2012.
  36. J. Lee, S. Xi, S. Chen, L. T. X. Phan, C. Gill, I. Lee, C. Lu, and O. Sokolsky. Realizing Compositional Scheduling Through Virtualization. In RTAS. IEEE, 2012.
  37. M. Lee, A. Krishnakumar, P. Krishnan, N. Singh, and S. Yajnik. Supporting Soft Real-Time Tasks in the Xen Hypervisor. In ACM Sigplan Notices, 2010.
  38. H. Leontyev and J. H. Anderson. A Hierarchical Multiprocessor Bandwidth Reservation Scheme with Timing Guarantees. Real-Time Systems, 2009.
  39. B. Lin and P. A. Dinda. Vsched: Mixing batch and interactive virtual machines using periodic real-time scheduling. In Proceedings of the 2005 ACM/IEEE conference on Supercomputing, 2005.
  40. G. Lipari and E. Bini. A Framework for Hierarchical Scheduling on Multiprocessors: From Application Requirements to Run-Time Allocation. In RTSS. IEEE, 2010.
  41. W. Lunniss, S. Altmeyer, C. Maiza, and R. I. Davis. Integrating Cache Related Pre-emption Delay Analysis into EDF Scheduling. In RTAS, 2013.
  42. J. Regehr and J. Stankovic. HLS: A Framework for Composing Soft Real-Time Schedulers. In RTSS, 2001.
  43. S. Altmeyer, R.I. Davis, and C. Maiza. Improved Cache Related Pre-emption Delay Aware Response Time Analysis for Fixed Priority Pre-emptive Systems. Real-Time Systems, 2012.
  44. I. Shin and I. Lee. Compositional Real-Time Scheduling Framework. In RTSS, 2004.
  45. Y. Wang and K. Lin. The Implementation of Hierarchical Schedulers in the RED-Linux Scheduling Framework. In ECRTS, 2000.
  46. S. Xi, J. Wilson, C. Lu, and C. Gill. RT-Xen: Towards Real-Time Hypervisor Scheduling in Xen. In EMSOFT. ACM, 2011.
  47. M. Xu, L. T. X. Phan, I. Lee, and O. Sokolsky. Compositional analysis under global deadline monotonic. Technical report, University of Pennsylvania, 2013.
  48. M. Xu, L. T. X. Phan, I. Lee, O. Sokolsky, S. Xi, C. Lu, and C. D. Gill. Cache-Aware Compositional Analysis of Real-Time Multicore Virtualization Platforms. In RTSS, 2013.
  49. J. Yang, H. Kim, S. Park, C. Hong, and I. Shin. Implementation of compositional scheduling framework on virtualization. SIGBED Rev, 2011.
  50. S. Yoo, K.-H. Kwak, J.-H. Jo, and C. Yoo. Toward under-millisecond I/O latency in Xen-ARM. In Proceedings of the Second Asia-Pacific Workshop on Systems, page 14. ACM, 2011.
  51. H. Yun, G. Yao, R. Pellizzoni, M. Caccamo, and L. Sha. MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isolation in Multi-core Platforms. In RTAS, 2013.
  52. W. Zhang, S. Rajasekaran, T. Wood, and M. Zhu. MIMP: Deadline and Interference Aware Scheduling of Hadoop Virtual Machines. In IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, 2014.