PMPの流儀

我が家の流儀

我が家で気になったことを夫婦で取り上げていきます

MENU

VMware の最適化、高速化

仮想化PCソフトの代表格であるVMware

VMware Workstation Player 17 の快適環境の構築の仕方を解説します。

 

Version17の新機能については以下をご覧ください。

pmp-style.hatenablog.com

 

1. 推奨のPCスペック

 ・メモリ16GB以上

仮想マシンを快適に使用するためにメモリは重要です。

64bit OSを使用する場合は16GB以上を推奨します。特にVer.16でサポートされたDirectX11で3Dアプリを快適に使うためには16Gは必須です。

8GBだと仮想マシン内への割り当ては3GB程度となり32bit OSがぎりぎりです。32bit OSの方がフットプリントが小さいので3Gあれば割と快適に使えます。

 

・ストレージはSSD

SSDを推奨しますが、外付けのHDDでも苦しいですが可です。 最悪なのは、HDDでホストOSと同じドライブ内に仮想PC環境を構築する場合です。  ホストOSと仮想マシンのファイルアクセスが重なり遅くなります。これでは高性能なCPU積んでいてもパフォーマンスは出ません。

2. 仮想マシンのメモリを物理メモリから確保

 VMware は省メモリのために、仮想マシンのメモリはホストOSのファイル上に確保されます。

 そのため、仮想マシンのメモリ量をいくら増やしても快適にならないどころか、ファイルへのアクセスが増えてかえって遅くなります。ゲストOSに4GBのメモリを割り付けると、4GBのファイルが生成されてしまいます。SSDのためにもよろしくないです。

 以下の設定をすることで、仮想マシンに物理メモリを確保できます。これにより劇的に動作が軽くなります。

 

  1. 仮想マシンをシャットダウンしてVMwareもクローズしておきます。

  2. vmxファイルをメモ帳などのテキストエディタで開きます。

      VMwareのデータは通常以下に格納されています。

  C:\users\ユーザ名\Documents\Virtual Machines\仮想PC名称

  3. 最下行に以下を追加する。

       mainMem.useNamedFile = "FALSE"

3. その他DISK I/O の軽減化

 上の対策と合わせて以下も設定します。これらは劇的な効果はありませんので体感速度を感じることはないでしょう。

    MemTrimRate = "0"

    sched.mem.pshare.enable = "FALSE"

    prefvmx.useRecommendedLockedMemSize = "TRUE"

 

4. ハードディスク

VMwareにてハードディスクを追加すると、ホストにvmdkというファイルが作成されます。その形態には4つの選択肢があります。

 

(1). 単一ファイルで、全容量事前割り当て

(2). 単一ファイルで、最小割り当て

(3). 複数ファイルで、全容量事前割り当て

(4). 複数ファイルで、最小割り当て

 

初期値は(4)なのですが、(1)を推奨します。

初期値が(4)なのは、その昔HDDがFAT32全盛の時代にファイルの最大サイズが4GBの制約があったことに由来すると思われます。今はNTFSが前提ですので4GBの制限に縛られる必要はありません。

 

f:id:ruruucky:20200815145638p:plain

 

さらにVMware専用のパーティーションを作成することを推奨します。

 

パーティーションを分離して単一ファイルにする理由は2つあります。

 

1つ目は、vmdkファイルのフラグメント発生を防止するためです。パーティーションを作成しないと、数十GBのファイルが連続領域に生成されない可能性があります。

 

2つ目は、システムのバックアップを取る際に、仮想マシンのファイルは個別にバックアップをすればいいので、バックアップ対象から外すことができます。

 

私は 60GBのvmdkを作成したのですが、パーティーションはぎりぎりのサイズで作成しています。ただし、スナップショットを使用する方はメモリ容量分は空きエリアを取ってください。

 

ドライブのプロパティで、インデックスを外しておきましょう。仮想マシンのファイルにインデックスは不要です。

f:id:ruruucky:20210211104214p:plain

 

すでに、vmdkを複数ファイルで運用している方向け

vmware_vdiskmanager.exe というVMwareのツールを使用すると、vmdkを単一ファイルに変換することが可能です。

残念ながらVMware Workstation Player には同梱していませんが以下の手順で可能です。

 

(1).  vmwareのサイトからVDDKを入手してください。

https://code.vmware.com/web/sdk/7.0/vddk 

 

(2). コマンドプロンプトから以下のコマンドを実行

vmware-vdiskmanager.exe -r <分割されたvmdkファイル> -t 0 <新規作成する単一vmdkファイル名>

 

5. ハードディスクのインターフェース

仮想マシンのハードディスクインターフェースを変更することで最適化が可能です。

以下を参照ください。 

pmp-style.hatenablog.com

6. ネットワークのデバイス

仮想マシンネットワークアダプタを変更することで最適化が可能です。

以下を参照ください。 

 

pmp-style.hatenablog.com

 

7. 不要デバイスの削除

 BIOS設定により不要なデバイスを削除します。

pmp-style.hatenablog.com

 

8. Intel 12世代CPU  Alder Lake 向けの最適化

VMware Workstation Player 16 では Alder Lake の2種類のコアを効率よく割り当てができません。個別の最適化が必要です。

 

pmp-style.hatenablog.com