MacMiniを仮想環境のホストOSとして使うべく、VirtualBoxとVMWareFusionで、性能比較してみた。
性能比較するために、以下で紹介されていたUnixBenchを使ってみた。
参考:Linuxの性能をチェックするunixbenchの使い方:なんとなしの日記
環境は以下のとおり。
- ホストOS
- ゲストOS(VMWare、VirtualBox共通)
- OS:CentOS 6.3
- メモリ:4096MB
- CPU:2 Processer
- HDD:100GB
- 使用ソフトウェア
- 仮想マシン1:VMWareFusion プロフェッショナルバージョン 5.0.2
- 仮想マシン2:VirtualBox 4.2.4
- ベンチマークソフト:UnixBench 5.1.2
このテスト、"running 1 parallel copies of tests"、"running 2 parallel copies of tests"と、単体実行と並列実行の2つのテストがされるようである。
まず、単体実行の方。
テスト項目 | VMWare | VirtualBox | 勝利 |
Dhrystone 2 using register variables | 2717.8 | 2728.8 | VMWare |
Double-Precision Whetstone | 624.4 | 615.3 | VMWare |
Execl Throughput | 587.1 | 487.0 | VMWare |
File Copy 1024 bufsize 2000 maxblocks | 1619.4 | 1586.9 | VMWare |
File Copy 256 bufsize 500 maxblocks | 1135.3 | 1100.1 | VMWare |
File Copy 4096 bufsize 8000 maxblocks | 2799.9 | 2955.6 | VirtualBox |
Pipe Throughput | 1094.1 | 1141.9 | VirtualBox |
Pipe-based Context Switching | 609.8 | 23.5 | VMWare |
Process Creation | 476.9 | 398.4 | VMWare |
Shell Scripts (1 concurrent) | 1130.5 | 999.9 | VMWare |
Shell Scripts (8 concurrent) | 1612.0 | 1482.0 | VMWare |
System Call Overhead | 1510.6 | 1464.4 | VMWare |
○System Benchmarks Index Score | 1133.4 | 823.9 | VMWare |
一番下の総合点を見ると、VMWareがだいたい優っている。Pipe-based ContextSwitchingに至っては、VirtualBoxでは苦手としているようである。
次に、2 parallelの方。
テスト項目 | VMWare | VirtualBox | 勝利 |
Dhrystone 2 using register variables | 4226.9 | 4815.9 | VirtualBox |
Double-Precision Whetstone | 1140.0 | 1122.2 | VirtualBox |
Execl Throughput | 1403.8 | 1181.3 | VMWare |
File Copy 1024 bufsize 2000 maxblocks | 2048.6 | 2054.8 | VirtualBox |
File Copy 256 bufsize 500 maxblocks | 1237.7 | 1454.8 | VirtualBox |
File Copy 4096 bufsize 8000 maxblocks | 3622.4 | 3947.5 | VirtualBox |
Pipe Throughput | 1614.8 | 2002.9 | VirtualBox |
Pipe-based Context Switching | 852.0 | 828.3 | VMWare |
Process Creation | 1302.9 | 1302.1 | VMWare |
Shell Scripts (1 concurrent) | 1755.3 | 1628.6 | VMWare |
Shell Scripts (8 concurrent) | 1479.4 | 1527.1 | VirtualBox |
System Call Overhead | 2205.6 | 2388.8 | VirtualBox |
○System Benchmarks Index Score | 1712.9 | 1773.3 | VirtualBox |
今度はVirtualBoxが勝っているじゃないか。
ただちょっと引っかかるところが。情報欄を見ると、VMWareとVirtualBoxで違いがある。
- VMWareFusion 5
System: localhost.localdomain: GNU/Linux OS: GNU/Linux -- 2.6.32-279.el6.x86_64 -- #1 SMP Fri Jun 22 12:19:21 UTC 2012 Machine: x86_64 (x86_64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: Intel(R) Core(TM) i5-2435M CPU @ 2.40GHz (4787.4 bogomips) x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET CPU 1: Intel(R) Core(TM) i5-2435M CPU @ 2.40GHz (4787.4 bogomips) x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET 20:06:43 up 1 min, 2 users, load average: 1.10, 0.55, 0.20; runlevel 5
System: localhost.localdomain: GNU/Linux OS: GNU/Linux -- 2.6.32-279.el6.x86_64 -- #1 SMP Fri Jun 22 12:19:21 UTC 2012 Machine: x86_64 (x86_64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: Intel(R) Core(TM) i5-2435M CPU @ 2.40GHz (4799.7 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET CPU 1: Intel(R) Core(TM) i5-2435M CPU @ 2.40GHz (4799.7 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET 14:08:29 up 1 min, 2 users, load average: 0.76, 0.27, 0.09; runlevel 5
なんと、同じ2Processer設定だが、VirtualBoxではHyper-Threadingとして認識している。
OS上からは2CPUで変わらないと思うのだが、実はなんか違ったらどうしよう。
という訳で、VMWareとVirtualBoxの大きな違いはそこまで見られなかったため、自分はMacMiniで非GUI環境で使う仮想マシンとしては、VirtualBoxを使うことにする。VMWareFusionは設定が簡素化されすぎていて、VirtualBoxの方がNATのポートフォワーディングなど色々設定でき、自分のような用途ではVirtualBoxの方が良さそうである。