ベンチマークの説明
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 BX620 S5 は、プロセッサテクノロジーの大幅な進歩のおかげでアプリケーションの仮想化に非 常に適しています。以前のシステムと比較して、実際に 2 倍の仮想化パフォーマンス(vServCon スコアで 測定)を実現することができます。前述の vServCon プロファイルを基にすると、システムが 2 基の Xeon プ ロセッサで完全に構成されている場合、18 の実際のアプリケーション VM(6 つのタイルに相当)を使用し たときに、CPU システムリソースは、ほぼ最適な使用率を実現することができます。
最初の図に、PRIMERGY BX620 S5 の使用率をプロセッサとタイル数に関する vServCon スコアで示します。
ホストのそれぞれの CPU 負荷も示されています。最適な CPU 負荷のタイル数のときは、一般的に約 90 % の使用率になります。それを超えると過負荷となり、仮想化のパフォーマンスは向上せずに再び低下します。
これらの現在の Xeon プロセッサでは、タイル数が 6 つになるまで全体的な処理能力が増加します。vServCon スコアはプロセッサの周波数によっても大幅に増加します。
特にハイパースレッディングを使用すると、物理的なプロセッサコアが 2 つの論理コアに分割され、16 の論 理コアがハイパーバイザーで使用できるようになるので、より多数のタイルを処理できるようになります。
このように、この標準機能は一般的にシステムの仮想化パフォーマンスを向上させます。
ハイパースレッディングを使用するシステムでは、タイル数のスケーリング曲線が明確に見られます。タイ ルあたりに約 4 つの論理 CPU が使用される結果として(ベンチマークの説明を参照)、タイル数が 2 つ以下 のときは複数の VM による同じ物理コアの並列使用は回避されます。そのため、この領域ではほぼ理想的に パフォーマンス曲線が上昇します。タイル数が 2 つを超えると、CPU 使用率がいっぱいになるまであまり向 上しなくなります。
仮想化環境のメインメモリを選択するときのガイドラインとして、メモリアクセス速度よりも十分な容量の ほうが重要であると言えます。
これまでは、システムの仮想化パフォーマンスを全体的に分析してきました。以下では、仮想化環境での個 別アプリケーション 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 BX620 S5(Xeon X5570 搭載)が以前のシステムと比較されます。これに対し、以前のシステム上の Web-VM は、アプリケー ションシナリオの最適化の結果として 86 %のパフォーマンス
向上を実現できました。現在の世代のプロセッサでは、28 % にすぎません。Extended Page Tables(EPT)のおかげで、シ ステムはより要求の大きな負荷プロファイルを良好に処理で きるので、アプリケーションシナリオを基にした最適化の余 地は減尐しています。STD-CGI ではなく MIN-CGIでのパフォー マンスの向上は、仮想化されていないシステムの値と類似し た値になります。
アプリケーションシナリオの最適化についてまとめると、興 味深いことですが、最適化の効果は仮想化されていないシス テムと同じレベルです。