Lightweight Real-Time Synchronization under P-EDF on Symmetric and Asymmetric Multiprocessors

This paper revisits lightweight synchronization under partitioned earliest-deadline first (P-EDF) scheduling. Four different lightweight synchronization mechanisms - namely preemptive and non-preemptive lock-free synchronization, as well as preemptive and non-preemptive FIFO spin locks - are studied by developing a new inflation-free schedulability test, jointly with matching bounds on worst-case synchronization delays. The synchronization approaches are compared in terms of schedulability in a large-scale empirical study considering both symmetric and asymmetric multiprocessors. While non-preemptive FIFO spin locks were found to generally perform best, lock-free synchronization was observed to offer significant advantages on asymmetric platforms.

[1]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[2]  Björn B. Brandenburg Improved analysis and evaluation of real-time semaphore protocols for P-FP scheduling , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[3]  Rocquencourt,et al.  Analysis of Deadline Scheduled Real-Time Systems , 1996 .

[4]  Binoy Ravindran,et al.  Lock-Free Synchronization for Dynamic Embedded Real-Time Systems , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[5]  James H. Anderson,et al.  An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[6]  Alan Burns,et al.  Applying new scheduling theory to static priority pre-emptive scheduling , 1993, Softw. Eng. J..

[7]  Hennadiy Leontyev,et al.  A Flexible Real-Time Locking Protocol for Multiprocessors , 2007, 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA 2007).

[8]  Sanjoy K. Baruah,et al.  Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor , 1990, Real-Time Systems.

[9]  Travis S. Craig Queuing spin lock algorithms to support timing predictability , 1993, 1993 Proceedings Real-Time Systems Symposium.

[10]  Alexander Wieder,et al.  Global Real-Time Semaphore Protocols: A Survey, Unified Analysis, and Comparison , 2015, 2015 IEEE Real-Time Systems Symposium.

[11]  Alexander Wieder,et al.  On Spin Locks in AUTOSAR: Blocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[12]  James H. Anderson,et al.  Scheduling and locking in multiprocessor real-time operating systems , 2011 .

[13]  Giorgio C. Buttazzo,et al.  Supporting Component-Based Development in Partitioned Multiprocessor Real-Time Systems , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[14]  Hennadiy Leontyev,et al.  Real-Time Synchronization on Multiprocessors: To Block or Not to Block, to Suspend or Spin? , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[15]  James H. Anderson,et al.  Supporting Lock-free Synchronization in Pfair-scheduled Systems ? , 2004 .

[16]  Òòòðð,et al.  Shared-memory Mutual Exclusion: Major Research Trends Since 1986 , 1986 .

[17]  Tommaso Cucinotta,et al.  Analysis and implementation of the multiprocessor bandwidth inheritance protocol , 2012, Real-Time Systems.

[18]  Michael L. Scott,et al.  Scheduler-conscious synchronization , 1997, TOCS.

[19]  Wang Yi,et al.  General and efficient Response Time Analysis for EDF scheduling , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[20]  Alan Burns,et al.  Schedulability Analysis for Real-Time Systems with EDF Scheduling , 2009, IEEE Transactions on Computers.

[21]  Mark Moir,et al.  Universal Constructions for Large Objects , 1995, IEEE Trans. Parallel Distributed Syst..

[22]  Theodore P. Baker,et al.  Stack-based scheduling of realtime processes , 1991, Real-Time Systems.

[23]  James H. Anderson,et al.  On the Scalability of Real-Time Scheduling Algorithms on Multicore Platforms: A Case Study , 2008, 2008 Real-Time Systems Symposium.

[24]  Giuseppe Lipari,et al.  Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[25]  James H. Anderson,et al.  Supporting lock-free synchronization in Pfair-scheduled real-time systems , 2006, J. Parallel Distributed Comput..

[26]  Sanjoy K. Baruah,et al.  Preemptively scheduling hard-real-time sporadic tasks on one processor , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[27]  James H. Anderson,et al.  Shared-memory mutual exclusion: major research trends since 1986 , 2003, Distributed Computing.

[28]  Michael L. Scott,et al.  Scalable reader-writer synchronization for shared-memory multiprocessors , 1991, PPOPP '91.

[29]  Michel Raynal,et al.  Algorithms for mutual exclusion , 1986 .

[30]  Lothar Thiele,et al.  Real-time calculus for scheduling hard real-time systems , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[31]  Maged M. Michael,et al.  Simple, fast, and practical non-blocking and blocking concurrent queue algorithms , 1996, PODC '96.

[32]  Hennadiy Leontyev,et al.  Efficient synchronization under global EDF scheduling on multiprocessors , 2006, 18th Euromicro Conference on Real-Time Systems (ECRTS'06).

[33]  James H. Anderson,et al.  Real-time computing with lock-free shared objects , 1997, TOCS.

[34]  Aloysius K. Mok,et al.  Improvement in feasibility testing for real-time tasks , 1996, Real-Time Systems.

[35]  Claudio Scordino,et al.  An EDF scheduling class for the Linux kernel ∗ , 2009 .

[36]  Giuseppe Lipari,et al.  Feasibility Analysis of Real-Time Periodic Tasks with Offsets , 2005, Real-Time Systems.

[37]  Giuseppe Lipari,et al.  Architecture for a Portable Open Source Real-Time Kernel Environment , 2000 .

[38]  Sanjoy K. Baruah,et al.  Resource Sharing in EDF-Scheduled Systems: A Closer Look , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).