Userspace RCU library : what linear multiprocessor scalability means for your application

Scheduled: Thursday, September 24, 2009 from 2:20 – 3:05pm in Salon AB


What can the Userspace RCU LGPL library do to help your application scale well on large multiprocessor systems ?


RCU is well-known at the kernel-level for providing a way to synchronize shared data structures in read-often, update-rarely scenarios.

The development of a RCU library at the userspace application level has been mainly driven by the need for efficient synchronization of userspace tracing control data structures.

IBM kindly agreed to allow distribution of RCU-related code in a LGPL library, which makes it available for everyone to use. This can have large impact on the design of highly scalable applications performing caching of frequent requests, like domain name servers, proxy and web servers.

This presentation will discuss about the class of applications which could benefit from using the userspace RCU library.

The userspace RCU library is available under the LGPL license at .


RCU, synchronization, SMP, multi-core, scalability, high performance computing, application-level


  • Mathieu Desnoyers

    Ecole Polytechnique de Montréal


    Mathieu Desnoyers is the maintainer of the Linux Trace Toolkit (LTT) project since November 2005, taking over the development with the new LTTng. He is the author of Linux Trace Toolkit Next Generation (LTTng) and the main developer of Linux Trace Toolkit Viewer (LTTV) since the project started in 2003. He worked in close collaboration with Google, IBM research and Autodesk Entertainment. For the past year, he has focused on preparing the ground for mainlining a tracer in the Linux kernel. Parts of the LTTng project has been integrated into the mainline kernel : the Linux Kernel Markers in kernel 2.6.24 and the Tracepoints in kernel 2.6.28-rc1. He is currently completing a Ph.D. in Computer Engineering at Ecole Polytechnique de Montréal.

    Along his journey in the kernel tracing world, he developed great interest for synchronization primitives and high-scalability.

Leave a private comment to organizers about this proposal