Woo-hoo!
User-Level Implementations of Read-Copy Update has appeared in the February 2012 issue of IEEE Transactions on Parallel and Distributed Systems. Many thanks to everyone involved, especially co-authors Jon Walpole, Michel R. Dagenais, Alan Stern (who did the symbolic-logic heavy lifting), and Mathieu Desnoyers (who is the lead author). Mathieu also managed to convince me to go once more into the breach, which was not an easy task given that I received my license to collect RCU rejection notices all the way back in 1995. 😉
So it does feel very good to see this finally hit print!
IEEE subscribers only
Is there a copy of the paper available to the public? This sounds like an interesting paper but the IEEE web page seems to only allow subscribers.
Re: IEEE subscribers only
The supplementary materials, which contain all the algorithms, definitions, and proofs, are freely available from the IEEE website. As to the rest, I have two suggestions:
1. Join IEEE and subscribe to the IEEE Digital Library.
2. Type the paper’s title into a search engine.
Either of these two approaches should work. 😉
Re: IEEE subscribers only
Thanks, the second method worked.
> User-Level Implementations of Read-Copy Update
— Could that speed-up pthread (being brought in of course) for e. g.?
Re: > User-Level Implementations of Read-Copy Update
If you are asking if pthreads programs can make use of user-level RCU, the answer is “yes”. RCU is in fact included in some Linux distributions, for example, as package “liburcu-dev” in Debian-based distros. Alternatively, you can find source for user-space RCU at http://lttng.org/urcu.
Did that answer your question, or did I miss your point?
> if pthreads programs can make use of user-level RCU, the answer is “yes”.
What I was asking is rather can something be changed in underlying layer providing sync. primitives so that threaded apps would get a boost (if there’s any) automa{t,g}ically?
Re: > if pthreads programs can make use of user-level RCU, the answer is “yes”.
Possibly. It would depend on the details of the pthreads implementation. My guess is that better scalability and performance would result from modifying the application to use RCU, but the use of RCU to implement the pthreads API might be well worth looking into.