 |
≫ |
|
|
|
 |
本文書では、VMmarkの目的と重要性、ベンチマークの実行方法、およびベンチマーク結果の見方について説明します。本文書は、VMwareのWebサイトで公開されている公式のVMmarkガイドと比べて、技術的な内容を控え、そうした情報に慣れていない意思決定者に対してVMmarkの情報の提供を試みるものです。 |
 |
VMmarkベンチマークの目的は、お客様がさまざまな仮想化対応プラットフォームの能力を比較できるように、テスト対象システム(SUT:System Under Test)上で仮想化サーバのパフォーマンスを測定することです。VMmarkは、オペレーティングシステムと典型的なデータセンター環境を反映するために特別に調整されたアプリケーションとを組み合わせたセット、およびVMware ESXが動作する、1台のサーバ内の仮想マシンのパフォーマンスを表します。VMmarkでは、一般に使用されている負荷生成ツールやStandard Performance Evaluation Corporation(SPEC®)によって開発されたベンチマークに由来する、「サブテスト」のコレクションが使用されています。VMmarkは、ハードウェアプラットフォームや各種の仮想化ソフトウェアシステムにとらわれることのない、標準化へのオープンな取り組みです。VMmarkでは、データセンターにおける一般的なアプリケーションに相当するワークロードが使用されています。VMmarkは仮想化に関するソフトウェアおよびハードウェアのパフォーマンスのベンチマーク測定を目的としており、それ以外のソフトウェアコンポーネントのベンチマーク測定を目的としたものではありません。 |
 |
VMmarkは業界初の仮想化ベンチマークです。従来のベンチマークは、テスト実行の中で単一のシステムに負荷を掛け、最大限のパフォーマンスやスケーラビリティの達成を試みることを目的としています。そうしたベンチマークの結果からは、仮想化されたシステムのスケーラビリティに関する情報は得られません。仮想化されたシステムでは、仮想化されていないシステムと同じ数のプロセッサおよびその他のコンポーネント上で、複数のベンチマークを実行できます。当然ながら、このように複数のベンチマークを同時に実行した場合と、処理およびその他のリソースすべてを分割せずに各ベンチマークを単独で実行した場合とでは、比較しうる結果を得ることはできません。このため、仮想化されたシステムのパフォーマンスを測定し、比較を可能にするための標準化が必要となり、そのための新しいベンチマークが求められました。VMmarkベンチマークの開発には、客観的で意味のある結果が得られるように多大な労力が投入されました。 |
 |
仮想マシン(VM)のパフォーマンスは、単一サーバのベンチマークスコアを測定し、それをその単一サーバプラットフォームにおいて計画された仮想化構成のVM数で割って予測できるものではありません。仮想化ソフトウェアではなんらかのシステムリソースが消費されるため、仮想化環境の実行にはオーバーヘッドが伴います。 |
 |
VMmarkの開発にあたっては、データセンター環境でどのようなアプリケーションが一般的に使用されているかについて、慎重に検討されました。また、開発の過程では、統合作業や新しいサーバ展開において、仮想化サーバ上で一般的に実行されることが考えられるオペレーティングシステムの組み合わせについての選択も行われました。 |
 |
ワークロードを選択した後、それらのアプリケーションを仮想化フレームワークの中で測定できるように調整する方法を決める必要がありました。仮想化は、システムで実行中の他のアプリケーションに影響を与えます。この影響はアプリケーションごとに異なり、さまざまな要因がパフォーマンスに影響を及ぼします。仮想化されたシステムでは、仮想化ソフトウェアのオーバーヘッドに加えて、仮想化されたOSのオーバーヘッドも存在します。また、VM間で、プロセッサ、ディスクI/O、ネットワーク帯域幅、メモリなどのリソースが共有され、それらすべてが個々のVMとシステム全体のパフォーマンスに影響を及ぼします。仮想化されていないサーバでは、仮想化されたサーバよりも高いSPECwebスコアを達成できます。なぜ、そうした違いが生じるのでしょうか。仮想化されていないサーバと、そのサーバ上で実行されているアプリケーションからは、すべてのリソースにアクセスできます。これに対して、仮想化された環境では、それらのリソースは、個々のオペレーティングシステム インスタンスおよびアプリケーションが実行されている複数の仮想マシン間で共有されるためです。 |
 |
どのようなベンチマークでもシステムどうしの比較に役立つようにするには、ベンチマークのさまざまな側面をどのように矛盾なく設定すればよいのかについて、ハードウェアとソフトウェアの両面にわたって要件を定める必要があります。VMmarkでは、許容されるメモリ、ディスク、CPUの数量など、パッケージをどのように構築すべきかが定められています。ベンチマークを実施するベンダーは、VMmark用に修正されたパッケージや、仮想マシンの構成規則に対して、変更を加えることはできません。 |
 |
VMmarkでは、6個を1組とする仮想マシンのセットを使用してワークロードを実行しますが、このセットのことを「タイル」と呼びます。VMmarkの結果で最も重要な2つの数値として、個々のワークロードのパフォーマンスと、システムで実行できるタイルの総数があります。システムで実行できるタイルの総数によって、システムの統合能力が推定できます。「タイル」という言葉が使用されるのは、視覚的にタイル状のモザイクのように表現されるためです。
|
| |

図1. タイル:異なるワークロードと別々のオペレーティングシステムを実行する6個の仮想マシン |
 |
VMmarkベンチマークは、1個のタイルだけを実行するように設定したり、複数のタイルを実行するように設定したりできます。図2では、8個のタイルをサーバで実行しています。
いくつのタイルの実行を試みるかは、選択するプラットフォームによって左右されます。プロセッサおよびコアの数が多いプラットフォームほど、より多くのタイルを実行できます。いくつのタイルを実行できるかを予測するのは容易ではありません。テストエンジニアがタイルの最大数を推定してその範囲でテストを始め、1回のテストごとに1つずつタイルを追加し、実行が失敗するまで続けます。これにより実行可能なタイルの最大数が得られ、このタイルの最大成功数で正式にテストを実行します。
|
| |

図2. 1台のサーバで複数のタイルが実行されている場合の視覚的表現 |
 |
表1は、各VMmarkタイルで実行されるワークロードとアプリケーションを示しています。スタンバイサーバの仮想マシンは、テスト実行中のハートビートに応答する機能を担うため、アプリケーションは実行しませんが、オペレーティングシステムを実行し、1個のCPUおよび指定のメモリ量とディスク領域を備えた仮想マシンとして構成されます。
|
| |
| 表1. VMmarkのタイルにおけるワークロードの概要 |
| ワークロード |
アプリケーション |
仮想マシンのプラットフォーム |
| メールサーバ |
Exchange 2003 |
Windows 2003、2CPU、1GB RAM、24GBディスク |
| Javaサーバ |
SPECjbb2005ベース |
Windows 2003、2CPU、1GB RAM、8GBディスク |
| Webサーバ |
SPECweb2005ベース |
SLES 10、2CPU、512MB RAM、8GBディスク |
| データベースサーバ |
MySQL |
SLES 10、2CPU、2GB RAM、10GBディスク |
| ファイルサーバ |
dbench |
SLES 10、1CPU、256MB RAM、8GBディスク |
| スタンバイサーバ |
なし |
Windows 2003、1CPU、256MB RAM、4GBディスク |
|
 |
以下は、各アプリケーションをVMmark用に調整する方法の一例です。 |
- メールサーバ
MicrosoftのLoadSimを使用してExchangeメールサーバのユーザをシミュレートします。LoadSimをVMmark用に適した状態にするため、メールサーバのユーザ数を500に設定します。
- Javaサーバ
SPECjbb2005を使用して、システムがJavaアプリケーションを実行できる能力を測定します。SPECjbb2005は、データベースのサイズを増大させながら、短時間の実行を複数回行います。VMmarkでは、アプリケーションを長時間実行する場合の安定した負荷とシミュレーションが必要でした。そのため、データベースのサイズが最大に設定されるように変更した後、長時間の実行を1回行います。
- Webサーバ
SPECweb2005は、Webページに対するクエリとアクセスにおける同時ユーザセッション数を測定します。VMmarkの場合、VMmarkベンチマークの実行中に増加と減少の時間が複数回生じるのを避けるため、ベンチマークの実行を3回の短時間の反復実行から、1回の長時間の反復実行に変更しました。
- データベースサーバ
VMmarkでは、オープンソースのデータベースベンチマーク測定ツールであるSysBenchと、基になるデータベースとしてMySQLを使用します。VMmarkの場合、16ユーザをシミュレートするようにSysBenchを設定し、データベースインスタンスを約2.5GBとします。
- ファイルサーバ
業界標準のNetBenchベンチマークから派生したdbenchを使用して、ファイルサーバがクライアントからのサービス要求に対応できる能力を測定します。単一システムのベンチマーク測定では、dbenchアプリケーションの実行時間は比較的短時間ですが、VMmarkでは、VMmarkの各実行時間中に繰り返し実行されるように変更します。
|
 |
クライアントシステムはVMmarkのテスト構成と連動して、タイル上のワークロードを制御します。各タイルでは、特定の構成規則とソフトウェアを備えたクライアントシステムが必要になります。タイルを複数実行する場合は、クライアントの1つを「主クライアント」として設定します。下の図では、システムに8個のタイルがあったため、8つのクライアントを必要としました。
|
| |

図3. HP ProLiant DL580 G5測定時のVMmarkベンチマークのネットワーク構成 |
 |
VMmarkの実行後、各ワークロードからパフォーマンス測定値が報告されます。表2は、各ワークロードから報告される測定値を示しています。
|
| |
| 表2. VMmarkのワークロードの概要 |
| ワークロード |
アプリケーション |
測定値 |
| メールサーバ |
Exchange 2003 |
アクション数/分 |
| Javaサーバ |
SPECjbb2005ベース |
新規注文数/分 |
| Webサーバ |
SPECweb2005ベース |
アクセス数/分 |
| データベースサーバ |
MySQL |
コミット数/分 |
| ファイルサーバ |
dbench |
MB/秒 |
|
 |
測定値は、3時間持続するように設計されたテスト実行の間、60秒ごとに収集されます。テスト実行が完了すると、大量の測定値が報告されます。結果は、ある時点における5個のワークロードに対するVMの実行状況を示すスナップショットであり、このスコアを基準システムのものと比較し、比率として計算します。一貫性のあるスコアを得るため、テスト時間のうち最初の30分と最後の30分についてはスコアの計算には使用せず、中間の安定状態における時間でのスコアを使用します。この中間の2時間を40分間に三等分し、各時間の中でスコアの平均を計算して、アプリケーションの3つのスコアを得ます。これら3つのスコアの中央値を、アプリケーションの最終スコアとして使用します。
各アプリケーションの最終スコアを、単一のタイルを正常に実行できる基準システムの結果と比較することによって正規化し、比率を求めます。そして、正規化したスコアの幾何平均を、タイルの最終スコアとして計算します。タイルを複数実行しているシステムでは、タイルごとのスコアの和を計算して最終的な測定値を得ます。VMmarkのすべての結果と比較する基準システムの結果は、HP ProLiant DL580 G2の単一タイルによるベンチマーク上で実行されました。このシステムから得られた一連の基準スコアを、付録の表6に示します。これらの基準スコアが今後更新のために再実行される予定はありません。更新される場合は、その時点で公開されるすべてのスコアについて、更新に基づいて再計算する必要が生じることになります。 |
 |
単一タイルのワークロード
単一タイルおよび複数タイルのテスト実行について、測定値の例を以下の表に示します。
|
| |
| 表3. SUTおよび基準システムのワークロードスコアの例、単一タイル(架空データ) |
| ワークロード |
SUTのスコア |
基準システムのスコア |
比率 |
| メールサーバ |
950アクション/分 |
1000アクション/分 |
950/1000 = .95 |
| Javaサーバ |
940新規注文/分 |
1000新規注文/分 |
940/1000 = .94 |
| Webサーバ |
1020アクセス/分 |
1000アクセス/分 |
1020/1000 = 1.02 |
| データベースサーバ |
1100コミット/分 |
1000コミット/分 |
1100/1000 = 1.10 |
| ファイルサーバ |
20MB/秒 |
10MB/秒 |
20/10 = 2.00 |
|
 |
幾何平均を使用し、正規化されたスコアを掛け合わせてタイルのスコアを得ます。
| (0.95 * 0.94 * 1.02 * 1.10 * 2.00) ^ (0.2) = 1.15 |
この実行におけるVMmarkのスコアは、1タイルあたり1.15となります。 |
 |
複数タイルのワークロード
同等のプラットフォームでは、SUTで複数のタイルを実行している場合、各タイル内のワークロードスコアは単一のタイルのみを実行しているシステムよりも低くなりますが、集計スコアは高くなります。
|
| |
| 表4. 複数タイルのベンチマークにおけるVMmarkワークロードの概要、同じ基準システムスコアとの比率(架空データ) |
| ワークロード |
SUTタイル1 |
SUTタイル2 |
SUTタイル3 |
SUTタイル4 |
| メールサーバ |
900 |
920 |
910 |
890 |
| Javaサーバ |
840 |
850 |
850 |
840 |
| Webサーバ |
1020 |
1000 |
990 |
1030 |
| データベースサーバ |
950 |
980 |
930 |
970 |
| ファイルサーバ |
8 |
7 |
8 |
8 |
| 幾何平均を使用し、正規化されたスコアを掛け合わせてタイルのスコアを得ます。 |
| ファイルサーバ |
0.90 |
0.88 |
0.89 |
0.90 |
|
 |
複数タイルのテスト対象システム(SUT)における全体のスコアは、4個のタイルの正規化スコアまたは幾何平均スコアの合計になります。
| 0.90 + 0.88 + 0.89 + 0.90 = 3.58. |
この実行におけるVMmarkのスコアは、4タイルあたり3.58となります。 |
 |
結果を理解するには、スコアの2つの数値を見る必要があります。どの結果セットの中でも、タイル数が同じ場合は、スコアの高いシステム(左側の数値)の方が優れた結果を達成したことになります。左側の数値とタイル数は常に関連性があり、タイル数が多くなるほどスコアも高くなります。2つの異なるプラットフォームで、同じプロセッサを使用して5個のタイルをテスト実行した場合、同様のスコアになります。つまり、より多くのタイルを実行できるほうが、より優れたシステムといえます。類似したプラットフォームどうしでは、VMmarkのスコアは同様になるはずです。これは、VMmarkはプロセッサのテストを目的として設計されているため、プロセッサの種類がまったく同じであれば、スコアと実行可能なタイル数の両方において、同等の結果が得られるはずだからです。たとえば、クアッドコアとデュアルコアという比較ではなく、クアッドコアどうしの比較というように、同じ種類のプロセッサを備えたシステムどうしであれば、最も意味のある比較になります。スコアの高さは常にタイル数の多さに相関しているので、パフォーマンスの評価においてはどちらの数値も重要です。タイル数が異なる場合の結果は、より多くのタイル数を実行できるプラットフォームが、他のプラットフォームよりも多くの同時ワークロードを実行できたと(つまりより望ましい結果)いう意味において比較できます。ただし、意味のある比較となるのは類似したプラットフォームどうしの比較のみです。2ソケットのクアッドコアプラットフォームどうし2つを比較することは意味がありますが、4ソケットのクアッドコアプラットフォームと2ソケットのクアッドコアプラットフォームを比較しても意味はありません。
Dell社は以前、同社の2ソケットのクアッドコアシステムPowerEdge 2950と、4ソケットのクアッドコアシステムのHP ProLiantプラットフォームを比較して、同社のシステムの方が仮想化の優位性があることをうたった文書を公開し、とりわけ価格やパフォーマンスの優位性を主張しました。しかし、HPでも同じ主張が可能であり、HPの2ソケットのクアッドコアプラットフォームは4ソケットのクアッドコアプラットフォームよりも数多くの用途において低価格になっています。2ソケットと4ソケットのどちらも選択肢として意味があり、それぞれに最適な環境があります。
HPは、どのような結果が示されても、システム構成について詳細を調べることをお勧めします。たとえば、どのような種類のRAIDが構成されているのかを調べることは重要です。HPではフォールトトレラントな構成をベストプラクティスとしてお勧めしますが、フォールトトレラントな構成では、システムリソースの一部を使い切る場合があり、その結果、データ保護機能を実装していないシステムよりもスコアが低くなることがあります。また、ベンチマークがVMware ESX Serverの出荷バージョンを使用して実行されたものかどうかを確かめることも重要です。他社ベンダーから公開されている最近の結果の中には、ベータ版のVMware ESX Serverを使用して実行されたものがあります。HP ProLiant DL580 G5およびBL680 G5は、16コアの結果について公表した業界初のサーバであり、BL680G5は現時点で、VMmarkベンチマークについて結果を示している唯一のサーバブレードです。HP ProLiant DL580 G5は、リリース版の仮想化ソフトウェアを実行するシステムの中で最高のVMmark結果を示しています。
|
| |

図4. リリース版のVMware ESX Serverを使用して得られたVMmarkの結果(2007年12月7日現在) |
 |
| 提供元/システムの説明 |
VMmarkスコア |
| 16コア |
HP ProLiant DL580 G5:4xクアッドコア インテル Xeon X7350 2.933GHz
(4ソケット/16コア/16スレッド)、2 x 4MB L2キャッシュ、64GBメモリ |
11.54 @ 8タイル |
HP ProLiant BL680 G5:4xクアッドコア インテル Xeon E7340 2.4GHz
(4ソケット/16コア/16スレッド)、2 x 4MB L2キャッシュ、64GBメモリ |
10.17 @ 7タイル |
| 8コア |
Dell PowerEdge 6950:4xデュアルコア AMD Opteron™ プロセッサ 8222SE 3.0GHz
(4ソケット/8コア/8スレッド)、チップ/コア上にL1キャッシュ64KB(I) + 64KB(D)、チップ/コア上にL2キャッシュ1MB(I+D)、64GBメモリ |
7.11 @ 5タイル |
Dell PowerEdge 2950:2xクアッドコア インテル Xeon X5365 3.0GHz
(2ソケット/8コア/8スレッド)、チップ/コア上にL1キャッシュ32KB(I) + 32KB(D)、チップ/コア上にL2キャッシュ8MB(I+D)、4MB共有メモリ/2コア、32GBメモリ |
7.03 @ 5タイル |
| 4コア |
Dell PowerEdge 2950:2xデュアルコア インテル Xeon 5160 3.0GHz
(2ソケット/4コア/4スレッド)、チップ/コア上にL1キャッシュ32KB(I) + 32KB(D)、チップ/コア上にL2キャッシュ4MB(I+D)、32GBメモリ |
3.89 @ 3タイル |
|
 |
HP ProLiant DL580サーバプラットフォームがVMmarkベンチマークの開発における基準システムとして選ばれたことは、HPとして大変名誉なことです。数十機種のProLiantサーバがVMware対応として認定されています。HPでは、VMwareによる仮想インフラストラクチャの計画、実装、および運用についてお客様を支援できる態勢にあり、広範囲のProLiantサーバ、StorageWorksストレージ、および統合されたHP管理ソフトウェアをその対象としています。簡単な概要については、『Solutions Guide』(英語)をダウンロードしてください。詳細についてはwww.hp.com/jp/vmwareを参照してください。HPでは、合計41種類のVMware ESX Server 3.0認定サーバを提供しており、この数はIBM、Dell、およびSunを上回っています。 |
 |
HP ProLiantサーバおよびサーバブレードは、HPの成功を語るうえで欠かせない製品です。HPはサーバ出荷数において世界第1位のベンダーです。業界アナリスト企業であるIDCから2007年11月29日付けで発表された数値によれば、HPにおける世界規模でのサーバユニット出荷数は、2007年の第3四半期における他のすべてのベンダーの出荷合計数の10倍にまで増加しました。 |
 |
HPがサーバ出荷数において第1位となっている理由の1つは、実証済みのパフォーマンスにあります。そうした理由をお客様に納得していただけるように、HPでは、数百台のProLiantサーバおよびブレード上で最も一般的に使用されているベンチマークについて、それらのベンチマーク結果を多数公開し続けています。 |
 |
すべてのベンチマーク結果を正規化するための基準システムは、VMwareのESX Server 3.0.1ビルド32039(パッチESX-6075798適用済み)を実行するHP ProLiant DL580 G2でした。このシステムは、ハイパースレッディングをサポートするシングルコア Intel Xeon 2.2 GHzプロセッサを2基搭載し、16 GBのメモリで構成されました。ストレージは1Gb/秒のファイバチャネルリンク経由で接続されたEMC Clariion CX500ディスクアレイにより提供され、10,000 RPMのディスク5台をRAID5構成で搭載しました。負荷生成クライアントにはHP ProLiant DL385を使用しました。このクライアントは、シングルコアAMD Opteron 2.6 GHzプロセッサ2基と4GBのメモリを搭載し、32ビット版のMicrosoft Windows Server 2003オペレーティングシステムService Pack 2を実行しました。クライアントと基準システムとは単一の1Gigabitイーサネットリンクを通じて接続しました。
基準システムの実際のスコアを表6に示します。
|
| |
| 表6. 基準システムのワークロードスコア |
| ワークロード |
スコア |
| メールサーバ |
1096.80アクション/分 |
| Javaサーバ |
16,613.58新規注文/分 |
| Webサーバ |
1018.95アクセス/分 |
| データベースサーバ |
1,492.38コミット/分 |
| ファイルサーバ |
12.83MB/秒 |
| スタンバイサーバ |
N/A |
|
 |
| |
競合他社のプラットフォームについては同じ世代の数値を使用しました。最新の一覧については、www.hp.com/jp/vmwareおよびhttp://www.vmware.com/pdf/vi3_systems_guide.pdf (英語)を参照してください。VMwareのシステムガイドの最新の更新日は2007年10月29日です。情報は2007年11月2日現在有効のものです。 |
| |
IDC、「Q307 Worldwide Quarterly Server Tracker」、2007年11月 |
 |
© 2007 Hewlett-Packard Development Company, L.P. 本文書に記載の事項は、予告なく変更されることがあります。HP製品およびサービスの保証は、各製品およびサービスに添付された保証書に記載の明示保証のみとなります。追加保証に違反すると解釈される事項は、本文書に一切記載されていません。HPは、本文書に記載の技術上、編集上の過失または不作為に対し、法的責任はありません。
VMmarkとその使用に関する規則の詳細については、http://www.vmware.com/jp/products/vmmark を参照してください。VMwareおよびVMmarkはVMware, Inc.の商標または登録商標です。VMware® VMmark™ はVMware (EMC Company)の製品です。VMmarkではSPECjbb® 2005およびSPECweb® 2005が利用されています。これらはStandard Performance Evaluation Corporation (SPEC®)から入手できます。
本文書に示した競合他社製品のベンチマーク結果は、表記の日付現在、 www.vmware.com (英語)に公開されているものです。
2007年12月
|
|