Predictable GPU Sharing in Component-Based Real-Time Systems

Authors Syed W. Ali , Zelin Tong, Joseph Goh , James H. Anderson



PDF
Thumbnail PDF

File

LIPIcs.ECRTS.2024.15.pdf
  • Filesize: 1.57 MB
  • 22 pages

Document Identifiers

Author Details

Syed W. Ali
  • Department of Computer Science, University of North Carolina at Chapel Hill, NC, USA
Zelin Tong
  • Department of Computer Science, University of North Carolina at Chapel Hill, NC, USA
Joseph Goh
  • Department of Computer Science, University of North Carolina at Chapel Hill, NC, USA
James H. Anderson
  • Department of Computer Science, University of North Carolina at Chapel Hill, NC, USA

Cite AsGet BibTex

Syed W. Ali, Zelin Tong, Joseph Goh, and James H. Anderson. Predictable GPU Sharing in Component-Based Real-Time Systems. In 36th Euromicro Conference on Real-Time Systems (ECRTS 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 298, pp. 15:1-15:22, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)
https://doi.org/10.4230/LIPIcs.ECRTS.2024.15

Abstract

This paper presents a real-time locking protocol whose design was motivated by the goal of enabling safe GPU sharing in time-sliced component-based systems. This locking protocol enables a GPU to be shared concurrently across, and utilized within, isolated components with predictable execution times. It relies on a novel resizing technique where GPU work is dimensioned on-the-fly to run on partitions of an NVIDIA GPU. This technique can be applied to any component that internally utilizes global CPU scheduling. The proposed locking protocol enables increased GPU parallelism and reduces GPU capacity loss with analytically provable benefits.

Subject Classification

ACM Subject Classification
  • Computer systems organization → Real-time systems
Keywords
  • GPU locking protocols
  • real-time locking protocols
  • priority-inversion blocking
  • component-based systems

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Tanya Amert, Zelin Tong, Sergey Voronov, Joshua Bakita, F. Donelson Smith, and James H. Anderson. Timewall: Enabling time partitioning for real-time multicore+accelerator platforms. In 2021 IEEE Real-Time Systems Symposium (RTSS), pages 455-468, 2021. URL: https://doi.org/10.1109/RTSS52674.2021.00048.
  2. Madhukar Anand, Arvind Easwaran, Sebastian Fischmeister, and Insup Lee. Compositional feasibility analysis of conditional real-time task models. In 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC), pages 391-398, 2008. URL: https://doi.org/10.1109/ISORC.2008.47.
  3. Joshua Bakita and James H. Anderson. Hardware compute partitioning on nvidia gpus*. In 2023 IEEE 29th Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 54-66, 2023. URL: https://doi.org/10.1109/RTAS58335.2023.00012.
  4. Moris Behnam, Thomas Nolte, Mikael Sjodin, and Insik Shin. Overrun methods and resource holding times for hierarchical scheduling of semi-independent real-time systems. IEEE Transactions on Industrial Informatics, 6(1):93-104, 2010. Google Scholar
  5. Marko Bertogna, Nathan Fisher, and Sanjoy Baruah. Resource-sharing servers for open environments. IEEE Transactions on Industrial Informatics, 5(3):202-219, 2009. Google Scholar
  6. Alessandro Biondi, Giorgio Buttazzo, and Marko Bertogna. A design flow for supporting component-based software development in multiprocessor real-time systems. Real-Time Systems, 54, October 2018. URL: https://doi.org/10.1007/s11241-018-9301-3.
  7. Bjorn B. Brandenburg. Scheduling and Locking in Multiprocessor Real-Time Operating Systems. PhD thesis, University of North Carolina at Chapel Hill, USA, 2011. AAI3502550. Google Scholar
  8. Bjorn B. Brandenburg and James H. Anderson. Optimality results for multiprocessor real-time locking. In 2010 31st IEEE Real-Time Systems Symposium, pages 49-60, 2010. URL: https://doi.org/10.1109/RTSS.2010.17.
  9. U.M.C. Devi and J.H. Anderson. Tardiness bounds under global edf scheduling on a multiprocessor. In 26th IEEE International Real-Time Systems Symposium (RTSS'05), pages 12 pp.-341, 2005. URL: https://doi.org/10.1109/RTSS.2005.39.
  10. Glenn A. Elliott. Real-Time Scheduling for GPUs with Applications in Advanced Automotive Systems. PhD thesis, University of North Carolina at Chapel Hill, USA, 2015. URL: https://api.semanticscholar.org/CorpusID:63240444.
  11. P. Emberson, R. Stafford, and R.I. Davis. Techniques for the synthesis of multiprocessor tasksets. WATERS'10, January 2010. Google Scholar
  12. Philip Holman and James H. Anderson. Locking under pfair scheduling. ACM Trans. Comput. Syst., 24:140-174, 2006. URL: https://api.semanticscholar.org/CorpusID:7948325.
  13. Saksham Jain, Iljoo Baek, Shige Wang, and Ragunathan Rajkumar. Fractional gpus: Software-based compute and memory bandwidth reservation for gpus. In 2019 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 29-41, 2019. URL: https://doi.org/10.1109/RTAS.2019.00011.
  14. Catherine E. Nemitz, Kecheng Yang, Ming Yang, Pontus Ekberg, and James H. Anderson. Multiprocessor real-time locking protocols for replicated resources. In 2016 28th Euromicro Conference on Real-Time Systems (ECRTS), pages 50-60, 2016. URL: https://doi.org/10.1109/ECRTS.2016.29.
  15. Feddal Nordine, Houssam-Eddine Zahaf, and Giuseppe Lipari. Toward Precise Real-Time Scheduling on NVidia GPUs. In 15th Junior Researcher Workshop on Real-Time Computing 2022, Paris, France, June 2022. URL: https://hal.science/hal-03834181.
  16. Nathan Otterness, Vance Miller, Ming Yang, James H. Anderson, F. Donelson Smith, and Shige Wang. Gpu sharing for image processing in embedded real-time systems. In 2016 12th Annual Workshop on Operating Systems Platforms for Embedded Real-Time Applications, 2016. URL: https://api.semanticscholar.org/CorpusID:14892240.
  17. Paul J. Prisaznuk. Arinc 653 role in integrated modular avionics (ima). In 2008 IEEE/AIAA 27th Digital Avionics Systems Conference, pages 1.E.5-1-1.E.5-10, 2008. URL: https://doi.org/10.1109/DASC.2008.4702770.
  18. Lui Sha, Ragunathan Rajkumar, and John P. Lehoczky. Priority inheritance protocols: An approach to real-time synchronization. IEEE Transactions on Computers, 39(9):1175-1185, September 1990. URL: https://doi.org/10.1109/12.57058.
  19. Sergey Voronov, Stephen Tang, Tanya Amert, and James H. Anderson. Ai meets real-time: Addressing real-world complexities in graph response-time analysis. In 2021 IEEE Real-Time Systems Symposium (RTSS), pages 82-96, 2021. URL: https://doi.org/10.1109/RTSS52674.2021.00019.
  20. Bo Wu, Guoyang Chen, Dong Li, Xipeng Shen, and Jeffrey Vetter. Enabling and exploiting flexible task assignment on gpu through sm-centric program transformations. In Proceedings of the 29th ACM on International Conference on Supercomputing, ICS '15, pages 119-130, New York, NY, USA, 2015. Association for Computing Machinery. URL: https://doi.org/10.1145/2751205.2751213.
  21. Tyler Yandrofski, Jingyuan Chen, Nathan Otterness, James H. Anderson, and F. Donelson Smith. Making powerful enemies on nvidia gpus. In 2022 IEEE Real-Time Systems Symposium (RTSS), pages 383-395, 2022. URL: https://doi.org/10.1109/RTSS55097.2022.00040.