Re: [PATCH documentation 1/2] nohz1: Add documentation.

From: Paul E. McKenney
Date: Fri Apr 12 2013 - 13:54:40 EST


On Fri, Apr 12, 2013 at 10:05:04AM +0200, Peter Zijlstra wrote:
> On Thu, 2013-04-11 at 12:13 -0700, Paul E. McKenney wrote:
> > > > +2. Many architectures will place dyntick-idle CPUs into deep sleep
> > > > + states, which further degrades from-idle transition latencies.
> > >
> > > Above you say "to and from the idle loop", now it is from-idle. Simply say:
> > >
> > > "... which further degrades idle transision latencies" which means both :).
> >
> > If people speak for this item, I will update it. Arjan suggested removing
> > it entirely.
>
> So I haven't yet read the entire document, but:
>
> +2. Many architectures will place dyntick-idle CPUs into deep sleep
> + states, which further degrades from-idle transition latencies.
> +
> +Therefore, systems with aggressive real-time response constraints
> +often run CONFIG_NO_HZ=n kernels in order to avoid degrading from-idle
> +transition latencies.
>
> I'm not sure that's the reason.. We can (and do) limit C states to curb
> the idle-exit times. The reason we often turn off NOHZ all together is
> to further reduce the cost of the idle paths.
>
> All the mucking about with clock states and such is a rather expensive
> thing
> to do all the time.

Ah, thank you! This might help me address Arjan's concerns as well.
How about the following for the disadvantages of CONFIG_NO_HZ=y?

Thanx, Paul

------------------------------------------------------------------------

1. It increases the number of instructions executed on the path
to and from the idle loop.

2. On many architectures, dyntick-idle mode also increases the
number of times that clocks must be reprogrammed, and this
reprogramming can be quite expensive.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/