Messages in this thread |  | | | Date | Wed, 27 Jan 2010 10:43:36 +0100 | | From | Andi Kleen <> | | Subject | Re: [PATCH RFC tip/core/rcu] accelerate grace period if last non-dynticked CPU |
| |
On Tue, Jan 26, 2010 at 09:20:50PM -0800, Paul E. McKenney wrote: > On Tue, Jan 26, 2010 at 10:30:57PM +0100, Andi Kleen wrote: > > "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> writes: > > > > Kind of offtopic to the original patch, but I couldn't > > resist... > > > > > +config RCU_FAST_NO_HZ > > > + bool "Accelerate last non-dyntick-idle CPU's grace periods" > > > + depends on TREE_RCU && NO_HZ && SMP > > > > Having such a thing as a config option doesn't really make > > any sense to me. Who would want to recompile their kernel > > to enable/disable this? If anything it should be runtime, or better > > just unconditionally on. > > It adds significant overhead on entry to dyntick-idle mode for systems > with large numbers of CPUs. :-(
Can't you simply check that at runtime then?
if (num_possible_cpus() > 20) ... BTW the new small is large. This years high end desktop PC will come with upto 12 CPU threads. It would likely be challenging to find a good number for 20 that holds up with the future.
Or better perhaps have some threshold that you don't do it that often, or only do it when you expect to be idle for a long enough time that the CPU can enter deeper idle states
(I higher idle states some more wakeups typically don't matter that much)
The cpufreq/cstate governour have a reasonable good idea now how "idle" the system is and will be. Maybe you can reuse that information somehow.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
|  |