Messages in this thread | | | Date | Wed, 2 Sep 2009 14:30:43 -0700 | From | Josh Triplett <> | Subject | Re: [RFC PATCH] Turn off the tick even when not idle |
| |
On Wed, Sep 02, 2009 at 10:01:26PM +0200, Pavel Machek wrote: > Hi! > > > When a process does some number crunching for a while, without involving > > the kernel, the kernel still interrupts it HZ times per second to figure > > out if it has any work to do. With a system dedicated to doing such > > number crunching, the answer will almost always come up "no"; however, > > the kernel takes a while figuring out all the "no"s from various > > subsystems, every timer tick. On my system, the timer tick takes about > > 80us, every 1/HZ seconds; that represents a significant overhead. 80us > > out of every 1ms, for instance, means 8% overhead. Furthermore, the > > time taken varies, and the timer interrupts lead to jitter in the > > performance of the number crunching. > > 8% overhead on hz=1000 is quite high --- what hw is that?
32-bit x86, ThinkPad T60p (work laptop). I've observed similar latencies on x86-64, and others have observed them on 64-bit powerpc.
On top of that, almost all of that 80us consists of variations on "Do I have any work to do? No? OK then.".
> You should be able to get similar results with HZ=1, right?
Possibly, yes. But I want good responsiveness when the system *does* have work to do.
- Josh Triplett
| |