| Date | Thu, 2 Feb 2012 09:16:43 -0800 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH RFC tip/core/rcu 17/41] rcu: Remove single-rcu_node optimization in rcu_start_gp() |
| |
On Wed, Feb 01, 2012 at 06:13:14PM -0800, Josh Triplett wrote: > On Wed, Feb 01, 2012 at 11:41:35AM -0800, Paul E. McKenney wrote: > > The grace-period initialization sequence in rcu_start_gp() has a special > > case for systems where the rcu_node tree is a single rcu_node structure. > > This made sense some years ago when systems were smaller and up to 64 > > CPUs could share a single rcu_node structure, but now that large systems > > are common and a given leaf rcu_node structure can support only 16 CPUs > > (due to lock contention on the rcu_node's ->lock field), this optimization > > is almost never taken. And even the small mobile platforms that might > > make use of it might rather have the kernel text reduction. > > > > Therefore, this commit removes the check for single-rcu_node trees. > > This optimization would continue to work on laptops for a while longer. > :)
How many more months? ;-)
> That said, I do agree that reducing code size and complexity seems > preferable. If someone wants an optimization like this, they'd probably > do better to compile RCU with a low compile-time limit on the number of > CPUs, which would at least theoretically allow the compiler to get > similar results through optimization. (I don't know if that works in > practice with the current code structure and the current intelligence of > GCC.) > > Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Thank you for all your reviews -- as always, very helpful!!!
Thanx, Paul
|