Skip to main content
Log in

Cache-aware compositional analysis of real-time multicore virtualization platforms

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

Multicore processors are becoming ubiquitous, and it is becoming increasingly common to run multiple real-time systems on a shared multicore platform. While this trend helps to reduce cost and to increase performance, it also makes it more challenging to achieve timing guarantees and functional isolation. One approach to achieving functional isolation is to use virtualization. However, virtualization also introduces many challenges to the multicore timing analysis; for instance, the overhead due to cache misses becomes harder to predict, since it depends not only on the direct interference between tasks but also on the indirect interference between virtual processors and the tasks executing on them. In this paper, we present a cache-aware compositional analysis technique that can be used to ensure timing guarantees of components scheduled on a multicore virtualization platform. Our technique improves on previous multicore compositional analyses by accounting for the cache-related overhead in the components’ interfaces, and it addresses the new virtualization-specific challenges in the overhead analysis. To demonstrate the utility of our technique, we report results from an extensive evaluation based on randomly generated workloads.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

Notes

  1. A preliminary version of this paper has appeared in the Real-Time Systems Symposium (RTSS’13) (Xu et al. 2013).

  2. In this work, we assume that the cores either do not share a cache, or that the shared cache has been partitioned into cache sets that are each accessed exclusively by one core (Kim et al. 2012) We believe that an extension to shared caches is possible, and we plan to consider it in our future work.

  3. We are aware that using a constant maximum value to bound the cache-miss overhead of a task may be conservative, and extensions to a finer granularity, e.g., using program analysis, may be possible. However, as the first step, we keep this assumption to simplify the analysis in this work, and we defer such extensions to our future work.

  4. We say that a compositional analysis method is compatible with the underlying component’s schedulability test it uses if whenever a component \(C\) with a taskset \(\tau \) is deemed schedulable on \(m\) cores by the schedulability test, then \(C\) is also deemed schedulable under an interface with bandwidth no larger than \(m\) by the compositional analysis method.

  5. Here, \(d_k\) and \(t\) refer to \(D_k\) and \(A_k + D_k\) in Easwaran et al. (2009), respectively.

  6. Note that the number of full processors is always bounded from below by \(\lfloor U_i \rfloor \), where \(U_i\) is the total utilization of the tasks in \(\mathcal {D}_i\), and bounded from above by the number of tasks in \(\mathcal {D}_i\) or the number of physical platform (if given), whichever is smaller.

  7. Note that we inflate only the tasks’ WCETs and not the VCPUs’ budgets, since \(\delta ^{\mathsf {crpmd}}_{\mathsf {\tau _k}}\) includes the overhead for reloading the useful cache content of a preempted VCPU when it resumes.

  8. Recall that \(\mathsf {LP}(\tau _k) = \{\tau _i | d_i > d_k\}\).

  9. We assume other factors are same when we discuss one factor’s impact on the cache-aware analysis.

  10. We note that the interfaces given by the hybrid method and the baseline method are the same as the interfaces given by the cache-aware hybrid analysis method and task-centric analysis method proposed in the conference version (Xu et al. 2013), respectively.

References

  • Barham P, Dragovic B, Fraser K, Hand S, Harris T, Ho A, Neugebauer R, Pratt I, Warfield A (2003) Xen and the art of virtualization. In: SOSP

  • Baruah S, Baker T (2008) Schedulability analysis of global EDF. Real Time Syst 38(3):223–235

    Article  MATH  Google Scholar 

  • Baruah S, Fisher N (2009) Component-based design in multiprocessor real-time systems. In: ICESS

  • Bastoni A, Brandenburg BB, Anderson JH (2010) Cache-related preemption and migration delays: empirical approximation and impact on schedulability. In: Proceedings of OSPERT

  • Basumallick S, Nilsen K (1994) Cache issues in real-time systems. In: LCTES

  • Bini E, Bertogna M, Baruah S (2009) Virtual multiprocessor platforms: specification and use. In: RTSS

  • Brandenburg BB (2011) Scheduling and locking in multiprocessor real-time operating systems. PhD thesis, The University of North Carolina at Chapel Hill, Chapel Hill

  • Brandenburg BB, Leontyev H, Anderson JH (2011) An overview of interrupt accounting techniques for multiprocessor real-time systems. J Syst Archit 57(6):638–654

    Article  Google Scholar 

  • Bruns F, Traboulsi S, Szczesny D, Gonzalez E, Xu Y, Bilgic A (2010) An evaluation of microkernel-based virtualization for embedded real-time systems. In: ECRTS

  • Calandrino JM, Leontyev H, Block A, Devi UC, Anderson JH (2006) LITMUS RT: a testbed for empirically comparing real-time multiprocessor schedulers. In: RTSS

  • Crespo A, Ripoll I, Masmano M (2010) Partitioned embedded architecture based on hypervisor: the XtratuM approach. In: EDCC

  • Easwaran A, Anand M, Lee I (2007) Compositional analysis framework using EDP resource models. In: RTSS

  • Easwaran A, Shin I, Lee I (2009) Optimal virtual cluster-based multiprocessor scheduling. Real Time Syst 43(1):25–59

    Article  MATH  Google Scholar 

  • Guan N, Stigge M, Yi W, Yu G (2009) Cache-aware scheduling and analysis for multicores. In: EMSOFT

  • Hardy D, Piquet T, Puaut I (2009) Using bypass to tighten WCET estimates for multi-core processors with shared instruction caches. In: RTSS

  • Kim T, Peinado M, Mainar-Ruiz G (2012) System-level protection against cache-based side channel attacks in the cloud. In: USENIX security

  • Lee J, Phan LTX, Chen S, Sokolsky O, Lee I (2011) Improving resource utilization for compositional scheduling using DPRM interfaces. SIGBED Rev 8(1):38–45

    Article  Google Scholar 

  • Lee J, Xi S, Chen S, Phan LTX, Gill C, Lee I, Lu C, Sokolsky O (2012) Realizing compositional scheduling through virtualization. In: RTAS

  • Leontyev H, Anderson JH (2008) A hierarchical multiprocessor bandwidth reservation scheme with timing guarantees. In: ECRTS

  • Lipari G, Bini E (2010) A framework for hierarchical scheduling on multiprocessors: from application requirements to run-time allocation. In: RTSS

  • Phan LTX, Xu M, Lee J, Lee I, Sokolsky O (2013) Overhead-aware compositional analysis of real-time systems. In: RTAS

  • Sha L, Lehoczky JP, Rajkumar R (1986) Solutions for some practical problems in prioritized preemptive scheduling. In: RTSS

  • Shin I, Lee I (2003) Periodic resource model for compositional real-time guarantees. In: Proceedings of the 24th IEEE real-time systems symposium (RTSS), Cancun

  • Shin I, Easwaran A, Lee I (2008) Hierarchical scheduling framework for virtual clustering of multiprocessors. In: ECRTS

  • Xi S, Xu M, Lu C, Phan LTX, Gill C, Sokolsky O, Lee I (2014) Real-time multi-core virtual machine scheduling in Xen. In: EMSOFT

  • Xu M, Phan LTX, Lee I, Sokolsky O, Xi S, Lu C, Gill CD (2013) Cache-aware compositional analysis of real-time multicore virtualization platforms. In: RTSS

Download references

Acknowledgments

This research was supported in part by the ONR N000141310802, NSF CNS-1329984, NSF CNS-1117185, NSF ECCS-1135630, and The Ministry of Knowledge Economy (MKE), Korea, under the Global Collaborative R&D program supervised by the KIAT (M002300089).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Linh Thi Xuan Phan.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Xu, M., Phan, L.T.X., Sokolsky, O. et al. Cache-aware compositional analysis of real-time multicore virtualization platforms. Real-Time Syst 51, 675–723 (2015). https://doi.org/10.1007/s11241-015-9223-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-015-9223-2

Keywords

Navigation