ベンチマークの説明
vServCon は、富士通テクノロジー・ソリューションズが、ハイパーバイザーを使用するサーバ構成について、
サーバ統合の適合性の比較に使用するベンチマークです。これにより、システム、プロセッサ、および I/O テ クノロジーの比較と、ハイパーバイザー、仮想化形式、および仮想マシン用の追加ドライバの両方の比較が 可能になります。
vServCon は、統合および仮想化されたサーバ環境の負荷を再現する、すでに確立されたベンチマークを集約 するフレームワークです。データベース、アプリケーションサーバ、Web サーバというアプリケーションシ ナリオを対象とする 3つの実証済みのベンチマークが使用されます。
アプリケーションシナリオ ベンチマーク 論理 CPU コアの数 メモリ データベース Sysbench(修正済み) 2 1.5 GB
Java アプリケーションサーバ SPECjbb(修正済み、50~60 %の負荷) 2 2 GB
Web サーバ WebBench 1 1.5 GB
3 つの標準ベンチマークのそれぞれが専用の仮想マシン(VM)に割り当てられます。これらに加えてアイド ル VM という 4 番目のマシンが追加されます。これらの 4 つの VM が「タイル」を構成します。測定対象と なるサーバの処理能力によっては、最高のパフォーマンス
を達成するために、いくつかのタイルを並列して開始する 必要があります。
3 つの vServCon アプリケーションシナリオのそれぞれが、
各 VM のアプリケーション固有のトランザクションレート という形で具体的なベンチマーク結果を提供します。指定 した数のタイルのスコアを算出するために、それぞれのベ ンチマーク結果は、リファレンスシステムの測定結果と関 連付けられます。vServCon のリファレンスシステムとし ては、PRIMERGY RX300 S3 が定義されています。結果 を表すパフォーマンス値が、仮想 CPU の数とメモリサイ ズを考慮して重み付けされ、すべての VM およびタイルに ついて合算されます。結果は、このタイル 数に対する vServCon スコアになります。
原則として、1 つのタイルから始めて、vServCon スコアの大幅な増加が見られなくなるまで、タイル数を増 やしながらこの手順が実行されます。最終的な vServCon スコアは、すべてのタイル数を通しての vServCon スコアの最大値になり、ハイパーバイザーが構成したすべてのVMによる最大のサーバ集約効果を表します。
vServCon は、ホストの合計 CPU 負荷(VM および他のすべての CPU 処理)を記録し、さらに可能な場合 は電力消費量も記録します。
このスコアは、多くの VM を構成する仮想化システムでCPUリソースを最大に利用して実現可能なパフォー マンスを示すことを目的としています。つまり、不十分なサイズのディスクやメインメモリの不足によって、
尐ないタイル数での測定中に限界に達した場合、スコアは意味を持ちません。このため、vServConの測定環 境は、CPU のみが制限要因となり、他のリソースの結果として制限が発生しないように設計されています。
この目的および比較性のために、vServCon で使用されるすべての VM の仮想ハードウェアリソース、オペ レーティングシステム、およびアプリケーションが明確に定義されたプロファイルが使用されます。
vServCon の詳細については、『ベンチマークの概要 vServCon』を参照してください。
テスト対象システム
負荷ジェネ レーター
Web 負荷ジェネ
レーター Web
タイル タイル タイル
VM Web
VM Java
アイドル VM 状態 データ VM
ベース
負荷ジェネ レーター Web
フレームワークコントローラー
ベンチマーク結果
PRIMERGY RX200 S5 は、プロセッサテクノロジーの大幅な進歩のおかげでアプリケーションの仮想化に非 常に適しています。以前のシステムと比較して、実際に 2 倍の仮想化パフォーマンス(vServCon スコアで 測定)を実現することができます。前述の vServCon プロファイルを基にすると、システムが 2 基の Xeon プ ロセッサで完全に構成されている場合、18 の実際のアプリケーション VM(6 つのタイルに相当)を使用し たときに、CPU システムリソースは、ほぼ最適な使用率を実現することができます。
最初の図に、PRIMERGY RX200 S5 の使用率をプロセッサとタイル数に関する vServCon スコアで示します。
ホストのそれぞれの CPU 負荷も示されています。最適な CPU 負荷のタイル数のときは、一般的に約 90 % の使用率になります。それを超えると過負荷となり、仮想化のパフォーマンスは向上せずに再び低下します。
これらの現在の Xeon プロセッサでは、タイル数が 6 つになるまで全体的な処理能力が増加します。vServCon スコアはプロセッサの周波数によっても大幅に増加します。
特にハイパースレッディングを使用すると、物理的なプロセッサコアが 2 つの論理コアに分割され、16 の論 理コアがハイパーバイザーで使用できるようになるので、より多数のタイルを処理できるようになります。
このように、この標準機能は一般的にシステムの仮想化パフォーマンスを向上させます。
ハイパースレッディングを使用するシステムでは、タイル数のスケーリング曲線が明確に見られます。タイ ルあたりに約 4 つの論理 CPU が使用される結果として(ベンチマークの説明を参照)、タイル数が 2 つ以下 のときは複数の VM による同じ物理コアの並列使用は回避されます。そのため、この領域ではほぼ理想的に パフォーマンス曲線が上昇します。タイル数が 2 つを超えると、CPU 使用率がいっぱいになるまであまり向 上しなくなります。
仮想化環境のメインメモリを選択するときのガイドラインとして、メモリアクセス速度よりも十分な容量の ほうが重要であると言えます。
省電力もサーバ統合の重要な要素です。Xeon E5540 プロセッサでは、例えば単純にアプリケーション VM の 数を 3 から 6 に倍増させることで、仮想化のパフォーマンスを 76 %向上させることができますが、電力消 費量は約 11 %しか増加しません。次の図に、前述のプロセッサの電力消費量を示します。一方に電力消費量 の絶対差を示し、もう一方にvServCon スコアの電力消費量(kW )に対する比率(図では「vServCon power score」と記述)を示します。
これまでは、システムの仮想化パフォーマンスを全体的に分析してきました。以下では、仮想化環境での個 別アプリケーション VM の観点からもパフォーマンスについて説明します。例として、Xeon X5570 プロセッ サを搭載したシステムを分析します。
全体的なパフォーマンスに関し てアプリケーション VM の数が 最適である場合(例として 6 タ イル)、運用負荷が尐ない状況
(例として1タイル)に比べると
個別の VM のパフォーマンスは かなり低くなっています。図に、
VM の数が増加したときの 3 種 類の各アプリケーション VM の 相対的なパフォーマンスをリ ファレンスシステムに対する比 率として示します。グループの 最初の列には合計で 3 つのアプ リケーション VM(1 つのタイ ル)による組み合わせの 1 つの VMが表示され、2 番目の列は 6 つのアプリケーション VM(2 つ のタイル)の組み合わせの場合 が表示され、以下同様に表示さ れています。それぞれのタイプ
の個別の値、および重なった列の高さとしてすべての VM の合計値の両方が、表示されています。
仮想ホスト上の VM の数に関して、特定のケースでは全体的なパフォーマンスよりも個別のアプリケーショ ンのパフォーマンス要件を重視する必要があります。
仮想マシン内でアプリケーションを最高のパフォーマンスで実行したい場合は、仮想化ソリューションの必 要性が高いアプリケーションプロファイルについて詳しく調べることが有効です。これには、メモリを大量 に必要とする Web サーバなどのアプリケーションシナリオが含まれます。
最適化の最初の方法が、このアプリケーションシナリオに適用されます。動的なコンテンツの実装がパフォー マンスに与える影響は、動的なページを使用する Web サーバの例に顕著に見られます。動的なコンテンツは 多くの場合 CGI プログラム(またはスクリプト)として実装されます。ページを選択するたびにCGI プログ ラムが新しいプロセスを生成しますが、これはハイパーバイザーでは尐々複雑です。代わりに PHP、ASP、
または同様の方法を使用して動的なコンテンツを実装できます。この場合、結果として新しく生成されるプ ロセスの負荷は発生しません。vServCon のWeb サーバ VM の負荷プロファイル内で、CGI プログラムを起 動する HTTP 要求の割合を変えることで、その様子を実際にシミュレートすることができます。下の図は、
VM 内の変更されていない Linux カーネルがパフォーマンスに与える影響を示しています。次の 2 つの負荷 プロファイルを比較します。
Web サーバ用負荷プロファイル
STD-CGI この負荷プロファイルは、Web サーバ上のすべての HTTP 要求の 16 %およびす
べての HTTP-SSL 要求の 2 %が CGI プログラムを起動することを定義します。
これにより仮想化ソリューションの必要性が高まります。
MIN-CGI STD-CGI プロファイルから 16 %の CGI-HTTP 要求を除いたものです。Web サー
バの負荷は、この CGI プロセスの分だけ減尐しますが、仮想化ソリューション内 のコストはさらに大きく減尐します。両方の効果の組み合わせにより、追加の CPU 処理能力を利用できるようになり、VM の Web トランザクションレートが大幅に 増加します。
これまでに説明したすべての測定では、標準として STD-CGI プロファイルを使用しています。
図には、仮想化分野のプロセッサテクノロジーの優位性が明確に示されています。下図はPRIMERGY RX200 S5
(Xeon X5570 搭載)を以前のシステムと比較したものですが、以前のシステム上の Web-VM は、アプリケー ションシナリオの最適化の結果として 86 %のパフォーマンス
向上を実現できました。現在の世代のプロセッサでは、28 % にすぎません。Extended Page Tables(EPT)のおかげで、シ ステムはより要求の大きな負荷プロファイルを良好に処理でき るので、アプリケーションシナリオを基にした最適化の余地は 減尐しています。STD-CGI ではなく MIN-CGIでのパフォーマ ンスの向上は、仮想化されていないシステムの値と類似した値 になります。
アプリケーションシナリオの最適化についてまとめると、興味 深いことですが、最適化の効果は仮想化されていないシステム と同じレベルです。