Re: 2.6 high CPU utilization with multimedia apps {Scanned}

From: Andrew Morton
Date: Sun May 23 2004 - 21:15:33 EST


rettw@xxxxxxxxxxxxxx wrote:
>
> Hi Andrew,
>
> > This could be an artifact from the instrumentation - if
> > the application is
> > doing short bursts of work the 1000Hz clock may be
> > providing more accurate
> > sampling.
> >
> > In 2.6, edit include/asm/param.h and set HZ to 100 and
> > then redo the
> > measurement.
> >
> That did it - the CPU utilization is back down to what I
> am used to seeing on 2.4. - Now, the question is - what
> was more accurate? Was 2.4 producing abnormally low
> numbers? Or 2.6 abnormally high?

It's hard to tell. I'd assume that the 1000Hz number are
more accurate due to the improved sampling frequency.

If you want a really accurate estimate of CPU usage you could use
`cyclesoak' from http://www.zip.com.au/~akpm/linux/#zc. It works by
running a low-priority busy-wait loop and then seeing how much CPU is left
over for it by the real workload. It's not 100% accurate unless you run
your test load with SCHED_FIFO or SCHED_OTHER policy, but it's close.

Making the in-kernel instrumentation more accurate would be possible, but
would incur additional overhead in the CPU scheduler and interrupt handlers
- we don't see a lot of call for it.

But yes, one needs to be cautious when comparing 2.4 CPU load measurements
against 2.6 kernels.

> One interesting thing,
> just below the define statements in the file mentioned
> above is a conditional define that sets HZ to 100 anyway,
> if not already defined - it almost seems that the 1000
> value is bogus to begin with.

Nope, we use 1000Hz on most architectures.
-
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/