Re: [kvm-devel] Paravirt KVM capabilities

2007-01-11 Thread Ingo Molnar
* Rusty Russell <[EMAIL PROTECTED]> wrote: > > so how can both "Xen and lhype get native syscall speeds (within > > measurement error)", if it cannot use SYSENTER (it has to use int > > $0x80), while a HVM kernel can? > > Sorry, my mistake. I was measuring with a statically linked binary, >

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Rusty Russell
On Thu, 2007-01-11 at 03:51 +0100, Ingo Molnar wrote: > * Rusty Russell <[EMAIL PROTECTED]> wrote: > > > > > Err no, this isn't true. See Documentation/lhype.txt or various blog > > > > entries on the subject 8) Both Xen and lhype get native syscall speeds > > > > (within measurement error). >

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Rusty Russell <[EMAIL PROTECTED]> wrote: > > > Err no, this isn't true. See Documentation/lhype.txt or various blog > > > entries on the subject 8) Both Xen and lhype get native syscall speeds > > > (within measurement error). > > > > i was talking about 64-bit. (we dont really design for 3

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Rusty Russell
On Thu, 2007-01-11 at 01:49 +0100, Ingo Molnar wrote: > * Rusty Russell <[EMAIL PROTECTED]> wrote: > > > > > - cr3 switches for CONFIG_PARAVIRT syscalls (which are necessary > > > > on x86_64) will probably become very cheap with tagged tlbs > > > > > > but irq overhead is nothing in importance

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Rusty Russell <[EMAIL PROTECTED]> wrote: > > > - cr3 switches for CONFIG_PARAVIRT syscalls (which are necessary > > > on x86_64) will probably become very cheap with tagged tlbs > > > > but irq overhead is nothing in importance compared to basic syscall > > overhead. KVM/HVM already runs gue

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Rusty Russell
On Wed, 2007-01-10 at 11:52 +0100, Ingo Molnar wrote: > * Avi Kivity <[EMAIL PROTECTED]> wrote: > > > If you have a CONFIG_PARAVIRT guest, I believe it will always be > > faster to run it without hardware assisted virtualization: > > > > - you cannot eliminate vmexits due to host interrupts > >

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Ulrich Drepper wrote: > Avi Kivity wrote: > >> [[Can't a paravirtualized kernel use a vdso to use int $0x80 instead of >> syscall?]] >> > > No. The ABI is to inline syscall instructions. That's possible since > it's not as limited/broken as sysenter. > Then maybe kvm+npt+paravirt can

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ulrich Drepper
Avi Kivity wrote: > [[Can't a paravirtualized kernel use a vdso to use int $0x80 instead of > syscall?]] No. The ABI is to inline syscall instructions. That's possible since it's not as limited/broken as sysenter. -- ➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖ sig

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Ulrich Drepper wrote: > Ingo Molnar wrote: > >> that alone is already ~100-200 cycles overhead, it essentially doubles >> the null syscall overhead. It matters at millions of syscalls per second >> workloads, 100 cycles overhead at 1 million syscalls a second means 5% >> performance differenc

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ulrich Drepper
Ingo Molnar wrote: > that alone is already ~100-200 cycles overhead, it essentially doubles > the null syscall overhead. It matters at millions of syscalls per second > workloads, 100 cycles overhead at 1 million syscalls a second means 5% > performance difference at 2GHz. Plus, x86-64 uses onl

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Anthony Liguori wrote: > Avi Kivity wrote: >> Ingo Molnar wrote: >> >>> * Avi Kivity <[EMAIL PROTECTED]> wrote: >>> >>> >>> If you have a CONFIG_PARAVIRT guest, I believe it will always be faster to run it without hardware assisted virtualization: - you cannot eliminate vm

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Anthony Liguori
Avi Kivity wrote: > Ingo Molnar wrote: > >> * Avi Kivity <[EMAIL PROTECTED]> wrote: >> >> >> >>> If you have a CONFIG_PARAVIRT guest, I believe it will always be >>> faster to run it without hardware assisted virtualization: >>> >>> - you cannot eliminate vmexits due to host interrupts >>>

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Ingo Molnar wrote: > * Avi Kivity <[EMAIL PROTECTED]> wrote: > > >> For i386 Xen does not switch cr3 IIRC. [...] >> > > correct. > > >> [...] Perhaps even not for x86_64 if it can use the segment limits >> which AMD re-added (I think it does?) >> > > i'm not sure. Older ones defini

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Avi Kivity <[EMAIL PROTECTED]> wrote: > For i386 Xen does not switch cr3 IIRC. [...] correct. > [...] Perhaps even not for x86_64 if it can use the segment limits > which AMD re-added (I think it does?) i'm not sure. Older ones definitely used cr3 switching and on Intel there's no segment

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Ingo Molnar wrote: > * Avi Kivity <[EMAIL PROTECTED]> wrote: > > >> If you have a CONFIG_PARAVIRT guest, I believe it will always be >> faster to run it without hardware assisted virtualization: >> >> - you cannot eliminate vmexits due to host interrupts >> - a hypercall will (probably) keep be

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread sean
Hello all, hard and software virtualisation has been with us since the mid 1960's, as I am sure you are all aware of. See http://en.wikipedia.org/wiki/VM/CMS JC On Wed, January 10, 2007 11:46, Rusty Russell wrote: > On Wed, 2007-01-10 at 10:47 +0100, Ingo Molnar wrote: > >> * Rusty Russell <[

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Avi Kivity <[EMAIL PROTECTED]> wrote: > If you have a CONFIG_PARAVIRT guest, I believe it will always be > faster to run it without hardware assisted virtualization: > > - you cannot eliminate vmexits due to host interrupts > - a hypercall will (probably) keep being more expensive than a sysc

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Rusty Russell
On Wed, 2007-01-10 at 10:47 +0100, Ingo Molnar wrote: > * Rusty Russell <[EMAIL PROTECTED]> wrote: > regarding ABI: agreed that it's experimental right now and should stay > so for some time, but i dont see a reason why the hypercall API that > i've posted in the past few days couldnt be evolved

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Avi Kivity
Ingo Molnar wrote: > * Ulrich Drepper <[EMAIL PROTECTED]> wrote: > > >> Ingo Molnar wrote: >> >>> i really really think KVM and lhype should merge, creating KVM/HVM >>> (Hardware Virtual Machine) and KVM/LL (Linux on Linux). >>> >> This is only sufficient if either KVM with paravirt

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Ulrich Drepper <[EMAIL PROTECTED]> wrote: > Ingo Molnar wrote: > > i really really think KVM and lhype should merge, creating KVM/HVM > > (Hardware Virtual Machine) and KVM/LL (Linux on Linux). > > This is only sufficient if either KVM with paravirt Linux kernels has > no performance penalty

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ulrich Drepper
Ingo Molnar wrote: > i really really think KVM and lhype should merge, creating KVM/HVM > (Hardware Virtual Machine) and KVM/LL (Linux on Linux). This is only sufficient if either KVM with paravirt Linux kernels has no performance penalty or lhype becomes able to execute paravirt Linux kernels.

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-10 Thread Ingo Molnar
* Rusty Russell <[EMAIL PROTECTED]> wrote: > > It's also something for the Linux community in general to decide: if > > we want separate interfaces for paravirtualization and full > > virtualization (lhype and kvm) or a merged interface. I can see > > arguments in favor of both positions. >

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-09 Thread Rusty Russell
On Tue, 2007-01-09 at 16:27 +0200, Avi Kivity wrote: > Hugo Mills wrote: > >Does running paravirtual guests on KVM still require a > > hardware-VM-capable processor, or will it eventually be possible to > > run a paravirtualised Linux on an older machine (such as, say, a > > first-generation At

Re: [kvm-devel] Paravirt KVM capabilities

2007-01-09 Thread Avi Kivity
Hugo Mills wrote: >I'm a little unclear on the capabilities (current or planned) of > the new paravirtualisation feature in KVM. > >Does running paravirtual guests on KVM still require a > hardware-VM-capable processor, or will it eventually be possible to > run a paravirtualised Linux on a