近日,国外有人利用Ubuntu 11.10,对VirtualBox、Xen、和KVM不同Linux虚拟化进行对比测试。该测试采用了安装有英特尔酷睿i7 2630QM(Sandy Bridge)四核处理器并支持超线程的ZaReason笔记本电脑,它配备有8GB内存和128GB SSD以及 NVIDIA GeForce GT 555M显卡,Ubuntu 11.10 x86-64被安装在Oneiric Linux 3.0 kernel、Unity 4.22.0、X.Org Server 1.10.4、GCC 4.6.1和EXT4文件系统的主机上。每个虚拟机实例都被设定为8个逻辑内核和6GB内存。
测试平台(点击图片看大图)
VirtualBox 4.1.2、KVM、和Xen 4.1.1都是在Ubuntu Oneiric上进行安装。Ubuntu 11.10也证明了Xen虚拟化对DomU客户机的支持。不过虽然Xen现在能在Ubuntu上大展身手,但Canonical仍将KVM视作主要的Linux虚拟化技术并加以不断支持。VMware的 Linux虚拟化没有在此次测试中提及,主要是考虑到使用条件方面的限制会影响到基准测试。
除了VirtualBox、Xen、和KVM的基准测试,我们也会公布Sandy Bridge系统在裸机上的基准测试以供参考。
C-Ray多线程运算测试
首先,我们采用C-Ray来测试多线程运算性能。从图中我们可以看到,使用KVM虚拟化表现出的运算性能出众。KVM客户机实例能够以91%的裸机运算速度来处理多线程,而Sandy Bridge上的VirtualBox和Xen DomU客户机的运算速度分别为85%和68%。
POV-Ray渲染测试
POV-Ray 3.6.1是一款单线程、图像渲染测试工具,KVM表现仍然领先 。KVM的渲染速度几乎和使用Linux 3.0 kernel的Sandy Bridge笔记本裸机上的效果相仿。紧随其后的则是VirtualBox,Xen则被远远落在后面。
加密测试VirtualBox和KVM持平Smallpt全局照明渲染测试中,测试结果大体不变:KVM仍然是运算最快的Linux虚拟化平台,随后则是VirtualBox和Xen。
全局照明渲染测试
在密码测试方面,我们看到KVM仍然保持遥遥领先。其运算速度达到了裸机性能的97%,其次,就是VirtualBox和Xen DomU。后者的运算速度仅为裸机的69%。在对MD5算法进行测试的情况下,测试结果大体一致。
传统DES密码测试
MD5密码测试
在使用Blowfish进行加密测试的时候,VirtualBox和KVM速度几乎相同,然而DomU客户机的性能与它们却有着30%的差距。
Blowfish加密测试
在运行OpenSSL的时候其产生的结果,与刚才使用的John The Ripper测试工具得出的结果类似。
利用OpenSSL对4096位字符串进行密码测试
在KVM实例上运行7-Zip进行解压缩测试时,我们发现其性能只降低了10%,然而使用VirtualBox和Xen,其性能损失分别为15%和30%。
7-Zip解压缩测试
NAS Parallel并行处理测试中,整体来看KVM表现仍然最为优秀,而Xen表现最差。
VT-x技术助KVM大展身手
在多序列比对软件MAFFT测试中(数值越低越好),KVM仍然表现出众。
在处理OpenMP方面,KVM表现出的效率也最高。
对CPU进行的各种压力测试转移到对磁盘测试上,我们也同样看到,KVM仍然不负众望,而Xen的表现也快速得到提升,几乎与KVM持平。VirtualBox表现最差。需要指出的是,这些测试数据都采用了默认的磁盘格式,是基于Apache的静态网页负载测试。
在PostMark磁盘测试中,KVM性能损失几乎为20%(相比裸机),而VirtualBox则跌去了25%,Xen几乎下降了一半。
SQLite测试出来的最快虚拟化方案当属甲骨文的VirtualBox,它甚至比裸机的表现还要出色(数值越小表现越佳)。不过,其中的奥秘恐怕在于VirtualBox并不会强迫执行SQLite的Sync/FSync请求。
综上,从运算性能和磁盘负载角度来说Linux KVM不失为最快的虚拟化解决方案(单线程或者多线程)。得益于英特尔VT-x技术的Sandy Bridge 酷睿i7硬件平台,KVM(Kernel-based Virtual Machine)表现尤为出众。除了最后一项SQLite之外的其他所有测试,KVM都提供了最好的成绩。相比之下,VirtualBox在测试中排名第二,而Xen在HVM模式下的虚拟化表现最差。
如果要说VirtualBox对比KVM的优势,恐怕要数其目前支持的2D/3D加速技术,通过该技术可以在客户机上重定向至主机的显卡上。Xen同样也支持通过PCI传入和控制显卡。当然,通过Gallium3D驱动支持,VMware也能提供2D/3D加速技术。