エンジョイAsobi

スマホとWindowsとLinuxを遊ぶ。

Ubuntu Windows

Hyper-V 対 VMware Player対決

投稿日:2014年7月6日 更新日:

先日、バーチャルマシン上でプログラムをビルドすると時間がかかってしようがない。ビルドするならやっぱネイティブマシンだよね、と話している人がいました。

その人が使っているのはホスト型の仮想化だったのですが、それを聞いてふと、ハイパーバイザ型の仮想化に変えたらネイティブマシンまで速くなくても、もう少しマシな速度が出ないかなと思いました。

ホスト型とハイパーバイザ型では、ディスクI/O等ハードへのアクセスにホストOSを介さない分、ハイパーバイザ型の方が速いんだとか聞きます。でも確かめたことが無いので断言できないな。

そんなわけで今回は少し比較実験してみました。
手元で手軽に用意できるHyper-V対VMware Player(6.0.2)で。

実験に使うハードは、またも5月の連休中に組み立てたAthlon5350 + AM1H-ITXマシン。マシンパワー的に相応しくない気もしますが、新しいマシンの方が楽しいので
ここでHyper-Vを無効化したと書きましたが、実験のため、Hyper-Vを使うときだけまた有効化しました。ただHyper-Vを有効化していると今度はVMware Playerを起動できなくなるので、VMware Playerを使うときはまた無効化。

また速い/遅いの判定基準ですが、まあ私的に実用上の差を見る意味で、linuxのバニラカーネル3.15.1を素のコンフィグでビルドしたときの時間を測定してみました。

で詳細は飛ばしていきなり結果。

まずHyper-V。

~/work/linux-3.15.1>$ time make -j4
: 
real    84m10.340s
user    271m56.747s
sys     34m3.999s

 

続いてVMware Player。

~/work/linux-3.15.1>$ time make -j4
: 
real    94m50.176s
user    299m46.037s
sys     41m29.439s

 

うーん、まあ確かに10%くらいHyper-Vの方が早いような…。でも僅差。

大量のソースファイルをコンパイルしたので、たぶんディスクI/Oが大量に発生したと思います。ディスクI/Oはハイパーバイザ型の方が有利らしいので、その分Hyper-Vの方が速かったのかも。

ハイパーバイザ型とホスト型の比較にHyper-VとVMware Playerが相応しいかは微妙ですが、少なくとも今回はHyper-V上のVMの方が速いという結果になりました。

しかし絶対値としては、このハード上ではやっぱり両方とも思いきり遅いですね…。

一応CPU使用率を見てる限り、CPUが無駄に遊んでいた等は無いように思うのですが。

am1h-hyperV-perfmon-2

そうなると、今度はネイティブマシンの速度と比べてどうなのか知りたくなります。しかし、あいにくこのPCにはWindowsしかインストールしてません。

一方メインマシンになら入っている(Ubuntu 12.04 Desktop)ので、参考までにCore i5-3550(4core、3.3GHz)のメインマシン上で比較してみました。

まずHyper-V。

 
real    30m38.675s
user    82m40.282s
sys     9m8.921s

 

続いてネイティブ。

 
real    15m34.999s
user    47m57.692s
sys     3m33.793s

 

Hyper-Vの結果も、Athlon5350 + AM1H-ITXマシンに比べれば2.8倍も速いのですが、ネイティブマシンはさらにその倍速い。ディスクI/Oが多いせいか、こんなにも大差がつくとは思いませんでした。あ言い忘れましたが、ここに書いたネイティブマシンとバーチャルマシンは全てSSDではなくHDD上に置いています。

少なくともカーネルのビルドのような仕事には、仮想化使わず素直にネイティブマシンを使った方が、かなりの時間節約になりそうでした。

-Ubuntu, Windows

関連記事

Windowsバッチファイルの処理を一時停止させる sleep コマンド

先日Windowsのバッチファイルを使っていて、不便だなと感じたことがありました。 ある実験をしていて、Windows PCから自動的に繰り返し繰り返し操作を加えていたのですが、ある操作と操作の間にポ …

Cygwin上でiperfをビルド

ネットワークの疎通確認に便利なツールiperf。 先日Windows上で使おうと思ったら、見つからなくて困ったことがありました。 iperfのWindows版バイナリも配布されているらしいですが、私は …

Hyper-VでUbuntu 14.04を試す(1)

ついにリリースされました、Ubuntu 14.04。 実験用にインストールした13.10はともかく、実用に使っていた12.04マシンの調子が最近悪くて。インストールし直したかったけど、あと少しで14. …

限定版が復活してた。ASUS TransBook T100TA

今回は私が愛用している10.1インチWindowsタブレットの使用感です。 いわゆる”2 in 1”で、キーボードを脱着することによりノートPCとしてもタブレットPCとしても使えてとても重宝してます。 …

Hyper-V 上の Ubuntu で非レガシーなネットワークアダプターを使えた

以前 Hyper-V上にUbuntuの仮想マシンを作りましたが、ネットワークアダプターにはレガシーネットワークアダプターを選択しました。Ubuntuがレガシーでない方のドライバーを持っているのか確証が …