僕の職場では、いくつもの環境をVMWare Workstationを使って仮想化しています。ソフトウェアによる仮想化は、物理マシンと比べた場合、性能面で見劣りしてしまいます。クライアントマシンのようにさくさく動いてくれることを期待しているわけではありませんが、もっさりとした動作の仮想マシンを見ているとイライラしてくることが多々あります。
そこで、仮想マシンのパフォーマンスを改善する方法を調べてみました。
基本的な改善策
以下のエントリを読んでみて、そのうち自分の環境でも利用できそうなものをピックアップしてみました。
ホストマシンのメモリやハードディスクなどの性能を向上させるには、部品を新調したりする必要もあるため、短期的には難しいと思います。したがって、上記の10のヒントのうち、まずはゲストOS側の設定でどうにかなりそうな、以下の対策から試していくというのが良いと思います。
10:ツールをきちんとインストールする
→VMWare Toolsはできるだけインストールしましょう。
9:ディスクに適切な空き容量を確保する
→適宜、ゲストOS側でディスクリーンアップすることもお忘れなく。
8:ゲストOSの視覚効果を無効にする
→当たり前ですが、アニメーション効果をOFFにするだけでも違います。
7:仮想ハードディスクを事前に割り当てる
→新規の仮想マシンを作る場合にこの設定を行うと、動的にディスク領域を使用する場合よりは、パフォーマンスが向上します。
ディスクの最適化
仮想マシンはもちろんのこと、ホストマシン側でも最適化ユーティリティによるディスクの最適化を行うことで、パフォーマンスの向上が見込めるようです。*1
最高のディスクパフォーマンスを実現するには、次の3つの作業を順に行ってください。
- 仮想マシン内でディスクの最適化ユーティリティを実行します。
- VMware Workstationの最適化ツールを使用します。[VM] - [設定]または[VM] - [Settings]を選択し、リストから最適化を行いたい仮想ディスクをクリックして[ディスクの最適化]または[Defragment]をクリックします。
- ホストコンピュータでディスクの最適化ユーティリティを実行します。
ゲストOSのメモリはファイルではなく物理メモリを使う
これは、WindowsのゲストOSに限られるようですが、*.vmxファイルに以下の1行を追加すると、仮想マシンのメモリがホストマシンのハードディスクではなく、メモリに展開されパフォーマンスが向上するようです。
mainMem.useNamedFile = "FALSE"
その他
ヒントを眺めていて見つけた対策には、次のようなものがあります。
- ゲストOSでスクリーンセーバーが起動しないようにする。
→3Dなどの重たいスクリーンセーバーの使用をやめると、パフォーマンスが向上するようです。
関連するエントリ
*1:僕の職場の場合は、ホストマシンに海外製のハードディスク暗号化ソフトがインストールされていて、迂闊にデフラグできないので、これは試すことができませんでした。