Abstract
Heterogeneous multicore processors have recently become de facto computing engines for state-of-the-art embedded applications. Nonetheless, very little research focuses on the scheduling of periodic (implicit-deadline) real-time tasks upon heterogeneous multicores under the requirements of task synchronization, which is stemmed from resource access conflicts and can greatly affect the schedulability of tasks. In view of partitioned Earliest Deadline First and Multiprocessor Stack Resource Policy, we first discuss the blocking-aware utilization bound for uniform heterogeneous multicores and then illustrate its non-monotonicity, where the bound may decrease with more deployed cores. Following the insights obtained from the bound analysis, taking the system heterogeneity into consideration, we propose a Synchronization-Aware Task Partitioning Algorithm for Heterogeneous Multicores (SA-TPA-HM)). Several resource-guided and heterogeneity-oriented mapping heuristics are incorporated to reduce the negative impacts of blocking interferences for better schedulability performance of tasks and balanced workload distribution across cores. The extensive simulation results show that SA-TPA-HM can obtain the schedulability ratios approximate to an Integer Non-Linear Programming--based solution, and much higher (e.g., 60% more) in contrast to the existing partitioning algorithms targeted at homogeneous multicores. The measurement results in Linux kernel further reveal the practical viability of SA-TPA-HM that can experience lower runtime overhead (e.g., 15% less) when compared to other mapping schemes.
Supplemental Material
Available for Download
Supplemental movie, appendix, image and software files for, Blocking-Aware Partitioned Real-Time Scheduling for Uniform Heterogeneous Multicore Platforms
- Peter Greenhalgh. 2011. Big.LITTLE processing with ARM Cortex-a15 8 Cortex-A7. EE Times. Retrieved December 11, 2019 from https://www.eetimes.com/big-little-processing-with-arm-cortex-a15-cortex-a7/#Google Scholar
- Nagabhushan Chitlur, Ganapati Srinivasa, Scott Hahn, P. K. Gupta, Dheeraj Reddy, David Koufaty, Paul Brett, Abirami Prabhakaran, Li Zhao, and Nelson Ijih. 2012. QuickIA: Exploring heterogeneous architectures on real prototypes. In Proceedings of the International Symposium on High-Performance Computer Architecture. 1--8.Google ScholarDigital Library
- Markus Happe, Enno Bbers, and Marco Platzner. 2013. A self-adaptive heterogeneous multi-core architecture for embedded real-time video object tracking. Journal of Real-Time Image Processing 8, 1 (2013), 95--110.Google ScholarDigital Library
- Peter Kollig, Colin Osborne, and Tomas Henriksson. 2009. Heterogeneous multi-core platform for consumer multimedia applications. In Proceedings of the 2009 Design, Automation and Test in Europe Conference and Exhibition. 1254--1259.Google ScholarCross Ref
- Aref Karimiafshar, Mohammad Ali Montazeri, Mahdi Kalbasi, and Ali Fanian. 2013. Hard periodic real-time task scheduling on mobile heterogeneous processor. In Proceedings of the Conference on Information and Knowledge Technology. 394--399.Google ScholarCross Ref
- Maen Hammond, Guangzhi Qu, and Osamah A. Rawashdeh. 2015. Deploying and scheduling vision based advanced driver assistance systems (ADAS) on heterogeneous multicore embedded platform. In Proceedings of the 2015 9th International Conference on Frontier of Computer Science and Technology. 172--177.Google Scholar
- L. Sha, R. Rajkumar, and J. P. Lehoczky. 1990. Priority inheritance protocols: An approach to real-time synchronization. IEEE Transactions on Computers 39, 9 (1990), 1175--1185. DOI:http://dx.doi.org/10.1109/12.57058Google ScholarDigital Library
- A. Block, H. Leontyev, Björn B. Brandenburg, and J.-H. Anderson. 2007. A flexible real-time locking protocol for multiprocessors. In Proceedings of the IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. 47--56.Google ScholarDigital Library
- T. P. Baker. 1991. Stack-based scheduling for realtime processes. Real-Time Systems 3, 1 (1991), 67--99.Google ScholarDigital Library
- Paolo Gai, Marco Di Natale, Giuseppe Lipari, Alberto Ferrari, Claudio Gabellini, and Paolo Marceca. 2003. A comparison of MPCP and MSRP when sharing resources in the Janus multiple-processor on a chip platform. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium. 189--198.Google Scholar
- K. Lakshmanan, D. de Niz, and R. Rajkumar. 2009. Coordinated task scheduling, allocation and synchronization on multiprocessors. In Proceedings of the IEEE Real-Time Systems Symposium. 469--478.Google Scholar
- Björn B. Brandenburg and J.-H. Anderson. 2010. Optimality results for multiprocessor real-time locking. In Proceedings of the IEEE Real-Time Systems Symposium. 49--60.Google ScholarDigital Library
- Ting Hao Tsai, Lin Fong Fan, Ya Shu Chen, and Tien Shun Yao. 2016. Triple speed: Energy-aware real-time task synchronization in homogeneous multi-core systems. IEEE Transactions on Computers 65, 4 (2016), 1297--1309.Google ScholarDigital Library
- J.-J. Han, X. Wu, D. Zhu, H. Jin, L. T. Yang, and J.-L. Gaudiot. 2012. Synchronization-aware energy management for VFI-based multicore real-time systems. IEEE Transactions on Computers 61, 12 (2012), 1682--1696.Google ScholarDigital Library
- Wen Hung Huang, Maolin Yang, and Jian Jia Chen. 2016. Resource-oriented partitioned scheduling in multiprocessor systems: How to partition and how to share? In Proceedings of the Real-Time Systems Symposium. 111--122.Google ScholarCross Ref
- G. Tong and C. Liu. 2016. Supporting soft real-time sporadic task systems on uniform heterogeneous multiprocessors with no utilization loss. IEEE Transactions on Parallel and Distributed Systems 27, 9 (2016), 2740--2752.Google ScholarDigital Library
- Di Liu, Jelena Spasic, Peng Wang, and Todor Stefanov. 2016. Energy-efficient scheduling of real-time tasks on heterogeneous multicores using task splitting. In Proceedings of the IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. 149--158.Google ScholarCross Ref
- Hoon Sung Chwa, Jaebaek Seo, Jinkyu Lee, and Insik Shin. 2015. Optimal real-time scheduling on two-type heterogeneous multicore platforms. In Proceedings of the IEEE Real-Time Systems Symposium. 119--129.Google ScholarDigital Library
- Giovani Gracioli, Antônio Augusto Fröhlich, Rodolfo Pellizzoni, and Sebastian Fischmeister. 2013. Implementation and evaluation of global and partitioned scheduling in a real-time OS. Real-Time Systems 49, 6 (2013), 669--714.Google ScholarDigital Library
- Björn B. Brandenburg and James H. Anderson. 2008. A comparison of the M-PCP, D-PCP, and FMLP on LITMUSRT. In Principles of Distributed Systems. Lecture Notes in Computer Science, Vol. 5401. Springer, 105--124.Google Scholar
- Ya Shu Chen, Han Chiang Liao, and Ting Hao Tsai. 2012. Online real-time task scheduling in heterogeneous multicore system-on-a-chip. IEEE Transactions on Parallel and Distributed Systems 24, 1 (2012), 118--130.Google ScholarDigital Library
- Eduardo Valentin, Rosiane De Freitas, and Raimundo Barreto. 2017. Reaching optimum solutions for the low power hard real-time task allocation on multiple heterogeneous processors problem. In Proceedings of the Conference on Computing Systems Engineering. 128--135.Google Scholar
- Santiago Pagani, Anuj Pathania, Muhammad Shafique, Jian Jia Chen, and Jorg Henkel. 2017. Energy efficiency for clustered heterogeneous multicores. IEEE Transactions on Parallel and Distributed Systems 28, 5 (2017), 1315--1330.Google ScholarDigital Library
- H. Ali, U. U. Tariq, Y. Zheng, X. Zhai, and L. Liu. 2018. Contention and energy-aware real-time task mapping on NoC based heterogeneous MPSoCs. IEEE Access 6 (2018), 75110--75123.Google ScholarCross Ref
- Tien Shun Yao, Ting Hao Tsai, Ya Shu Chen, Jing Ho Chen, and Dai Chang Chen. 2017. Online energy-efficient real-time task scheduling for heterogeneous multicore systems. In Proceedings of the IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. 1--10.Google ScholarCross Ref
- Alan Burns and Andy J. Wellings. 2013. A schedulability compatible multiprocessor resource sharing protocol—MrsP. In Proceedings of the Euromicro Conference on Real-Time Systems. 282--291.Google Scholar
- F. Nemati, T. Nolte, and M. Behnam. 2010. Partitioning real-time systems on multiprocessors with shared resources. In Proceedings of the International Conference on Principles of Distributed Systems. 253--269.Google Scholar
- E. M. Saad, A. M. Elewi, M. Shalan, and M. H. Awadalla. 2014. Energy and synchronization-aware mapping of real-time tasks on asymmetric multicore platforms. International Journal of Computer Applications 75, 11 (2014), 35--40.Google ScholarCross Ref
- A. Wieder and B. B. Brandenburg. 2013. Efficient partitioning of sporadic real-time tasks with shared resources and spin locks. In Proceedings of the IEEE International Symposium on Industrial Embedded Systems. 49--58.Google Scholar
- Björn B. Brandenburg. 2014. A synchronous IPC protocol for predictable access to shared resources in mixed-criticality systems. In Proceedings of the IEEE Real-Time Systems Symposium. 196--206.Google ScholarCross Ref
- Alessandro Biondi, Giorgio Buttazzo, and Marko Bertogna. 2018. A design flow for supporting component-based software development in multiprocessor real-time systems. Real-Time Systems 54, 4 (2018), 800--829.Google ScholarDigital Library
- Jun Wu. 2017. A survey of energy-efficient task synchronization for real-time embedded systems. In Proceedings of the International Conference on Embedded and Real-Time Computing Systems and Applications. 1--6.Google ScholarCross Ref
- Xin Wang and Wei Zhang. 2016. Cache locking vs. partitioning for real-time computing on integrated CPU-GPU processors. In Proceedings of the IEEE 35th International Performance Computing and Communications Conference. 1--8.Google ScholarCross Ref
- Jian-Jun Han, Xin Tao, Dakai Zhu, and Laurence Yang. 2017. Resource sharing in multicore mixed-criticality systems: Utilization bound and blocking overhead. IEEE Transactions on Parallel and Distributed Systems 28, 12 (2017), 3626--3641.Google ScholarDigital Library
- Leandro Soares Indrusiak, James Harbin, and Alan Burns. 2015. Average and worst-case latency improvements in mixed-criticality wormhole networks-on-chip. In Proceedings of the Euromicro Conference on Real-Time Systems. 47--56.Google ScholarDigital Library
- Christian Zoubek and Peter Trommler. 2017. Overview of worst case execution time analysis in single- and multicore environments. In Proceedings of the International Conference on Architecture of Computing Systems. 1--5.Google Scholar
- Zaid Al-Bayati, Youcheng Sun, Haibo Zeng, Marco Di Natale, Qi Zhu, and Brett Meyer. 2015. Task placement and selection of data consistency mechanisms for real-time multicore applications. In Proceedings of the IEEE Real-Time and Embedded Technology and Applications Symposium. 172--181.Google ScholarCross Ref
- Jim Ras and Albert M. K. Cheng. 2009. An evaluation of the dynamic and static multiprocessor priority ceiling protocol and the multiprocessor stack resource policy in an SMP system. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium. 13--22.Google Scholar
- José María López, José Luis Díaz, and Daniel F. García. 2004. Utilization bounds for EDF scheduling on real-time multiprocessor systems. Real-Time Systems 28, 1 (2004), 39--68.Google ScholarDigital Library
- S. Funk and S. Baruah. 2005. Task assignment on uniform heterogeneous multiprocessors. In Proceedings of Real-Time Systems. 219--226.Google Scholar
- G. Raravi and V. Nelis. 2012. A PTAS for assigning sporadic tasks on two-type heterogeneous multiprocessors. In Proceedings of the IEEE Real-Time Systems Symposium. 117--126.Google Scholar
- Enrico Bini and Giorgio C. Buttazzo. 2005. Measuring the performance of schedulability tests. Real-Time Systems 30, 1--2 (2005), 129--154.Google ScholarDigital Library
Index Terms
- Blocking-Aware Partitioned Real-Time Scheduling for Uniform Heterogeneous Multicore Platforms
Recommendations
Resource-aware partitioned scheduling for heterogeneous multicore real-time systems
DAC '18: Proceedings of the 55th Annual Design Automation ConferenceHeterogeneous multicore processors have become popular computing engines for modern embedded real-time systems recently. However, there is rather limited research on the scheduling of real-time tasks running on heterogeneous multicore systems with ...
Minimizing Stack Memory for Hard Real-Time Applications on Multicore Platforms with Partitioned Fixed-Priority or EDF Scheduling
Special Section on New Physical Design Techniques for the Next Generation Integration Technology and Regular PapersMulticore processors are increasingly adopted in resource-constrained real-time embedded applications. In the development of such applications, efficient use of RAM memory is as important as the effective scheduling of software tasks. Preemption ...
A semi-partitioned real-time scheduling approach for periodic task systems on multicore platforms
SAC '12: Proceedings of the 27th Annual ACM Symposium on Applied ComputingSemi-partitioned scheduling is regarded as a viable alternative to partitioned or global scheduling approaches. Advantage of semi-partitioned scheduling is two-folds: it has reduced runtime overhead compared to global scheduling, and improved ...
Comments