Here are some quick performance results from VMware servers with 10 Gigabit Ethernet cards (from Sun with an Intel 82598 controller. The servers were Sun X4150 with Dual-Quadcore processors.
Network tests
I fired up two test VMs with Suse Linux Enterprise Desktop 10 (64 bit) and used netperf to measure TCP bandwidth between them (the exact command used was netperf -H <target ip> -t TCP_STREAM -C -c -l 60 -f M).
VM to VM (both VMs placed on the same physical server): 230 MB/s
VM to VM (each VM on a different physical server using 10 GigE through a single switch): 250 MB/s
VM to a physical server with a 10 GigE card: 540 MB/s
Physical server to VM: 290 MB/s
Looks like there is a bottleneck somewhere on the receive side but the performance is sufficient even for the most demanding (business) applications. Remember: this is out-of-the-box performance, no tuning.
Disk performance to a NFS based datastore on a Netapp
Here I simple used IOzone in the Linux-VM to write and read several GBs of data to a virtual disk (formatted with XFS). The virtual disk was placed on a NFS datastore (Netapp 6070 with Ontap 7.2.4, 2×16 disk FC aggregate).
Write: 160 MB/s
Read: 160 MB/s (200 MB/s from filer cache)
I think these numbers can be improved as neither the filer nor the server were fully utilized, so I expect more VMs will bring additional performance. Perhaps the receive-side problem mentioned above also plays a role.
Summary
Generally this is exactly what we expected: to be able to provide good performance to many virtual servers which do network and/or disk-I/O only periodically without overprovisioning the whole infrastructure.
At the moment there is exactly one dual-port 10 GigE card in every VMware server and there are two physical connections to two different switches - a much cleaner setup than the 12 (!) GigE interfaces per server we had before
How do your numbers look like? Comments welcome (moderated).
