« VirtualBox:フルスクリーン時のメニュー表示 | トップページ | VMware FusionのVT-xサポート »

2009年12月26日 (土)

VMware Fusionの仮想SMPサポート

VMware Fusionの仮想SMPサポートはバージョン2までは「複数のシングルコアCPU」として実装されていたが、バージョン3は「マルチコアCPU」として実装されたため、1個のCPUにしか対応していないHome系エディションのWindowsでも複数のCPUコアを利用できるようになった。

正確に言うと話はもう少し複雑になる。ゲストOSとして「Windows XP Home Edition」を指定し、4個のCPUコアを割り当てて作成した仮想マシンの設定ファイル(vmxファイル)を見ると以下のような記述がある。

numvcpus = "4"
cpuid.coresPerSocket = "4"

「numvcpus」は割り当てたCPUコアの数で、「cpuid.coresPerSocket 」はソケット(プロセッサ)辺りのコア数を意味している。つまりこの場合は「クアッドコアCPUが1個」という意味になる。

同様に、Windows XP Professionalゲストでは「デュアルコアCPUが2個」の設定で作成される。

numvcpus = "4"
cpuid.coresPerSocket = "2"

WIndows Server 2003 Enterprise Editionゲストでは「cpuid.coresPerSocket」の指定がない。この場合は「cpuid.coresPerSocket = "1"」が仮定され、「シングルコアCPUが4個」という意味になる。

numvcpus = "4"

このように、ゲストOSでサポートされている最大のCPU数に合わせてソケット辺りのコア数が自動的に設定されている。

これらの値を通常は変更する必要はないが、vmxファイルをエディタで編集すれば、ソケット辺りのコア数を任意に変更することができる。例えば最大2個のCPUにしか対応しないWindows 7で「シングルコアCPUが4個」に設定すると、デバイスマネージャーでは4個のCPUコアが見えるが、タスクマネージャーでは2個のCPUコアしか使われていないことが分かる。

なお、Windows/Linux版のVMware Workstation 7ではGUIで任意にソケット辺りのコア数を変更できる。
Win7_4cpuVw7p

|

« VirtualBox:フルスクリーン時のメニュー表示 | トップページ | VMware FusionのVT-xサポート »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/159342/47121994

この記事へのトラックバック一覧です: VMware Fusionの仮想SMPサポート:

« VirtualBox:フルスクリーン時のメニュー表示 | トップページ | VMware FusionのVT-xサポート »