Abstract
Multicore platforms are becoming increasingly popular in real-time systems. One of the major challenges in designing multicore real-time systems is ensuring consistent and timely access to shared resources. Lock-based protection mechanisms such as MPCP and MSRP have been proposed to guarantee mutually exclusive access in multicore systems at the expense of blocking. In this article, we consider partitioning and scheduling in multicore real-time systems with resource sharing. We first propose a resource-aware task partitioning algorithm for systems with lock-based protection. Wait-free methods, which ensure consistent access to shared memory resources with negligible blocking at the expense of additional memory space, are a suitable alternative when the shared resource is a communication buffer. We propose several approaches to solve the joint problem of task partitioning and the selection of a data consistency mechanism (lock-based or wait-free). The problem is first formulated as an Integer Linear Programming (ILP). For large systems where an ILP solution is not scalable, we propose two heuristic algorithms. Experimental results compare the effectiveness of the proposed approaches in finding schedulable systems with low memory cost and show how the use of wait-free methods can significantly improve schedulability.
- H. Huang, P. Pillai, and K. G. Shin. 2002. Improving wait-free algorithms for interprocess communication in embedded real-time systems. In USENIX Annual Technical Conference. Google Scholar
Digital Library
- R. Rajkumar. 1990. Real-time synchronization protocols for shared memory multiprocessors. In International Conference on Distributed Computing Systems.Google Scholar
Cross Ref
- P. Gai, G. Lipari, and M. D. Natale. 2001. Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip. In IEEE Real-Time Systems Symposium. Google Scholar
Digital Library
- J. Chen and A. Burns. 1999. Loop-free asynchronous data sharing in multiprocessor real-time systems based on timing properties. In International Conference on Real-Time Computing Systems and Applications. Google Scholar
Digital Library
- K. Lakshmanan, D. de Niz, and R. Rajkumar. 2009. Coordinated task scheduling, allocation and synchronization on multiprocessors. In IEEE Real-Time Systems Symposium. Google Scholar
Digital Library
- S. Dhall and C. Liu. 1978. On a real-time scheduling problem. Operations Research 26, 1 (1978), 127--140. Google Scholar
Digital Library
- The AUTOSAR consortium. The AUTOSAR Standard, specification version 4.1. {Online} http://www.autosar.org.Google Scholar
- Z. Al-Bayati, Y. Sun, H. Zeng, M. Di Natale, Q. Zhu, and B. Meyer. 2015. Task placement and selection of data consistency mechanisms for real-time multicore applications. In IEEE Real-Time and Embedded Technology and Applicatons Symposium.Google Scholar
- A. Wieder and B. Brandenburg. 2013. Efficient partitioning of sporadic real-time tasks with shared resources and spin locks. In IEEE International Symposium on Industrial Embedded Systems.Google Scholar
- F. Nemati, M. Behnam, and T. Nolte. 2009. Efficiently migrating real-time systems to multi-cores. In IEEE Conference on Emerging Technologies 8 Factory Automation. Google Scholar
Digital Library
- N. Suzuki, H. Kim, D. De Niz, B. Andersson, L. Wrage, M. Klein, and R. Rajkumar. 2013. Coordinated bank and cache coloring for temporal protection of memory accesses. In IEEE Conference on Computational Science and Engineering. Google Scholar
Digital Library
- G. Gracioli and A. Fröhlich. 2014. CAP: Color-aware task partitioning for multicore real-time applications. In IEEE Conference on Emerging Technologies 8 Factory Automation.Google Scholar
- R. Davis and A. Burns. 2011. A survey of hard real-time scheduling for multiprocessor systems. ACM Computing Surveys 43, 4 (Oct. 2011). Google Scholar
Digital Library
- S. Baruah and N. Fisher. 2005. The partitioned multiprocessor scheduling of sporadic task systems. In IEEE Real-Time Systems Symposium. Google Scholar
Digital Library
- N. Fisher and S. Baruah. 2006. The partitioned scheduling of sporadic tasks according to static priorities. In Euromicro Conference on Real-Time Systems. Google Scholar
Digital Library
- S. Baruah and E. Bini. 2008. Partitioned scheduling of sporadic task systems: An ILP based approach. In Conference on Design and Architectures for Signal and Image Processing.Google Scholar
- B. Chattopadhyay and S. Baruah. 2011. A lookup-table driven approach to partitioned scheduling. In IEEE Real-Time and Embedded Technology and Applications Symposium. Google Scholar
Digital Library
- S. Baruah. 2011. The partitioned EDF scheduling of sporadic task systems. In IEEE Real-Time Systems Symposium. Google Scholar
Digital Library
- C. Dong and H. Zeng. 2014. Minimizing stack memory for hard real-time applications on multicore platforms. In Conference on Design, Automation and Test in Europe. Google Scholar
Digital Library
- C. Wang, C. Dong, Z. Gu, and H. Zeng. 2015. Minimizing stack memory for hard real-time applications on multicore platforms with partitioned fixed-priority or EDF scheduling. ACM Transactions on Design Automation of Electronic Systems 21, 3 (2015), 1--25. Google Scholar
Digital Library
- B. Brandenburg. 2013. A fully preemptive multiprocessor semaphore protocol for latency-sensitive real-time applications. In Euromicro Conference on Real-Time Systems. Google Scholar
Digital Library
- A. Block, H. Leontyev, B. Brandenburg, and J. Anderson. 2007. A flexible real-time locking protocol for multiprocessors. In Real-Time Computing Systems and Applications. Google Scholar
Digital Library
- H. Zeng and M. Di Natale. 2011. Mechanisms for guaranteeing data consistency and time determinism in AUTOSAR software on multi-core platforms. In IEEE Symposium on Industrial Embedded Systems.Google Scholar
- C. Sofronis, S. Tripakis, and P. Caspi. 2006. A memory-optimal buffering protocol for preservation of synchronous semantics under preemptive scheduling. In ACM International Conference on Embedded software. Google Scholar
Digital Library
- G. Wang, M. Di Natale, and A. Sangiovanni-Vincentelli. 2009. Improving the size of communication buffers in synchronous models with time constraints. IEEE Transactions on Industrial Informatics 5, 3 (Aug. 2009), 229--240.Google Scholar
- G. Han, H. Zeng, M. Di Natale, X. Liu, and W. Dou. 2014. Experimental evaluation and selection of data communication mechanisms in multicore platforms. IEEE Transactions on Industrial Informatics 10, 2 (May 2014), 903--918.Google Scholar
- F. Nemati, T. Nolte, and M. Behnam. 2010. Partitioning real-time systems on multiprocessors with shared resources. In Conference on Principles of Distributed Systems. Google Scholar
Digital Library
- 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. Google Scholar
Digital Library
- J. Chen et al. 2016. Many Suspensions, Many Problems: A Review of Self-Suspending Tasks in Real-Time Systems. Department of Computer Science, Technical Report 854. TU Dortmund.Google Scholar
- T. Baker. 1990. A stack-based resource allocation policy for realtime processes. In IEEE Real-Time Systems Symposium.Google Scholar
Cross Ref
- A. Wieder and B. Brandenburg. 2013. On spin locks in AUTOSAR: Blocking analysis of FIFO, unordered, and priority-ordered spin locks. In IEEE Real-Time Systems Symposium.Google Scholar
- B. Brandenburg. 2013. Improved analysis and evaluation of real-time semaphore protocols for P-FP scheduling. In Real-Time and Embedded Technology and Applications Symposium. Google Scholar
Digital Library
- M. Herlihy. 1990. A methodology for implementing highly concurrent structures. ACM Symposium on Principles and Practices of Parallel Programming. Google Scholar
Digital Library
- N. Audsley. 2001. On priority assignment in fixed priority scheduling. Information Processing Letters 79, 1 (2001), 39--44. Google Scholar
Digital Library
- IBM ILOG CPLEX Optimization Studio. {Online}. Available: https://www-01.ibm.com/software/commerce/optimization/cplex-optimizer/Google Scholar
Index Terms
Partitioning and Selection of Data Consistency Mechanisms for Multicore Real-Time Systems
Recommendations
Load Balancing Aware Real-Time Task Partitioning in Multicore Systems
RTCSA '12: Proceedings of the 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and ApplicationsReal-time applications of future IT will continue to drive the demand for performance scaling in devices ranging from sensors to servers. Parallel processing in the form of mul-ticore and manycore architectures will also continue to be the principal ...
Hardware support for WCET analysis of hard real-time multicore systems
ISCA '09: Proceedings of the 36th annual international symposium on Computer architectureThe increasing demand for new functionalities in current and future hard real-time embedded systems like automotive, avionics and space industries is driving an increase in the performance required in embedded processors. Multicore processors represent ...
Hardware support for WCET analysis of hard real-time multicore systems
The increasing demand for new functionalities in current and future hard real-time embedded systems like automotive, avionics and space industries is driving an increase in the performance required in embedded processors. Multicore processors represent ...






Comments