[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage w
From: |
Juergen Lock |
Subject: |
Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing) |
Date: |
Wed, 9 Sep 2009 22:15:56 +0200 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
On Mon, Sep 07, 2009 at 10:17:23PM -0400, Ryan Stone wrote:
> I'm not entirely clear on why it's done this way, but the timer is run at
> twice hz for statistics-gathering purposes*. CPU usage statistics gathering
> is driven off of the timer interrupt. Running the timer at twice hz may be
> an attempt to eliminate clock-aliasing problems; if so, it's a poor way of
> doing so. In any case, seeing interrupts come in at twice hz is expected
> behaviour. This means that the guest will be requesting a timer interrupt
> rate of twice the granularity that the host's scheduler can support; this
> may be the cause of your other timing problems(although I have a hard time
> imagining how).
>
Yes, this is the first issue I reported, and it causes e.g. a FreeBSD 7
guest on a 7 host to sleep ~4s on a `time sleep 2'. (unless when I
disable apic as I said.)
> This timer is twice hz behaviour has existed at least since FreeBSD 6.1, so
> I can't explain why you see the new behaviour between 7 and 8. You do have
> hz set to 1000 on both the guest and host when running 7?
>
Yes, and the behaviour on 8 is in addition to the guest expecting
clock irqs at 2000 Hz, i.e. on 8 the guest gets only around 500 Hz
with -clock unix instead of ~1000 Hz on a 7 host, and `time sleep 2'
then consequently sleeps ~8s.
> * Actually, from looking at the code the behaviour is dynamic. If hz >=
> 1500, the timer interrupt rate is set to hz. If 750 <= hz < 1500, the timer
> interrupt rate is set to 2 * hz. If hz < 750, the timer interrupt rate is
> set to 4 * hz.
Aha, so another way to get around the first issue would be to run at
least the host with HZ=2000... Worth a try, tho I suspect it won't help
the additional rate halving on 8, unless maybe to use even HZ=4000.
Oh well...
Juergen
- Re: [Qemu-devel] Re: Breakage with local APIC routing, Juergen Lock, 2009/09/01
- FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Juergen Lock, 2009/09/07
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Luigi Rizzo, 2009/09/09
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Juergen Lock, 2009/09/10
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Luigi Rizzo, 2009/09/10
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Juergen Lock, 2009/09/10
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), John Baldwin, 2009/09/11
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Luigi Rizzo, 2009/09/12
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), John Baldwin, 2009/09/11
- Re: FreeBSD timing issues and qemu (was: Re: [Qemu-devel] Re: Breakage with local APIC routing), Luigi Rizzo, 2009/09/12