Virtual SMP@Windows 2000 VM
2008/01/07
Virtual SMPとは
仮想マシン上で複数のCPUを利用することが可能となる機能で、VMware Serverにおける仮想マシンでは最大2つのCPUを利用可能です。
Virtual SMPを使用しない従来の仮想マシン(仮想CPUが1つ)では、VMware Serverがインストールされている物理サーバに物理的/論理的*1に複数のCPUが搭載されている場合でも、1つのCPUしかフルに利用できません。

これは仮想CPUが1つのWin2k VM上でSuperπを動作させたときのホストの負荷です。ごらんの通り、1つのCPUがほぼ100%の負荷率であるのに対し、もう片方のCPUはほぼ遊んでいる状態です。
Virtual SMPを利用するには
Virtual SMPを利用するには、ProcessorのオプションでCPUの数をTwoにすれば利用可能です。が、既存のWindows 2000のVM上で仮想CPUの数を増やしても反映されません。インストールの時点で仮想CPUの数を2個に指定しておく必要があります。
途中で仮想CPUの構成を変更しても有効にならないのが、ゲストOS(この場合はWin2k Pro)の制限なのかは不明。そのうち違うOSで検証します。
Virtual SMPを有効にすると
仮想マシン上でCPUが複数利用可能となります。

マルチスレッドで動作する負荷をかければちゃんとホストの両方のCPUを利用するようになり、高負荷に耐えられるVMとして運用が可能です。
