XEN vs KVM性能测试

【Xen 和 KVM 雙方辯論會】

  • Xen: 我效能很好勒
  • KVM: 我都不用 Patch Kernel 勒

【特性比較】

使用的虛擬化技術優點與 Kernel 整合性與硬體相依性背後老大
XenParaVirtualization
Full Virtualization(需有 CPU 硬體支援)
CPU 效能佳Guest 於 2.6.23 整合進 Kernel
但Host Kernel 仍需自行 Patch
不一定要 Intel VT-x 或 AMD-V於2007年被 Citrix 併購
KVMFull Virtualization(需有 CPU 硬體支援)I/O 效能佳2.6.20 已整合進 Kernel (2007/02)一定要有 Intel VT-x 或 AMD-VQumranet 於2008被 RedHat 併購
  • 註:Intel 的 VT-x 的指令集為 vmx,AMD 的指令集為 svm
    • Xen 支援 VT-x、VT-i 和 SVM,KVM 則只支援 VT-x 和 SVM
  • 註:CPU 排程 - Xen 使用自己維護的 BVT(Borrowed Virtual Time)演算法,KVM 則使用 Linux Kernel 本身提供的 CPU 排程演算法

【測試環境】

  • 硬體規格:
CPUIntel® Core™2 Quad Processor Q6600 (8M Cache, 2.40 GHz, 1066 MHz FSB) 
支援 Intel VT-x
Ram4GB
NICRTL-8169 Gigabit Ethernet 10/100/1000
VGANVIDIA GeForce 9400 GT
DiskSATA Disk 160GB
  • 軟體規格:
OSDebian Lenny 5.0.5(x86_64) |
Kernel2.6.26-2
Xen3.2.1
KVM72

【測試案例】

1. CPU 效能比較

Xen-PVXen-HVMKVM-HVMHelp
Phoronix Test Suite - Kernel Compilation 2304.17 secs 2885.10 secs 3228.48 secsFewer are better
Phoronix Test Suite - FFmpeg 20.87 secs 20.96 secs 21.79 scesFewer are better
Phoronix Test Suite - Wavpack 17.34 secs 18.16 secs 18.78 secsFewer are better

XenPV01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Para-Virtualization)
XenHVM01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Full Virtualization)
KVMhvm01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: KVM Full Virtualization)

小結: Xen Para-Virtualization 有最佳的效能, Full Virtualization 也是 Xen-HVM 最佳 (Xen-PV > Xen-HVM > KVM-HVM)

2. Memory 效能比較

Xen-PVXen-HVMKVM-HVMHelp
Phoronix Test Suite - CacheBench Read: 2026.32 MB/s 
 Write: 7995.89 MB/s 
 Read/Modify/Write: 16612.87 MB/s
 Read: 2020.17 MB/s 
 Write: 8338.78 MB/s 
 Read/Modify/Write: 16564.89 MB/s
 Read: 2008.86 MB/s 
 Write: 7940.70 MB/s 
 Read/Modify/Write: 16436.59 MB/s
More is better
Phoronix Test Suite - RAMspeed Integer: 3934.79 MB/s 
 Floating Point: 3961.87 MB/s
 Integer: 3663.37 MB/s 
 Floating Point: 3688.82 MB/s
 Integer: 3872.83 MB/s 
 Floating Point: 3910.84 MB/s
More is better

XenPV01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Para-Virtualization)
XenHVM01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Full Virtualization)
KVMhvm01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: KVM Full Virtualization)

小結: Xen Para-Virtualization 有最佳的效能, Full Virtualization 則是 KVM-HVM 在浮點運算上優於 Xen-HVM

3. Disk I/O 效能比較

  • 註:Xen 可選擇 file、 tap:aio 和 xen4.0 最新  tap:tapdisk:aio 來設定 Guest disk
  • 註:KVM 可使用  virtio 來增加 I/O 效能 (KVM >= 60, kernel >=2.6.25)
  •  Virtualized Block Device I/O Performance
    • 樓上那位大大的 Disk I/O 測試總結:
    • (1) Xen is actually pretty damn good
      (2) KVM performance is sorry with full device emulation (expected)
      (3) KVM+VirtIO is better, but nowhere near Xen Paravirt
Xen-PVXen-HVMKVM-HVMHelp
Phoronix Test Suite - dbench ClientCount128: 19.84 MB/s ClientCount128: 11.56 MB/s ClientCount128: 4.09 MB/sMore is better
Phoronix Test Suite - IOzone Write1MB4GB: 14.27 MB/s 
 Read1MB4GB: 13.14 MB/s
 Write1MB4GB: 9.77 MB/s 
 Read1MB4GB: 27.24 MB/s
 Write1MB4GB: 8.22 MB/s 
 Read1MB4GB: 8.06 MB/s
More is better
Phoronix Test Suite - Thread I/O Count32-256MB: 0.43 MB/s Count32-256MB: 0.17 MB/s Count32-256MB: 0.24 MB/sMore is better

XenPV01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Para-Virtualization)
XenHVM01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Full Virtualization)
KVMhvm01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: KVM Full Virtualization)

小結: Xen Para-Virtualization 在大部分的情況下擁有最佳的效能,但是 Xen-HVM 在大檔案讀取上特別優於 Xen-PV & KVM-HVM.

另外在 Full Virtualization 上 KVM-HVM 在大檔案的計算上較 Xen-HVM 稍微來的優.

4. Network I/O 效能比較

Xen-PVXen-HVMKVM-HVM
Phoronix Test Suite[ Test Result (XenPV01)][ Test Result (XenHVM01)][ Test Result (KVMhvm01)]

XenPV01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Para-Virtualization)
XenHVM01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Full Virtualization)
KVMhvm01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: KVM Full Virtualization)

5. Graphics 效能比較

Xen-PVXen-HVMKVM-HVM
CUDA - GPU-accelerated LAPACK[ Test Result (XenPV01)][ Test Result (XenHVM01)][ Test Result (KVMhvm01)]
CUDA - Performance Primitives[ Test Result (XenPV01)][ Test Result (XenHVM01)][ Test Result (KVMhvm01)]
Phoronix Test Suite[ Test Result (XenPV01)][ Test Result (XenHVM01)][ Test Result (KVMhvm01)]

XenPV01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Para-Virtualization)
XenHVM01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: Xen Full Virtualization)
KVMhvm01 規格 = 1 CPU + 10GB HD + 1GB RAM + 500MB SWAP (說明: 虛擬機器數量一台: KVM Full Virtualization)


转载于:https://my.oschina.net/guol/blog/79020

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值