Real-Time Performance and Middleware for Multiprocessor and Multicore Linux Platforms

An increasing number of distributed real-time applications are running on multicore platforms. However, existing real-time middleware (e.g., Real-Time CORBA) lacks adequate support for ensuring the timing constraints of soft real-time tasks on multicore platforms, and thus is dependent on (potentially inadequate) support from the underlying operating system. This paper makes three contributions to the state of the art in real-time system software for multicore platforms. First, it offers what is to our knowledge the first experimental analysis of real-time performance of vanilla Linux primitives on multicore platforms. Second, it presents MC-ORB, the first real-time object request broker (ORB) designed to address the nuances of multiprocessor (and especially multicore) platforms with a novel core-aware middleware thread architecture and allocation service for soft real-time tasks. Third, it evaluates MC-ORB's performance on a Linux multicore testbed, the results of which demonstrate its efficiency and effectiveness.

[1]  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.

[2]  James H. Anderson,et al.  Soft Real-Time Scheduling on Performance Asymmetric Multicore Platforms , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[3]  Guoliang Xing,et al.  Middleware specialization for memory-constrained networked embedded systems , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[4]  Josh Aas Understanding the Linux 2.6.8.1 CPU Scheduler , 2005 .

[5]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[6]  John Hawkes,et al.  Linux® Scalability for Large NUMA Systems , 2003 .

[7]  David R. Butenhof Programming with POSIX threads , 1993 .

[8]  Chenyang Lu,et al.  Reconfigurable Real-Time Middleware for Distributed Cyber-Physical Systems with Aperiodic Events , 2008, 2008 The 28th International Conference on Distributed Computing Systems.

[9]  Gautam H. Thaker,et al.  Middleware Support for Aperiodic Tasks in Distributed Real-Time Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[10]  James H. Anderson,et al.  Cache-Aware Real-Time Scheduling on Multicore Platforms: Heuristics and a Case Study , 2008, 2008 Euromicro Conference on Real-Time Systems.