On Wed, 2008-10-08 at 18:19 +0200, Martin Schwidefsky wrote: > Greetings, > while working on the analysis of a mismatch between the cputime accounting > numbers of z/VM as the host and Linux as the guest I started to wonder > about the accounting of idle time. z/VM showed more cpu time for the guest > as the guest itself. With the current code everything that the idle process > does is accounted as idle time. If idle is sleeping that is fine, but if > idle is actually using cpu cycles this is wrong. > > The question is how wrong? To find out I've implemented really precise > accounting of true idle vs. system idle cputime for s390. A really simple > test that wakes up 100 times per second to do some minimal work before > going back to sleep showed 0.35% of system idle time. If you are dealing > with lots of virtual penguins this quickly becomes significant. > > There are four patches in this series: > Patch #1: Cleanup scaled / unscaled cputime accounting > Patch #2: Change the accounting interface to allow the architectures to do > precise idle time accounting > Patch #3: s390 patch to improve the precision of the idle_time_us value > Patch #4: s390 patch to implement improved idle time accounting > > There is one change in patch #2 that might require a change on powerpc > and/or ia64. The generic TICK_ONESHOT/NO_HZ code calculates the number > of ticks spent with a disabled HZ timer and accounts this as idle time. > For a configuration for VIRT_CPU_ACCOUNTING=y this is horribly wrong. > Either you have precise accounting or you don't. Patch #2 just removes > the calculation for VIRT_CPU_ACCOUNTING=y. The architectures which support > precise accounting have to deal with it on their own. This is where the > powerpc and ia64 maintainer come into play. Would you look at patch #2 > please ? > > To make it clearer what happens in tick_nohz_restart_sched_tick I've added > a new function account_idle_ticks(). And for good measure another one named > account_steal_ticks() for xen where "interesting" things have been done > with the account_steal_time interface. Any news about powerpc? Do these patches break anything or does it work? -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html