Muli Ben-Yehuda's journal

January 25, 2004

Paul McKenney to visit IBM HRL

Filed under: Uncategorized — Muli Ben-Yehuda @ 11:18 AM

Paul McKenney, IBM Distinguished Enginneer and Linux Kernel hacker, will be visiting IBM’s Haifa Research Lab next week. He’ll give a talk on “An Analysis of Read-Copy-Update Techniques in Operating System Kernels”, which is open to the public (details will show up here). I’m definitely excited to meet him again!


Although large-scale shared-memory multiprocessing hardware and software reached the mainstream in the past decade, their synchronization mechanisms make use of costly operations that inherently limit both single-CPU performance and shared-memory-multiprocessor scalability. The key problem with these mechanismsis that they do nothing to decrease the intensity of communication required by conventional algorithms, and this high intensity of communication, or tight coupling, in turn requires heavy use of the expensive hardware synchronization mechanisms that impose performance and scalability limitations.

Although there have been some high-performance and highly scalable algorithms developed for some important special cases, such as memory allocation and statistical counters, one would wish for a more general approach. Recently, a wide-ranging set of specific solutions to particular synchronization algorithms have come to light which use a common implementation of some support functions and some design patterns. This set of solutions has been loosely termed “read-copy update” or RCU.

This talk demonstrates the performance problems of previous approaches, and analyzes the use of RCU techniques in earlier operating-system kernels in order to derive the needed design patterns. I used these patterns to architect the implementation and use of RCU in the Linux 2.6 kernel, which was instrumental in improving the performance and scalability over that of the Linux 2.4 kernel. Empirical and analytic techniques are used to analyze the performance and simplicity benefits of RCU.

About the speaker:

Paul McKenney is a Distinguished Engineer in the Storage Software Architecture group and the Linux Technology Center, and is a member of the IBM Academy of Technology. He joined IBM in 2000, working with AIX, Linux, and storage. Prior to that, he worked at Sequent doing SMP and NUMA algorithms. The work described in this talk stems from his work at Sequent and with the Linux 2.6 kernel.

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at

%d bloggers like this: