[CFT] Paravirtualized KVM clock

Adrian Chadd adrian at freebsd.org
Sun Jan 4 19:00:52 UTC 2015

... so, out of pure curiousity - what's making the benchmark go
faster? Is it userland side of things calling clock methods, or
something in the kernel, or both?


On 4 January 2015 at 09:56, Bryan Venteicher
<bryanv at daemoninthecloset.org> wrote:
> For the last few weeks, I've been working on adding support for KVM clock
> in the projects/paravirt branch. Currently, a KVM VM guest will end up
> selecting either the HPET or ACPI as the timecounter source. Unfortunately,
> this is very costly since every timecounter fetch causes a VM exit. KVM
> clock allows the guest to use the TSC instead; it is very similar to the
> existing Xen timer.
> The performance difference between HPET/ACPI and KVMCLOCK can be dramatic:
> a simple disk benchmark goes from 10K IOPs to 100K IOPs.
> The patch is attached is attached or available at [1]. I'd appreciate any
> testing.
> Also as a part of this, I've tried to generalized a bit of our existing
> hypervisor guest code, with the eventual goal of being able to support more
> invasive PV operations. The patch series is viewable in Phabricator.
> https://reviews.freebsd.org/D1429 - paravirt: Generalize parts of the XEN
> timer code into pvclock
> https://reviews.freebsd.org/D1430 - paravirt: Add interface to calculate
> the TSC frequency from pvclock
> https://reviews.freebsd.org/D1431 - paravirt: Add simple hypervisor
> registration and detection interface
> https://reviews.freebsd.org/D1432 - paravirt: Add detection of bhyve using
> new hypervisor interface
> https://reviews.freebsd.org/D1433 - paravirt: Add detection of VMware using
> new hypervisor interface
> https://reviews.freebsd.org/D1434 - paravirt: Add detection of KVM using
> new hypervisor interface
> https://reviews.freebsd.org/D1435 - paravirt: Add KVM clock timecounter
> support
> My current plan is to MFC this series to 10-STABLE, and commit a
> self-contained KVM clock to the other stable branches.
> [1] - https://people.freebsd.org/~bryanv/patches/kvm_clock-1.patch
> _______________________________________________
> freebsd-arch at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arch
> To unsubscribe, send any mail to "freebsd-arch-unsubscribe at freebsd.org"

More information about the freebsd-arch mailing list