Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Tightening Contention Delays While Scheduling Parallel Applications on Multi-core Architectures

Published: 27 September 2017 Publication History

Abstract

Multi-core systems are increasingly interesting candidates for executing parallel real-time applications, in avionic, space or automotive industries, as they provide both computing capabilities and power efficiency. However, ensuring that timing constraints are met on such platforms is challenging, because some hardware resources are shared between cores.
Assuming worst-case contentions when analyzing the schedulability of applications may result in systems mistakenly declared unschedulable, although the worst-case level of contentions can never occur in practice. In this paper, we present two contention-aware scheduling strategies that produce a time-triggered schedule of the application’s tasks. Based on knowledge of the application’s structure, our scheduling strategies precisely estimate the effective contentions, in order to minimize the overall makespan of the schedule. An Integer Linear Programming (ILP) solution of the scheduling problem is presented, as well as a heuristic solution that generates schedules very close to ones of the ILP (5% longer on average), with a much lower time complexity. Our heuristic improves by 19% the overall makespan of the resulting schedules compared to a worst-case contention baseline.

References

[1]
Ahmed Alhammad and Rodolfo Pellizzoni. 2014. Time-predictable execution of multithreaded applications on multicore systems. In Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014. IEEE, 1--6.
[2]
Matthias Becker, Dakshina Dasari, Borislav Nicolic, Benny Akesson, Vincent Nélis, and Thomas Nolte. 2016. Contention-free execution of automotive applications on a clustered many-core platform. In Real-Time Systems (ECRTS), 2016 28th Euromicro Conference on. IEEE, 14--24.
[3]
Gerald G. Brown and Robert F. Dell. 2007. Formulating integer linear programs: A rogues’ gallery. INFORMS Transactions on Education 7, 2 (2007), 153--159.
[4]
Yoonseo Choi, Yuan Lin, Nathan Chong, Scott Mahlke, and Trevor Mudge. 2009. Stream compilation for real-time embedded multicore systems. In Code Generation and Optimization, 2009. CGO 2009. International Symposium on. IEEE, 210--220.
[5]
Edward G. Coffman Jr, Michael R. Garey, and David S. Johnson. 1996. Approximation algorithms for bin packing: A survey. In Approximation Algorithms for NP-hard Problems. PWS Publishing Co., 46--93.
[6]
Dakshina Dasari and Vincent Nélis. 2012. An analysis of the impact of bus contention on the WCET in multicores. In High Performance Computing and Communication 8 2012 IEEE 9th International Conference on Embedded Software and Systems (HPCC-ICESS), 2012 IEEE 14th International Conference on. IEEE, 1450--1457.
[7]
Dakshina Dasari, Vincent Nelis, and Benny Akesson. 2016. A framework for memory contention analysis in multi-core platforms. Real-Time Systems 52, 3 (2016), 272--322.
[8]
RI Davis and A Burns. 2011. A survey of hard real-time scheduling algorithms for multiprocessor systems. In ACM Computing Surveys (2011).
[9]
Benoît Dupont De Dinechin, Duco Van Amstel, Marc Poulhiès, and Guillaume Lager. 2014. Time-critical computing on a single-chip massively parallel processor. In Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014. IEEE, 1--6.
[10]
Steven Derrien, Isabelle Puaut, Panayiotis Alefragis, Marcus Bednara, Harald Bucher, Clément David, Yann Debray, Umut Durak, Imen Fassi, Christian Ferdinand, Damien Hardy, Angeliki Kritikakou, Gerard Rauwerda, Simon Reder, Martin Sicks, Timo Stripf, Kim Sunesen, Timon ter Braak, Nikolaos Voros, and Jürgen Becker. 2017. WCET-aware parallelization of model-based applications for multi-cores: The ARGO approach. In Design, Automation and Test in Europe Conference and Exhibition (DATE), 2017. IEEE.
[11]
Robert P. Dick, David L. Rhodes, and Wayne Wolf. 1998. TGFF: Task graphs for free. In Proceedings of the 6th International Workshop on Hardware/Software Codesign. IEEE Computer Society, 97--101.
[12]
Gabriel Fernandez, Jaume Abella Ferrer, Eduardo Qui nones Moreno, Christine Rochange, Tullio Vardanega, Francisco Javier Cazorla Almeida, et al. 2014. Contention in multicore hardware shared resources: Understanding of the state of the art. (2014).
[13]
Georgia Giannopoulou, Nikolay Stoimenov, Pengcheng Huang, Lothar Thiele, and Benoît Dupont Dinechin. 2016. Mixed-criticality scheduling on cluster-based manycores with shared communication and storage resources. Real-Time Systems Journal 52, 4 (July 2016), 399--449.
[14]
Michael I. Gordon, William Thies, Michal Karczmarek, Jasper Lin, Ali S. Meli, Andrew A. Lamb, Chris Leger, Jeremy Wong, Henry Hoffmann, David Maze, et al. 2002. A stream compiler for communication-exposed architectures. In ACM SIGPLAN Notices, Vol. 37. ACM, 291--303.
[15]
Igor Griva, Stephen G. Nash, and Ariela Sofer. 2008. Linear and Nonlinear Optimization, Second Edition. Society for Industrial Mathematics.
[16]
Rihani Hamza, Moy Matthieu, Maiza Claire, Davis Robert I., and Altmeyer Sebastian. 2016. Response time analysis of synchronous data flow programs on a many-core processor. In Proceedings of the 24th International Conference on Real-Time Networks and Systems (RTNS 2016). ACM.
[17]
Catherine E. Jarrett, Bryan C. Ward, and James H. Anderson. 2015. A contention-sensitive fine-grained locking protocol for multiprocessor real-time systems. In Proceedings of the 23rd International Conference on Real Time and Networks Systems. ACM, 3--12.
[18]
Timon Kelter, Tim Harde, Peter Marwedel, and Heiko Falk. 2013. Evaluation of resource arbitration methods for multi-core real-time systems. In WCET. 1--10.
[19]
Hyoseung Kim, Dionisio De Niz, Björn Andersson, Mark Klein, Onur Mutlu, and Ragunathan Rajkumar. 2014. Bounding memory interference delay in COTS-based multi-core systems. In Real-Time and Embedded Technology and Applications Symposium (RTAS), 2014 IEEE 20th. IEEE, 145--154.
[20]
Mircea Negrean, Simon Schliecker, and Rolf Ernst. 2009. Response-time analysis of arbitrarily activated tasks in multiprocessor systems with shared resources. In Proceedings of the Conference on Design, Automation and Test in Europe. European Design and Automation Association, 524--529.
[21]
Rodolfo Pellizzoni, Emiliano Betti, Stanley Bak, Gang Yao, John Criswell, Marco Caccamo, and Russell Kegley. 2011. A predictable execution model for COTS-based embedded systems. In 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium. IEEE, 269--279.
[22]
Simon Schliecker, Mircea Negrean, and Rolf Ernst. 2010. Bounding the shared resource load for the performance analysis of multiprocessor systems. In Proceedings of the Conference on Design, Automation and Test in Europe. European Design and Automation Association, 759--764.
[23]
Martin Schoeberl, Florian Brandner, Stefan Hepp, Wolfgang Puffitsch, and Daniel Prokesch. 2015. Patmos reference handbook. Technical University of Denmark, Tech. Rep (2015).
[24]
Richard N. Taylor. 1983. Complexity of analyzing the synchronization structure of concurrent programs. Acta Informatica 19, 1 (1983), 57--84.
[25]
William Thies, Michal Karczmarek, and Saman Amarasinghe. 2002. StreamIt: A language for streaming applications. In Compiler Construction. Springer, 179--196.
[26]
Stephen Warshall. 1962. A theorem on boolean matrices. Journal of the ACM (JACM) 9, 1 (1962), 11--12.
[27]
Heechul Yun, Rodolfo Pellizzon, and Prathap Kumar Valsan. 2015. Parallelism-aware memory interference delay analysis for cots multicore systems. In Real-Time Systems (ECRTS), 2015 27th Euromicro Conference on. IEEE, 184--195.

Cited By

View all
  • (2024)ITER: an ITERative approach for inter-core timing analysis in statically scheduled cyclic executive systems on COTS multicore platforms for CRTESThe Journal of Supercomputing10.1007/s11227-024-06208-480:13(19719-19770)Online publication date: 1-Sep-2024
  • (2023)Runtime Resource Management with Multiple-Step-Ahead Workload PredictionACM Transactions on Embedded Computing Systems10.1145/360521322:4(1-34)Online publication date: 20-Jun-2023
  • (2023)X-Stream: Accelerating streaming segments on MPSoCs for real-time applicationsJournal of Systems Architecture10.1016/j.sysarc.2023.102857138(102857)Online publication date: May-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 16, Issue 5s
Special Issue ESWEEK 2017, CASES 2017, CODES + ISSS 2017 and EMSOFT 2017
October 2017
1448 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/3145508
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 27 September 2017
Accepted: 01 July 2017
Revised: 01 June 2017
Received: 01 April 2017
Published in TECS Volume 16, Issue 5s

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Real-time system
  2. contention-aware scheduling

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)14
  • Downloads (Last 6 weeks)2
Reflects downloads up to 14 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)ITER: an ITERative approach for inter-core timing analysis in statically scheduled cyclic executive systems on COTS multicore platforms for CRTESThe Journal of Supercomputing10.1007/s11227-024-06208-480:13(19719-19770)Online publication date: 1-Sep-2024
  • (2023)Runtime Resource Management with Multiple-Step-Ahead Workload PredictionACM Transactions on Embedded Computing Systems10.1145/360521322:4(1-34)Online publication date: 20-Jun-2023
  • (2023)X-Stream: Accelerating streaming segments on MPSoCs for real-time applicationsJournal of Systems Architecture10.1016/j.sysarc.2023.102857138(102857)Online publication date: May-2023
  • (2022)Interference-Aware Schedulability Analysis and Task Allocation for Multicore Hard Real-Time SystemsElectronics10.3390/electronics1109131311:9(1313)Online publication date: 21-Apr-2022
  • (2022)LET Paradigm Scheduling Algorithm Considering Parallel Processing on Clustered Many-core ProcessorJournal of Information Processing10.2197/ipsjjip.30.64630(646-658)Online publication date: 2022
  • (2022)Evaluation and Comparison of Integer Programming Solvers for Hard Real-Time SchedulingIEICE Transactions on Information and Systems10.1587/transinf.2022EDP7073E105.D:10(1726-1733)Online publication date: 1-Oct-2022
  • (2022)A Survey of Techniques for Reducing Interference in Real-Time Applications on Multicore PlatformsIEEE Access10.1109/ACCESS.2022.315189110(21853-21882)Online publication date: 2022
  • (2021)Reducing WCET Overestimations in Multi-Thread Loops with Critical Section UsageEnergies10.3390/en1406174714:6(1747)Online publication date: 21-Mar-2021
  • (2021)SLAQAACM Transactions on Embedded Computing Systems10.1145/346277620:5(1-31)Online publication date: 9-Jul-2021
  • (2021)Addressing Multi-core Timing Interference using Co-Runner Locking2021 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS52674.2021.00017(54-67)Online publication date: Dec-2021
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media