Hyper-V + AMD + Windows XP で性能が出ない問題と対処方法
今から VDI を導入する場合、OS は Windows 7 を選択する企業が多いのですが、中には
「Windows 7 は IE8 未満にダウングレードできない」 等、アプリ互換の観点で Windows XP を選択する企業もいらっしゃいます。
VDI は1台にサーバーで大量のゲスト OS を動かします。
これは仮想化の中でもかなり特殊なワークロードであり、Hyper-Threading がほとんど効かない傾向です。
このため、ピーク性能が有利な Intel プロセッサよりも、プロセッサ・コア数が多いことで同時処理スレッドが優位な AMD プロセッサ の方が有利であると一般的に言われています。
しかし、これまで AMD プロセッサの Hyper-V 上で XP を動かすのは厳しいと言われていました。
これは MS 自身も TechNet 上で公言しているとおり、Hyper-V は Windows Server 2003 SP2 および Vista 以降ではネイティブで I/O の最適化が行われるのですが、Windows XP に限っては性能(特に I/O 系)をブーストために 「Intel VT FlexPriority」 の支援が必須であったためです。
Microsoft TechNet: Degraded I/O Performance using a Windows XP Virtual Machine with Windows Server 2008 Hyper-V
http://technet.microsoft.com/en-us/library/ee407540(WS.10).aspx
では、FlexPriority のない AMD プロセッサとダメなのかというと、、、
最近この問題が解決されました。
しかも、意外なことにソフトウェア・パッチで解決できるようです。一般的にプロセッサの問題はハードウェア的に修正されるケースが多いのですが、ソフトウェア修正ということで、困っていた既存ユーザーも救済されるところは嬉しいですね!
AMD Support & Drivers: Low I/O performance and/or increased CPU utilization in a virtualized Windows® XP 32-Bit System
http://support.amd.com/us/kbarticles/Pages/WinXPVirtualizationHotfix.aspx