>linuxsymposium

July 19th ~ 22nd, 2006, Ottawa, Canada

Registration

Call For Papers
Register/Login

Content

Schedule
Speaker Guide
Presentations
Tutorials
BOFS

Related

Sponsors
Venue
Travel
FAQ

Archives

Proceedings
Photos
2005
2004
2003
2002
2001
2000
1999

Contacts

Information
Home

Extending RCU for Realtime and Embedded Workloads

This past year has seen significant increases in RCU's realtime capabilities, particularly the ability to preempt RCU read-side critical sections. There have even been some cases where use of RCU -improved- realtime latency (and performance and scalability as well), in contrast to earlier implementations, which seemed only to get in the way of realtime response. That said, there is still considerable room for improvement, including (1) lower-overhead rcu_read_lock() and rcu_read_unlock() primitives, (2) more scalable grace-period detection, (3) better balance of throughput and latency for RCU callback invocation, and (4) priority boosting of RCU read-side critical sections. This latter is needed to prevent low-priority tasks from blocking grace periods, resulting in out-of-memory events, due to being preempted for too long while in an RCU read-side critical section.

This paper describes ongoing work to address these four issues, including some interesting failures in addition to a number of unexpected successes. The ultimate goal of providing a single RCU implementation that covers all workloads is tantalizingly close, but is not yet within our grasp. It is safe to say that the very wide variety of workloads supported by Linux provides substantial challenges to the design and implementation of synchronization primitives like RCU!



Major Sponsors




Minor Sponsors



Wireless

Supporters



register | login | call for papers | schedule | talks | tutorials | bofs | venue | travel | faq | link us | sponsors | contact | home

Copyright © 2007 Linux Symposium Inc. All rights reserved.
Linux is a registered trademark of Linus Torvalds.