From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dor Laor Subject: Re: recommended clock source Date: Mon, 03 Aug 2009 12:33:06 +0300 Message-ID: <4A76AED2.8070806@redhat.com> References: <4A768B3B.6050402@redhat.com> <4A769BC0.8010909@nagafix.co.uk> <4A769FCC.9070102@redhat.com> <4A76A94C.9040304@nagafix.co.uk> Reply-To: dlaor@redhat.com Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: Kent Tong , kvm@vger.kernel.org To: Antoine Martin Return-path: Received: from mx2.redhat.com ([66.187.237.31]:50018 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753548AbZHCJfz (ORCPT ); Mon, 3 Aug 2009 05:35:55 -0400 In-Reply-To: <4A76A94C.9040304@nagafix.co.uk> Sender: kvm-owner@vger.kernel.org List-ID: On 08/03/2009 12:09 PM, Antoine Martin wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA512 > >>>>>> It seems to be an unsettled issue, but, would any kind soul suggest >>>>>> the current >>>>>> best practice for setting the clock in Ubuntu Linux and Windows guests? >>>>> For Linux the best source clock is the kvm pv clock (exist from 2.6.27 >>>>> and above). >> # qemu-system-x86_64 -clock ? >> Available alarm timers, in order of precedence: >> dynticks >> hpet >> rtc >> unix >> >> I see no "pv clock"... >> Which one should I use then? >> Did I miss a ./configure or .config option? >> >>> No, we were talking about different clocks. >>> I was explaining the guest source clock while you wanted some info for >>> the host-qemu clock. > Hah, gotcha. You're talking about the guest kernel as in: > clocksource=[hpet|pit|tsc|acpi_pm|cyclone|scx200_hrt|kvm-clock] > > # cat /sys/devices/system/clocksource/clocksource0/current_clocksource > kvm-clock > > So all good, thanks. > >>> You can use the default - dynticks. hpet and rtc might be good if you >>> need a fine grain granularity on older< 2.6.24 host kernels. > (I'm on dynticks) > I guess dynticks reduces context switches on the host, but I still get > hundreds per second on guests that are otherwise idle. > How would I go about finding what makes them tick? You can use the kvm_stat script to check the guest activity. As for host timers, you can use sudo strace -e trace=signal -c -p `pgrep qemu` to get the number of SIGALRM calls. You can reduce this number since there is a threshold in qemu for the dyntick. My winXp guest does the following: sudo strace -c -p `pgrep qemu` Process 14241 attached - interrupt to quit ^CProcess 14241 detached % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 82.46 0.089660 19 4801 select 14.51 0.015775 33 480 futex 1.70 0.001847 0 9511 4804 read 0.72 0.000787 1 824 ioctl 0.23 0.000246 0 2361 write 0.19 0.000211 0 2463 timer_gettime 0.13 0.000144 0 2361 rt_sigaction 0.06 0.000066 0 2377 timer_settime 0.00 0.000000 0 3 poll 0.00 0.000000 0 3 writev ------ ----------- ----------- --------- --------- ---------------- 100.00 0.108736 25184 4804 total > > Thanks > Antoine > >> >> Cheers >> Antoine >> >>>>> For windows, standard acpi HAL uses the rtc clock by default. As long as >>>>> you use the -rtc-td-hack it won't drift. >>>>> >>>>> When the tsc is not stable on the host or the host cpu might get into >>>>> deep sleep state (c2), you better use another source clock in the guest >>>>> - for windows it should be the pmtimer (using the boot.ini). >>>>> >>>>>> Thanks! >>>>>> >>>>>> -- >>>>>> To unsubscribe from this list: send the line "unsubscribe kvm" in >>>>>> the body of a message to majordomo@vger.kernel.org >>>>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >>>>> -- >>>>> To unsubscribe from this list: send the line "unsubscribe kvm" in >>>>> the body of a message to majordomo@vger.kernel.org >>>>> More majordomo info at http://vger.kernel.org/majordomo-info.html > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEAREKAAYFAkp2qT0ACgkQGK2zHPGK1rsSRQCfdGzkV8Gu+pTkZcnpXivXKQlt > IrsAmwZAbfLzdyiWckoi80iwqc/k+0uA > =Qt5o > -----END PGP SIGNATURE----- > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html