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