Execution Model to Reduce the Interference of Shared Memory in ARINC 653 Compliant Multicore RTOS
Abstract
:1. Introduction
- We analyzed the interference caused by memory sharing in a commercial operating system (OS) and commercial off-the-shelf (COTS) hardware adopted in avionics systems. We measured the interference by measuring the execution time, L1 and L2 cache miss, and the BIU request counts. Experiments have shown that L2 cache misses and the BIU requests have a significant impact on the execution time.
- We applied an execution model to reduce interference. Then, we propose a method to implement the execution model with pseudo-partition and message queuing of commodity OS, which has limited source code modification. Experimental results show that TDMA can reduce the execution time by reducing the interference due to memory sharing. In contrast, the interference of AER was reduced, but its execution time increased by about 20% due to phase control between cores.
- We propose a multi-TDMA model that takes into account the characteristics of the target hardware. We demonstrate that multi-TDMA can reduce interference due to memory sharing by 60%. Multi-TDMA has twice the utilization of TDMA and can reduce the execution time by 30% compared to AER.
2. Background
2.1. Avionics System
2.2. Execution Model
3. Execution Models for Multicore RTOS
3.1. Multicore RTOS for Avionics Systems
3.2. Implementation of Execution Models
3.2.1. TDMA
3.2.2. AER
3.2.3. Proposed Model
4. Evaluations
4.1. Measurement Environments
4.2. Benchmark
4.3. Experimental Results
4.3.1. Application of the Execution Model
4.3.2. Multi-TDMA
5. Related Works
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Huyck, P. ARINC 653 and multi-core microprocessors—Considerations and potential impacts. In Proceedings of the 2012 IEEE/AIAA 31st Digital Avionics Systems Conference (DASC), Williamsburg, VA, USA, 4–18 October 2012; pp. 1–16. [Google Scholar]
- Agrou, H.; Sainrat, P.; Gatti, M.; Toillon, P. Mastering the behavior of multi-core systems to match avionics requirements. In Proceedings of the 2012 IEEE/AIAA 31st Digital Avionics Systems Conference (DASC), Williamsburg, VA, USA, 4–18 October 2012; pp. 6E5-1–6E5-12. [Google Scholar]
- Liedtke, J.; Hartig, H.; Hohmuth, M. OS-controlled cache predictability for real-time systems. In Proceedings of the Third IEEE Real-Time Technology and Applications Symposium, Montreal, QC, Canada, 9–11 June 1997; pp. 213–224. [Google Scholar]
- Mittal, S. A survey of techniques for cache locking. ACM Trans. Des. Autom. Electron. Syst. (TODAES) 2016, 21, 1–24. [Google Scholar] [CrossRef]
- Yun, H.; Yao, G.; Pellizzoni, R.; Caccamo, M.; Sha, L. Memguard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In Proceedings of the 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS), Philadelphia, PA, USA, 9–11 April 2013; pp. 55–64. [Google Scholar]
- Awan, M.A.; Souto, P.F.; Bletsas, K.; Akesson, B.; Tovar, E. Mixed-criticality scheduling with memory bandwidth regulation. In Proceedings of the 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, 19–23 March 2018; pp. 1277–1282. [Google Scholar]
- Pellizzoni, R.; Betti, E.; Bak, S.; Yao, G.; Criswell, J.; Caccamo, M.; Kegley, R. A predictable execution model for COTS-based embedded systems. In Proceedings of the 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium, Chicago, IL, USA, 11–14 April 2011; pp. 269–279. [Google Scholar]
- Yao, G.; Pellizzoni, R.; Bak, S.; Betti, E.; Caccamo, M. Memory-centric scheduling for multicore hard real-time systems. Real-Time Syst. 2012, 48, 681–715. [Google Scholar] [CrossRef]
- Durrieu, G.; Faugère, M.; Girbal, S.; Gracia Pérez, D.; Pagetti, C.; Puffitsch, W. Predictable Flight Management System Implementation on a Multicore Processor. In Proceedings of the Embedded Real Time Software (ERTS’14), Toulouse, France, 5–7 February 2014. [Google Scholar]
- Melani, A.; Bertogna, M.; Bonifaci, V.; Marchetti-Spaccamela, A.; Buttazzo, G. Memory-processor co-scheduling in fixed priority systems. In Proceedings of the 23rd International Conference on Real Time and Networks Systems, Lille, France, 4–6 November 2015; pp. 87–96. [Google Scholar]
- El-Sayed, N.; Mukkara, A.; Tsai, P.A.; Kasture, H.; Ma, X.; Sanchez, D. KPart: A hybrid cache partitioning-sharing technique for commodity multicores. In Proceedings of the 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA), Vienna, Austria, 24–28 February 2018; pp. 104–117. [Google Scholar]
- Yun, H.; Mancuso, R.; Wu, Z.P.; Pellizzoni, R. PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms. In Proceedings of the 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS), Berlin, Germany, 15–17 April 2014; pp. 155–166. [Google Scholar]
- Diniz, N.; Rufino, J. ARINC 653 in space. In Proceedings of the DASIA 2005—Data Systems in Aerospace, Edinburgh, Scotland, 30 May–2 June 2005; Volume 602. [Google Scholar]
- Schranzhofer, A.; Chen, J.J.; Thiele, L. Timing analysis for TDMA arbitration in resource sharing systems. In Proceedings of the 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium, Stockholm, Sweden, 12–15 April 2010; pp. 215–224. [Google Scholar]
- Park, S.; Song, D.; Jang, H.; Kwon, M.Y.; Lee, S.H.; Kim, H.K.; Kim, H. Interference Analysis of Multicore Shared Resources with a Commercial Avionics RTOS. In Proceedings of the 2019 IEEE/AIAA 38th Digital Avionics Systems Conference (DASC), San Diego, CA, USA, 8–12 September 2019; pp. 1–10. [Google Scholar]
- Guthaus, M.R.; Ringenberg, J.S.; Ernst, D.; Austin, T.M.; Mudge, T.; Brown, R.B. MiBench: A free, commercially representative embedded benchmark suite. In Proceedings of the Fourth Annual IEEE International Workshop on Workload Characterization. WWC-4 (Cat. No.01EX538), Austin, TX, USA, 2 December 2001; pp. 3–14. [Google Scholar]
- Watkins, C.B.; Walter, R. Transitioning from federated avionics architectures to integrated modular avionics. In Proceedings of the 2007 IEEE/AIAA 26th Digital Avionics Systems Conference, Dallas, TX, USA, 21–25 October 2007; pp. 2.A.1-1–2.A.1-10. [Google Scholar]
- Littlefield-Lawwill, J.; Kinnan, L. System considerations for robust time and space partitioning in integrated modular avionics. In Proceedings of the 2008 IEEE/AIAA 27th Digital Avionics Systems Conference, St. Paul, MN, USA, 26–30 October 2008; pp. 1.B.1-1–1.B.1-11. [Google Scholar]
- Bieber, P.; Boniol, F.; Boyer, M.; Noulard, E.; Pagetti, C. New Challenges for Future Avionic Architectures. AerospaceLab 2012, 4, 1–10. [Google Scholar]
- VanderLeest, S.H. ARINC 653 hypervisor. In Proceedings of the 29th Digital Avionics Systems Conference, Salt Lake City, UT, USA, 3–7 October 2010; pp. 5.E.2-1–5.E.2-20. [Google Scholar]
- Gaska, T.; Werner, B.; Flagg, D. Applying virtualization to avionics systems—The integration challenges. In Proceedings of the 29th Digital Avionics Systems Conference, Salt Lake City, UT, USA, 3–7 October 2010; pp. 5.E.1-1–5.E.1-19. [Google Scholar]
- Prehofer, C.; Horst, O.; Dodi, R.; Geven, A.; Kornaros, G.; Montanari, E.; Paolino, M. Towards Trusted Apps platforms for open CPS. In Proceedings of the 2016 3rd International Workshop on Emerging Ideas and Trends in Engineering of Cyber-Physical Systems (EITEC), Vienna, Austria, 11 April 2016; pp. 23–28. [Google Scholar]
- Girbal, S.; Jean, X.; Le Rhun, J.; Pérez, D.G.; Gatti, M. Deterministic platform software for hard real-time systems using multi-core COTS. In Proceedings of the 2015 IEEE/AIAA 34th Digital Avionics Systems Conference (DASC), Prague, Czech Republic, 13–17 September 2015; pp. 8D4-1–8D4-15. [Google Scholar]
- Jean, X.; Gatti, M.; Faura, D.; Pautet, L.; Robert, T. A software approach for managing shared resources in multicore IMA systems. In Proceedings of the 2013 IEEE/AIAA 32nd Digital Avionics Systems Conference (DASC), East Syracuse, NY, USA, 5–10 October 2013; pp. 7D1-1–7D1-15. [Google Scholar]
- Löfwenmark, A.; Nadjm-Tehrani, S. Challenges in future avionic systems on multi-core platforms. In Proceedings of the 2014 IEEE International Symposium on Software Reliability Engineering Workshops, Naples, Italy, 3–6 November 2014; pp. 115–119. [Google Scholar]
- Jean, X.; Faura, D.; Gatti, M.; Pautet, L.; Robert, T. Ensuring robust partitioning in multicore platforms for ima systems. In Proceedings of the 2012 IEEE/AIAA 31st Digital Avionics Systems Conference (DASC), Williamsburg, VA, USA, 4–18 October 2012; pp. 7A4-1–7A4-9. [Google Scholar]
- Strunk, E.A.; Knight, J.C.; Aiello, M.A. Distributed reconfigurable avionics architectures. In Proceedings of the 23rd Digital Avionics Systems Conference (IEEE Cat. No. 04CH37576), Salt Lake City, UT, USA, 28 October 2004; Volume 2, p. 10.B.4-101. [Google Scholar]
- Andrei, A.; Eles, P.; Peng, Z.; Rosen, J. Predictable implementation of real-time applications on multiprocessor systems-on-chip. In Proceedings of the 21st International Conference on VLSI Design (VLSID 2008), Hyderabad, India, 4–8 January 2008; pp. 103–110. [Google Scholar]
- Maia, C.; Nogueira, L.; Pinho, L.M.; Pérez, D.G. A closer look into the aer model. In Proceedings of the 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA), Berlin, Germany, 6–9 September 2016; pp. 1–8. [Google Scholar]
- Maia, C.; Nelissen, G.; Nogueira, L.; Pinho, L.M.; Pérez, D.G. Schedulability analysis for global fixed-priority scheduling of the 3-phase task model. In Proceedings of the 2017 IEEE 23rd International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), Hsinchu, Taiwan, 16–18 August 2017; pp. 1–10. [Google Scholar]
- Parkinson, P.; Kinnan, L. Safety-critical software development for integrated modular avionics. Embed. Syst. Eng. 2003, 11, 40–41. [Google Scholar]
- Suhendra, V.; Mitra, T. Exploring locking & partitioning for predictable shared caches on multi-cores. In Proceedings of the 45th annual Design Automation Conference, Anaheim, CA, USA, 8–13 June 2008; pp. 300–303. [Google Scholar]
- Ding, H.; Liang, Y.; Mitra, T. WCET-centric dynamic instruction cache locking. In Proceedings of the 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, 24–28 March 2014; pp. 1–6. [Google Scholar]
- Puaut, I.; Decotigny, D. Low-complexity algorithms for static cache locking in multitasking hard real-time systems. In Proceedings of the 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002, Austin, TX, USA, 3–5 December 2002; pp. 114–123. [Google Scholar]
- Dugo, A.T.A.; Lefoul, J.B.; De Magalhaes, F.G.; Assal, D.; Nicolescu, G. Cache locking content selection algorithms for ARINC-653 compliant RTOS. ACM Trans. Embed. Comput. Syst. (TECS) 2019, 18, 1–20. [Google Scholar] [CrossRef]
- Vera, X.; Lisper, B.; Xue, J. Data Cache Locking for Tight Timing Calculations. ACM Trans. Embed. Comput. Syst. 2007, 7. [Google Scholar] [CrossRef] [Green Version]
- Gracioli, G.; Alhammad, A.; Mancuso, R.; Fröhlich, A.A.; Pellizzoni, R. A Survey on Cache Management Mechanisms for Real-Time Embedded Systems. ACM Comput. Surv. 2015, 48. [Google Scholar] [CrossRef] [Green Version]
- Ye, Y.; West, R.; Cheng, Z.; Li, Y. COLORIS: A dynamic cache partitioning system using page coloring. In Proceedings of the 2014 23rd International Conference on Parallel Architecture and Compilation Techniques (PACT), Edmonton, AB, Canada, 24–27 August 2014; pp. 381–392. [Google Scholar] [CrossRef]
- Pak, E.; Lim, D.; Ha, Y.M.; Kim, T. Shared Resource Partitioning in an RTOS. In Proceedings of the 13th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT), Dubrovnik, Croatia, 14 April 2017; Volume 14. [Google Scholar]
- Alhammad, A.; Wasly, S.; Pellizzoni, R. Memory efficient global scheduling of real-time tasks. In Proceedings of the 21st IEEE Real-Time and Embedded Technology and Applications Symposium, Seattle, WA, USA, 13–16 April 2015; pp. 285–296. [Google Scholar]
- Rivas, J.M.; Goossens, J.; Poczekajlo, X.; Paolillo, A. Implementation of Memory Centric Scheduling for COTS Multi-Core Real-Time Systems. In Proceedings of the 31st Euromicro Conference on Real-Time Systems (ECRTS 2019). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Stuttgart, Germany, 9–12 July 2019. [Google Scholar]
- Mancuso, R.; Dudko, R.; Caccamo, M. Light-PREM: Automated software refactoring for predictable execution on COTS embedded systems. In Proceedings of the 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications, Chongqing, China, 20–22 August 2014; pp. 1–10. [Google Scholar]
- Fort, F.; Forget, J. Code generation for multi-phase tasks on a multi-core distributed memory platform. In Proceedings of the 2019 IEEE 25th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), Hangzhou, China, 18–21 August 2019; pp. 1–6. [Google Scholar]
- Girbal, S.; Pérez, D.G.; Le Rhun, J.; Faugère, M.; Pagetti, C.; Durrieu, G. A complete toolchain for an interference-free deployment of avionic applications on multi-core systems. In Proceedings of the 2015 IEEE/AIAA 34th Digital Avionics Systems Conference (DASC), Prague, Czech Republic, 13–17 September 2015; pp. 7A2-1–7A2-14. [Google Scholar]
- Perret, Q.; Maurere, P.; Noulard, E.; Pagetti, C.; Sainrat, P.; Triquet, B. Temporal isolation of hard real-time applications on many-core processors. In Proceedings of the 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), Vienna, Austria, 11–14 April 2016; pp. 1–11. [Google Scholar]
- Yun, H.; Pellizzon, R.; Valsan, P.K. Parallelism-aware memory interference delay analysis for COTS multicore systems. In Proceedings of the 2015 27th Euromicro Conference on Real-Time Systems, Lund, Sweden, 7–10 July 2015; pp. 184–195. [Google Scholar]
- Agrawal, A.; Fohler, G.; Freitag, J.; Nowotsch, J.; Uhrig, S.; Paulitsch, M. Contention-aware dynamic memory bandwidth isolation with predictability in cots multicores: An avionics case study. In Proceedings of the 29th Euromicro Conference on Real-Time Systems (ECRTS 2017), Dubrovnik, Croatia, 27–30 June 2017; Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik: Wadern, Germany. [Google Scholar]
Execution Model | ||
---|---|---|
Time-Division Multiple Access (TDMA) | Acquisition Execution Restitution (AER) | |
Description |
|
|
Advantage |
|
|
Disadvantage |
|
|
Phase | |||
---|---|---|---|
A | E | R | |
L1 data cache misses | 8802 | 583 | 8739 |
L2 cache misses | 592 | 19 | 17 |
BIU requests | 763 | 14 | 13 |
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Park, S.; Kwon, M.-Y.; Kim, H.-K.; Kim, H. Execution Model to Reduce the Interference of Shared Memory in ARINC 653 Compliant Multicore RTOS. Appl. Sci. 2020, 10, 2464. https://doi.org/10.3390/app10072464
Park S, Kwon M-Y, Kim H-K, Kim H. Execution Model to Reduce the Interference of Shared Memory in ARINC 653 Compliant Multicore RTOS. Applied Sciences. 2020; 10(7):2464. https://doi.org/10.3390/app10072464
Chicago/Turabian StylePark, Sihyeong, Mi-Young Kwon, Hoon-Kyu Kim, and Hyungshin Kim. 2020. "Execution Model to Reduce the Interference of Shared Memory in ARINC 653 Compliant Multicore RTOS" Applied Sciences 10, no. 7: 2464. https://doi.org/10.3390/app10072464
APA StylePark, S., Kwon, M. -Y., Kim, H. -K., & Kim, H. (2020). Execution Model to Reduce the Interference of Shared Memory in ARINC 653 Compliant Multicore RTOS. Applied Sciences, 10(7), 2464. https://doi.org/10.3390/app10072464