[ltt-dev] [URCU RFC patch 0/3] call_rcu() performance improvements
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Mon Jun 6 13:45:58 EDT 2011
Hi,
I did some benchmarking on the rbtree2 branch (on my rcu red black tree
implementation) and figured out some very important slowdown that were
due to the current call_rcu implementation. This patch series digs
through the problems I noticed and explains the solution. The three main
problems were:
- Lack of per-cpu affinity for per-cpu call_rcu threads.
- Use of pthread_cond, which requires a mutex, at each call_rcu
execution to signal the call_rcu thread (heavy mutex contention).
- More delay than necessary between executions of the call_rcu thread in
the wakeup-based scenario increased the cache footprint.
I'm proposing these patches as RFC. If you think they are acceptable,
I'll pull them into the liburcu mainline.
Comments are welcome,
Thanks,
Mathieu
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list