Re: Paravirtualisation or not?

2009-05-05 Thread Javier Guerra
Pantelis Koukousoulas wrote:
> On Tue, May 5, 2009 at 11:37 AM, Stefan Hajnoczi  wrote:
> Sure, closed-source virtio-net drivers exist (in fact there is a newer
> version than the one
> you linked. I think it is 12/2008 distributed as an iso). The point
> (and the advantage
> of Xen in this area) is that Xen provides the source too under GPL.

XenSource drivers are not only closed source, but tied to their distribution of 
Xen.  OpenSource Xen doesn't have any windows drivers.

you must be talking about the GPLPV drivers, which is the work of an 
independent third party: James Harper.  I haven't tried them,  their 
performance is quite good but far from trouble-free.

> It is harder for a third party to do this job because you would have to make 
> the
> decision to either use the Windows DDK and samples (which means you can't
> release under GPL and thus you can't reuse or even look at the current virtio
> implementations) or use GPL and the current linux virtio code as a base but
> in this case you can forget DDK and the samples (at least that is my
> understanding).

that's what had to happen (very recently) for Xen, since neither XenSource nor 
Novell (which also has a set of closed source, distro-tied drivers) wanted to 
open theirs.

-- 
Javier
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-05 Thread Pantelis Koukousoulas
On Tue, May 5, 2009 at 11:37 AM, Stefan Hajnoczi  wrote:
>> If a set of drivers essentially implementing the virtio framework
>> (virtio_pci, virtio_ring, virtio queues) were available for
>> windows, that would be *really* neat.
> I haven't tried them myself but I think this will give you virtio-net
> for Windows:
> http://sourceforge.net/project/showfiles.php?group_id=180599&package_id=267943
>
> More information:
> http://www.linux-kvm.com/content/tip-how-setup-windows-guest-paravirtual-network-drivers

Hi Stefan :)

Sure, closed-source virtio-net drivers exist (in fact there is a newer
version than the one
you linked. I think it is 12/2008 distributed as an iso). The point
(and the advantage
of Xen in this area) is that Xen provides the source too under GPL.

Even if there was source available for the virtio framework only (and
not net at all)
it would still be useful to others wanting to write virtio drivers for windows.

It is harder for a third party to do this job because you would have to make the
decision to either use the Windows DDK and samples (which means you can't
release under GPL and thus you can't reuse or even look at the current virtio
implementations) or use GPL and the current linux virtio code as a base but
in this case you can forget DDK and the samples (at least that is my
understanding).

Cheers,
Pantelis
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-05 Thread Stefan Hajnoczi
> If a set of drivers essentially implementing the virtio framework
> (virtio_pci, virtio_ring, virtio queues) were available for
> windows, that would be *really* neat.
I haven't tried them myself but I think this will give you virtio-net
for Windows:
http://sourceforge.net/project/showfiles.php?group_id=180599&package_id=267943

More information:
http://www.linux-kvm.com/content/tip-how-setup-windows-guest-paravirtual-network-drivers

Stefan
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-04 Thread Pantelis Koukousoulas
> - paravirtualized drivers widely available both for Linux and Windows
> (Xen's drivers on windows can be hard and/or expensive to get)

Well, Xen has GPL PV drivers for windows (at least for networking)
which KVM doesn't have. There is a promise
but no date attached to it.

If a set of drivers essentially implementing the virtio framework
(virtio_pci, virtio_ring, virtio queues) were available for
windows, that would be *really* neat.

But that is somewhat off topic :)
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-04 Thread Javier Guerra
On Mon, May 4, 2009 at 9:49 AM, howard chen  wrote:
> On Mon, May 4, 2009 at 10:44 PM, Pasi Kärkkäinen  wrote:
>> On Mon, May 04, 2009 at 10:40:00PM +0800, howard chen wrote:
>> Yes, paravirtualization is good. If running KVM, use paravirtualized network
>> and disk/block drivers for better performance.
>
> So does it mean generally Xen is more optimized than KVM for speed?


no

Xen started as paravirtualization-only, and later got full
virtualization capabilities, mainly to run windows guests.

KVM is full-virtualization-only.  if things stopped there, then yes,
Xen would be much faster than kvm.

but on almost all cases, biggest bottleneck (by far) isn't the CPU,
it's I/O. adding paravirtualization drivers to a fully virtualized
guest brings it roughly to the same speed level as a PV guest.  that
makes kvm comparable to Xen in most workloads.

there some real advantages of kvm:

- less context switches needed to make a block or packet go from guest
to hardware and viceversa

- paravirtualized drivers widely available both for Linux and Windows
(Xen's drivers on windows can be hard and/or expensive to get)

- tight work with the qemu/kernel guys make big advances in througput.
 i recall that virtio-net can go near 2Gbit with little tuning, almost
twice as the best Xen numbers.

of course, there are also several hard, real advantages of Xen:

- the hypervisor's scheduler is more appropriate for dataserver
managers that sell VMs

- wider recognition from supporting companies (changing quickly)

several more for each side that i don't remember right now, i'm sure

-- 
Javier
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-04 Thread Pasi Kärkkäinen
On Mon, May 04, 2009 at 10:40:00PM +0800, howard chen wrote:
> Hey,
> 
> I am comparing Xen and KVM to see which one is suitable for me usage.
> 
> 
> From the FAQ: 
> http://www.linux-kvm.org/page/FAQ#What_is_the_difference_between_kvm_and_Xen.3F
> 
> It said:
> 
> >> kvm does not support paravirtualization for cpu but may support 
> >> paravirtualization for device drivers to improve I/O performances.
> 
> 
> Do does it mean using paravirtualization is good? So Xen is faster if
> we can are running modified OS which support paravirtualization?
>

Yes, paravirtualization is good. If running KVM, use paravirtualized network
and disk/block drivers for better performance.
 
Xen paravirtual guests (domUs) use paravirtualized drivers out of the box.

> 
> In fact, we have tried Xen, running CentOS 5.0 on latest Intel Quad
> core CPU. Performance is not bad, but already have interest in try
> other solutions.
>

You should be running CentOS 5.3, it has a lot of updates after 5.0.

-- Pasi
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-04 Thread Glauber Costa
On Mon, May 4, 2009 at 11:49 AM, howard chen  wrote:
> On Mon, May 4, 2009 at 10:44 PM, Pasi Kärkkäinen  wrote:
>> On Mon, May 04, 2009 at 10:40:00PM +0800, howard chen wrote:
>> Yes, paravirtualization is good. If running KVM, use paravirtualized network
>> and disk/block drivers for better performance.
>
> So does it mean generally Xen is more optimized than KVM for speed?

No, no way.

Xen pv paravirtualizes everything. Most of those things are pv for the
need, not for any kind
of perfomance tweak. It runs on machines that does not provide
hardware virtualization, so
paravirtualization is your only option.

For solutions that uses hardware virtualization (such as KVM and Xen
HV), virtualization is done
by the hardware, with the help of the VMM. For things in which there
are a performance/correctness
impact of using PV, like the clock, we do it.

If you are using a paravirtual clock, and specialized block/net
drivers, you are already taking advantage
of most of the speed benefits a PV solution can provide you with.


-- 
Glauber  Costa.
"Free as in Freedom"
http://glommer.net

"The less confident you are, the more serious you have to act."
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Paravirtualisation or not?

2009-05-04 Thread howard chen
On Mon, May 4, 2009 at 10:44 PM, Pasi Kärkkäinen  wrote:
> On Mon, May 04, 2009 at 10:40:00PM +0800, howard chen wrote:
> Yes, paravirtualization is good. If running KVM, use paravirtualized network
> and disk/block drivers for better performance.

So does it mean generally Xen is more optimized than KVM for speed?

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html