VMware recently published a “note” with a performance comparison of XenEnterprise 3.2.0 and ESX Server 3.0.1.

We at XenSource haven’t duplicated their testing yet, but at face value, the details of the results are likely to be reasonably correct: full-out network performance of a uniprocessor Windows guest configured with multiple NICs shows degradation before the similar ESX configuration.

We don’t know enough yet to say whether we agree with the conclusion that this is due to significantly higher CPU utilization. There are other factors affecting the observed performance.

Network devices in ESX Server are driven via the VMkernel, which can use multiple processors (and is likely to, given the four-core box with a single uniprocessor virtual machine they’ve configured). In XenEnterprise they are driven by domain 0, which is a uniprocessor domain. This is a current configuration detail of the product, not an architectural limitation. We will explore whether other configurations, such as a multi-processor domain 0 or a driver domain for each physical NIC, will offer better performance; we expect that we can improve it without any fundamental changes.

What’s more important to us, though, is that laser-focused “notes” like this show how quickly the virtualization playing field has changed, and how seriously we are being taken.

The performance discussion has shifted in a matter of three months from:

  • A 20-something-page epic that claims that…
  • ESX Server outperforms Xen…
  • in a wide range of tested configurations…
  • that characterize a broad set of workloads

…to:

  • a four-page “note” that reports that…
  • ESX Server outperforms the out-of-the-box XenEnterprise configuration…
  • in one specific area under one type of heavy load…
  • in ways that are unlikely to be driven by the vast majority of virtualized workloads

Quite a difference.

And, as always, the only relevant benchmarks are your actual workloads.