Re: [GIT PULL] AlacrityVM guest drivers for 2.6.33

From: Anthony Liguori
Date: Tue Dec 22 2009 - 16:14:30 EST


On 12/22/2009 11:33 AM, Andi Kleen wrote:
We're not talking about vaporware. vhost-net exists.
Is it as fast as the alacrityvm setup then e.g. for network traffic?

Last I heard the first could do wirespeed 10Gbit/s on standard hardware.

I'm very wary of any such claims. As far as I know, no one has done an exhaustive study of vbus and published the results. This is why it's so important to understand why the results are what they are when we see numbers posted.

For instance, check out http://www.redhat.com/f/pdf/summit/cwright_11_open_source_virt.pdf slide 32.

These benchmarks show KVM without vhost-net pretty closely pacing native. With large message sizes, it's awfully close to line rate.

Comparatively speaking, consider http://developer.novell.com/wiki/index.php/AlacrityVM/Results

vbus here is pretty far off of native and virtio-net is ridiculus.

Why are the results so different? Because benchmarking is fickle and networking performance is complicated. No one benchmarking scenario is going to give you a very good picture overall. It's also relatively easy to stack the cards in favor of one approach verses another. The virtio-net setup probably made extensive use of pinning and other tricks to make things faster than a normal user would see them. It ends up creating a perfect combination of batching which is pretty much just cooking the mitigation schemes to do extremely well for one benchmark.

This is why it's so important to look at vbus from the perspective of critically asking, what precisely makes it better than virtio. A couple benchmarks on a single piece of hardware does not constitute an existence proof that it's better overall.

There are a ton of differences between virtio and vbus because vbus was written in a vacuum wrt virtio. I'm not saying we are totally committed to virtio no matter what, but it should take a whole lot more than a couple netperf runs on a single piece of hardware for a single kind of driver to justify replacing it.

Can vhost-net do the same thing?

I think the fundamentally question is, what makes vbus better than vhost-net? vhost-net exists and is further along upstream than vbus is at the moment. If that question cannot be answered with technical facts and numbers to back them up, then we're just arguing for the sake of arguing.

Regards,

Anthony Liguori

-Andi

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/