KeyWords:
(see the KeyWords page for guidelines on what to put here.)
Comparison between Xen and VMWare
Disk performance
Xen
The test is done over /root, where the disk is a
logical volume specially for the virtual machine. Raid1 over two disks is behind.
Dec 06 13:34 [root@pub:~]# dd if=/dev/zero of=/root/thing bs=1024 count=1024k
1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB) copied, 12.9547 seconds, 82.9 MB/s
Dec 06 11:55 [root@pub:~]# bonnie++ -u root -s 7000 -r 0 -b -d /root/
Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
pub.lcg.cscs. 7000M 451 98 53494 11 29537 1 807 66 94265 2 257.5 0
Latency 23957us 2261ms 2977ms 648ms 1330ms 1754ms
Version 1.96 ------Sequential Create------ --------Random Create--------
pub.lcg.cscs.ch -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 55 0 +++++ +++ 61 0 65 0 +++++ +++ 64 0
Latency 6000ms 499us 3115ms 2426ms 15us 3305ms
Dec 06 14:08 [root@pub:~]# dd if=/root/thing of=/dev/null
2097152+0 records in
2097152+0 records out
1073741824 bytes (1.1 GB) copied, 9.39562 seconds, 114 MB/s
VMWare
The test is done over /root, where the disk is a
file on the host's filesystem. Raid1 over two disks is behind.
[root@ppwn01 ~]# dd if=/dev/zero of=/root/thing bs=1024 count=1024k
1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB) copied, 9.29409 seconds, 116 MB/s
[root@ppwn01 ~]# bonnie++ -u root -s 5000 -r 0 -b -d /root/
Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
ppwn01.lcg.cs 5000M 1208 91 17624 3 49144 3 3918 95 113098 5 368.3 2
Latency 6520us 6915ms 287ms 8979us 41605us 120ms
Version 1.96 ------Sequential Create------ --------Random Create--------
ppwn01.lcg.cscs.ch -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 80 0 +++++ +++ 80 0 80 0 +++++ +++ 80 0
Latency 137ms 498us 84625us 149ms 16us 89699us
[root@ppwn01 ~]# dd if=/root/thing of=/dev/null
2097152+0 records in
2097152+0 records out
1073741824 bytes (1.1 GB) copied, 9.67018 seconds, 111 MB/s
Compile kernel
Xen
Dec 06 13:28 [root@pub:~]# time tar -xf linux-2.6.36.1.tar
real 0m33.963s
user 0m0.124s
sys 0m1.600s
Dec 06 13:39 [root@pub:linux-2.6.36.1]# make defconfig
Dec 06 13:39 [root@pub:linux-2.6.36.1]# time make
[...]
real 10m11.454s
user 6m28.432s
sys 2m12.040s
VMWare
[root@ppwn01 ~]# time tar -xf linux-2.6.36.1.tar
real 0m14.374s
user 0m0.113s
sys 0m1.707s
[root@ppwn01 linux-2.6.36.1]# make defconfig
[root@ppwn01 linux-2.6.36.1]# time make
[...]
real 9m41.033s
user 6m59.439s
sys 2m39.054s
HEPSPEC06
Xen
SPEC2006 results for pub.lcg.cscs.ch: 11.65
VMWare
SPEC2006 results for pub.lcg.cscs.ch: 11.60
Network
Xen
Dec 07 09:10 [root@pub:~]# iperf -c 148.187.66.232
------------------------------------------------------------
Client connecting to 148.187.66.232, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 148.187.66.50 port 58274 connected with 148.187.66.232 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 1.11 GBytes 951 Mbits/sec
VMWare
[root@ppwn01 ~]# ./iperf -c 148.187.70.232
------------------------------------------------------------
Client connecting to 148.187.70.232, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 148.187.68.201 port 51597 connected with 148.187.70.232 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 2.20 GBytes 1.89 Gbits/sec
Conclusions
- CPU power is the same. The differences are within IO
- Network performance is much better in VMWare, reaching up to 4 Gbit/s, because it uses infiniband
- Bulk disk performance is also better in VMWare, but exceeds in small disk operations by at least a factor of 2 in some cases.
- Monitoring in VMWare is also better, there are very nice graphs in the GUI,
- VMWare's GUI needs Windows installed and is the only way to manage/create the virtual machines. Clumsy.
Readers' comments