skip to main content
research-article

Timing-Anomaly Free Dynamic Scheduling of Conditional DAG Tasks on Multi-Core Systems

Authors Info & Claims
Published:08 October 2019Publication History
Skip Abstract Section

Abstract

In this paper, we propose a novel approach to schedule conditional DAG parallel tasks, with which we can derive safe response time upper bounds significantly better than the state-of-the-art counterparts. The main idea is to eliminate the notorious timing anomaly in scheduling parallel tasks by enforcing certain order constraints among the vertices, and thus the response time bound can be accurately predicted off-line by somehow “simulating” the runtime scheduling. A key challenge to apply the timing-anomaly free scheduling approach to conditional DAG parallel tasks is that at runtime it may generate exponentially many instances from a conditional DAG structure. To deal with this problem, we develop effective abstractions, based on which a safe response time upper bound is computed in polynomial time. We also develop algorithms to explore the vertex orders to shorten the response time bound. The effectiveness of the proposed approach is evaluated by experiments with randomly generated DAG tasks with different parameter configurations.

References

  1. Hamid Arabnejad and Jorge G. Barbosa. 2014. List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Transactions on Parallel and Distributed Systems 25, 3 (2014), 682--694Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Philip Axer, Sophie Quinton, Moritz Neukirchner, Rolf Ernst, Björn Döbel, and Hermann Härtig. 2013. Response-time analysis of parallel fork-join workloads with real-time constraints. In 2013 25th Euromicro Conference on Real-Time Systems. IEEE, 215--224.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Sanjoy Baruah. 2015. The federated scheduling of systems of conditional sporadic DAG tasks. In Proceedings of the 12th International Conference on Embedded Software. IEEE Press, 1--10.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Sanjoy Baruah, Marko Bertogna, and Giorgio Buttazzo. 2015. Multiprocessor Scheduling for Real-time Systems. Springer.Google ScholarGoogle Scholar
  5. Sanjoy Baruah, Vincenzo Bonifaci, and Alberto Marchetti-Spaccamela. 2015. The global EDF scheduling of systems of conditional sporadic DAG tasks. In 2015 27th Euromicro Conference on Real-Time Systems. IEEE, 222--231.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Sanjoy Baruah, Vincenzo Bonifaci, Alberto Marchetti-Spaccamela, Leen Stougie, and Andreas Wiese. 2012. A generalized parallel task model for recurrent real-time processes. In 2012 IEEE 33rd Real-Time Systems Symposium. IEEE, 63--72.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Jean Paul Calvez, Alan Wyche, and Charles Edmundson. 1993. Embedded Real-time Systems. Vol. 23. Wiley New York.Google ScholarGoogle Scholar
  8. Hoon Sung Chwa, Jinkyu Lee, Kieu-My Phan, Arvind Easwaran, and Insik Shin. 2013. Global edf schedulability analysis for synchronous parallel tasks on multicore platforms. In 2013 25th Euromicro Conference on Real-Time Systems. IEEE, 25--34.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Daniel Cordeiro, Grégory Mounié, Swann Perarnau, Denis Trystram, Jean-Marc Vincent, and Frédéric Wagner. 2010. Random graph generation for scheduling simulations. In Proceedings of the 3rd International ICST Conference on Simulation Tools and Techniques. ICST (Institute for Computer Sciences, Social-Informatics and, 60.Google ScholarGoogle ScholarCross RefCross Ref
  10. R. L. Graham. 1969. Bounds on multiprocessing timing anomalies. Siam Journal on Applied Mathematics 17, 2 (1969), 416--429.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Yu-Kwong Kwok and Ishfaq Ahmad. 1996. Dynamic critical-path scheduling: An effective technique for allocating task graphs to multiprocessors. IEEE Transactions on Parallel and Distributed Systems 7, 5 (1996), 506--521.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Yu-Kwong Kwok and Ishfaq Ahmad. 1999. Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Computing Surveys (CSUR) 31, 4 (1999), 406--471.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Karthik Lakshmanan, Shinpei Kato, and Ragunathan Rajkumar. 2010. Scheduling parallel real-time tasks on multi-core processors. In 2010 31st IEEE Real-Time Systems Symposium. IEEE, 259--268.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jing Li, Jian Jia Chen, Kunal Agrawal, Chenyang Lu, Chris Gill, and Abusayeed Saifullah. 2014. Analysis of federated and global scheduling for parallel real-time tasks. In 2014 26th Euromicro Conference on Real-Time Systems. IEEE, 85--96.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Thomas Lundqvist and Per Stenstrom. 1999. Timing anomalies in dynamically scheduled microprocessors. In Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No. 99CB37054). IEEE, 12--21.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Alessandra Melani, Marko Bertogna, Vincenzo Bonifaci, Alberto Marchetti-Spaccamela, and Giorgio Buttazzo. 2017. Schedulability analysis of conditional parallel task graphs in multicore systems. IEEE Trans. Comput. 66, 2 (2017), 339--353.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Alessandra Melani, Marko Bertogna, Vincenzo Bonifaci, Alberto Marchetti-Spaccamela, and Giorgio C. Buttazzo. 2015. Response-time analysis of conditional DAG tasks in multiprocessor systems. In 2015 27th Euromicro Conference on Real-Time Systems. IEEE, 211--221.Google ScholarGoogle Scholar
  18. Risat Mahmud Pathan, Petros Voudouris, and Per Stenstrom. 2018. Scheduling parallel real-time recurrent tasks on multicore platforms. IEEE Transactions on Parallel Distributed Systems PP, 99 (2018), 1--1.Google ScholarGoogle Scholar
  19. Jan Reineke, Björn Wachter, Stefan Thesing, Reinhard Wilhelm, Ilia Polian, Jochen Eisinger, and Bernd Becker. 2006. A definition and classification of timing anomalies. In 6th International Workshop on Worst-Case Execution Time Analysis (WCET’06). Schloss Dagstuhl-Leibniz-Zentrum für Informatik.Google ScholarGoogle Scholar
  20. Abusayeed Saifullah, Jing Li, Kunal Agrawal, Chenyang Lu, and Christopher Gill. 2013. Multi-core real-time scheduling for generalized parallel task models. Real-Time Systems 49, 4 (2013), 404--435.Google ScholarGoogle ScholarCross RefCross Ref
  21. Petros Voudouris, Per Stenström, and Risat Pathan. 2017. Timing-anomaly free dynamic scheduling of task-based parallel applications. In 2017 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS). IEEE, 365--376.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Timing-Anomaly Free Dynamic Scheduling of Conditional DAG Tasks on Multi-Core Systems

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!