仮想マシンごとにCPUの互換性を設定できる

仮想マシンごとにCPUの互換性を設定できる

 Hyper-Vを導入して、実機から仮想環境に移行する際にもっとも気になるのは、パフォーマンスがどのくらい低下するのか、それは受け入れられる範囲内なのかということでしょう。

 もちろん、古いハードウエアで稼働している複数のOSを、最新のハードウエアで動くHyper-V上に移行する場合など、パフォーマンスが上がることもありますが、同一のハードウエアで物理環境から仮想環境に移行すれば、仕組み上パフォーマンスの低下は避けられません。

 仮想環境ではハードウエアを仮想化するためのオーバーヘッドが必ず存在します。かつてはすべてソフトウエアで処理していましたが、CPUにもそのオーバーヘッドを肩代わりするような仮想化支援機能を搭載するものが増えてきました。

 Hyper-V 1.0 では、Intel VT、AMD-Vといった仮想化支援機能に対応し、よりパフォーマンスの良いハイパーバイザーを提供していました。Hyper-V 2.0では、さらに次世代の仮想化支援機能であるIntel EPTやAMD RVI(NPT)をサポートしています。これらのサポートにより、Second Level Address Translation(以降SLAT)という機能が追加されました。

 OSが使用するメモリー空間のアドレスは仮想化されていて、実際のメモリーにはアドレスを変換してアクセスします。仮想環境では、さらに一段階アドレス変換が増えます。Shared Page Tableを作成してアドレス変換の効率化を図り、パフォーマンスの低下を避けていますが、アドレス変換の負荷は大きく、ハイパーバイザーのプロセスが全体の10%近くまで占めることもあります。

 この仮想OSのアドレス変換を、CPUの仮想支援機能を使って行うようにしたのがSLATです。SLATではハイパーバイザーのCPU負荷も2%程度までに抑えられ、メモリー使用量も節約されています。

 CPUには仮想化支援機能以外にも、各世代でSSEやAMD 3D Now!といった、主にマルチメディアの各種支援機能があり、管理OSだけではなく仮想OSからも使用できます。

 仮想OSから使用できる支援機能はCPUによって異なり、Windowsが自動的に判断して使用します。これは仮想OSのパフォーマンス面では有利ですが、異なるCPUを搭載するサーバー間でLive Migrationを行う際には問題となります。移行元で利用可能な支援機能が、移行先のサーバーには存在しないことがあるためです。

 そのため、Hyper-V 2.0ではCPUの互換性の設定を仮想マシンごとに行うことができ、異なるCPU間のLive Migrationも可能です(同一プロセッサーファミリー間に限ります。Intel機とAMD機との間でのLive Migrationはできません)。

ディスクアクセスのパフォーマンス向上と新機能

 CPU同様、仮想マシンのパフォーマンスに直接影響するのが、仮想ディスクへのアクセスのパフォーマンスです。Hyper-V 1.0ではパフォーマンスの観点から、実運用の環境では容量固定の仮想ディスク、または物理ハードディスク(パススルーディスク)の利用が推奨されていました。

 これは、容量可変の仮想ディスクは使用ディスク量が少なくて済むため便利ですが、パフォーマンスは容量固定の方が有利という位置づけになっていたためです。

 Hyper-V 2.0では、容量可変の仮想ディスクへのアクセスのパフォーマンスが大幅に向上し、Hyper-V 1.0における容量固定の仮想ディスク並みになっています。容量固定の仮想ディスクはさらにパフォーマンスが向上し、ネイティブ接続に近づいています。したがって、容量可変の仮想ディスクも十分実運用環境に利用できるようになりました。

 パフォーマンスの向上以外にも便利な機能が追加されています。稼働中の仮想マシンにストレージを追加したり削除したりできるようになったため、仮想マシンのSCSIインターフェース経由でVHDファイルや物理ディスクを追加・削除できます。

 ここで言うSCSIは、仮想SCSIインターフェースであり、実際のディスクの接続方法はSCSIである必要はありません。サービスを中断することなく仮想マシンにストレージを増設したり、仮想マシンのバックアップ時にディスクを追加したりすることができます。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30