qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RESEND][PATCH 0/3] Fix guest time drift under heavy lo


From: Gleb Natapov
Subject: Re: [Qemu-devel] [RESEND][PATCH 0/3] Fix guest time drift under heavy load.
Date: Mon, 10 Nov 2008 16:37:50 +0200

On Sun, Nov 09, 2008 at 10:36:59AM -0600, Anthony Liguori wrote:
> Gleb Natapov wrote:
>> On Thu, Nov 06, 2008 at 09:37:56AM -0600, Anthony Liguori wrote:
>>   
>>
>> Yes indeed. With raw image copy benchmark no longer runs enough time to
>> produce time drift big enough to be visible. So I ran this disk test
>> utility http://69.90.47.6/mybootdisks.com/mybootdisks_com/nu2/bst514.zip
>> for ~12 hours and the time drift was 12 secs (if I weren't so lazy and
>> wrote bat file to copy c:\windows in a loop I am sure result would be the
>> same). This is on completely idle host.
>>   
>
> What frequency is the guest running at?  If it's running at 100hz, then  
Windows program RTC to 64hz frequency.

> it missed a tick once every 36 seconds.  This means that the guest  
> couldn't run long enough to handle a timer interrupt (which should be a  
> relatively small number of cycles) in a 10ms period.
>
10ms is for qemu + guest, not just guest.

> Does this drift go away with the TDF patches?  This almost makes me  
> think that we aren't delivering interrupts at the right frequency and  
> we're simply accumulating error.  In theory, the TDF patches shouldn't  
> help that.
I haven't checked TDF patch yet, but I inserted prints into RTC
emulation to check it interrupt are really missed and they are. And
after 64 lost interrupts (took slightly more then one hour) the time
drift was 1 second, so TDF patches should fix that.

>
> Otherwise, I'm curious if you have any insight into where we're pausing  
> for 10ms that's causing the missed interrupt?
>
Don't know yet.

> We could also be missing ticks somehow.  I think this warrants further  
> investigation.
>
This is not the case from what I observe.

--
                        Gleb.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]