(57)【要約】性能評価装置は、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複数の複合ワークロードを評価対象コンピュータ上に順次発生させるワークロード制御手段と、各ワークロード発生中の１次性能データ、及び、複合ワークロード発生中の複合性能データを取得するデータ取得手段と、取得された１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、複合性能データ及び１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、を備える。
2012093469.tif 000002
【特許請求の範囲】
【請求項１】
複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し該複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを該評価対象コンピュータ上に順次発生させるワークロード制御手段と、
前記各ワークロード発生中の前記評価対象コンピュータの１次性能データ、及び、前記複合ワークロード発生中の前記評価対象コンピュータの複合性能データを取得するデータ取得手段と、
前記データ取得手段により取得された前記１次性能データをモデル化することにより、前記各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、
前記データ取得手段により取得された前記複合性能データ及び前記データ解析手段により生成された前記１次性能モデルに基づいて、前記複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、
を備えることを特徴とする性能評価装置。
【請求項２】
前記ワークロード制御手段は、前記複合ワークロード種に関し発生させる複合ワークロードの数を、前記複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数に設定する、
ことを特徴とする請求項１に記載の性能評価装置。
【請求項３】
前記モデル生成手段は、
前記データ解析手段により生成された前記１次性能モデルの少なくとも１つを用いて、前記複合ワークロード種に対する近似複合性能モデルを推定するモデル推定手段、
を含み、
前記データ解析手段は、前記データ取得手段により取得された前記複合性能データと、前記モデル推定手段により推定された前記近似複合性能モデルから得られる近似複合性能データとの差分データをモデル化することにより、前記複合ワークロード種に対する差分データモデルを生成し、
前記モデル生成手段は、前記モデル推定手段により推定された前記近似複合性能モデル及び前記データ解析手段により生成された前記差分データモデルを用いて、前記複合ワークロード種に対する複合性能モデルを生成する、
ことを特徴とする請求項１又は２に記載の性能評価装置。
【請求項４】
前記モデル推定手段は、前記モデル生成手段により生成された、（Ｋ−１）個（Ｋは３以上の整数）の異なるワークロード種を組み合わせた（Ｋ−１）次の複合ワークロード種に対する（Ｋ−１）次性能モデルを用いて、Ｋ個の異なるワークロード種を組み合わせたＫ次の複合ワークロード種に対する近似複合性能モデルを推定する、
ことを特徴とする請求項３に記載の性能評価装置。
【請求項５】
前記ワークロード制御手段は、前記各単一ワークロード種の全てに関しそれぞれ全てのワークロードを発生させた後、組み合わされるワークロード種の数が少ない複合ワークロード種から順に前記複合ワークロードを発生させることを特徴とする請求項１から４のいずれか１項に記載の性能評価装置。
【請求項６】
コンピュータが、
複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、
前記各ワークロード発生中の前記評価対象コンピュータの１次性能データを取得し、
少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し該複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを該評価対象コンピュータ上に順次発生させ、
前記複合ワークロード発生中の前記評価対象コンピュータの複合性能データを取得し、
取得された前記１次性能データをモデル化することにより、前記各単一ワークロード種に対する１次性能モデルをそれぞれ生成し、
取得された前記複合性能データ及び生成された前記１次性能モデルに基づいて、前記複合ワークロード種に対する複合性能モデルを生成する、
ことを含む性能評価方法。
【請求項７】
コンピュータに、
複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し該複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを該評価対象コンピュータ上に順次発生させるワークロード制御手段と、
前記各ワークロード発生中の前記評価対象コンピュータの１次性能データ、及び、前記複合ワークロード発生中の前記評価対象コンピュータの複合性能データを取得するデータ取得手段と、
前記データ取得手段により取得された前記１次性能データをモデル化することにより、前記各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、
前記データ取得手段により取得された前記複合性能データ及び前記データ解析手段により生成された前記１次性能モデルに基づいて、前記複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、
を実現させることを特徴とする性能評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータの性能評価技術に関する。
【背景技術】
【０００２】
近年、仮想化技術の進歩、普及により、サービスを提供するサーバを仮想マシンとして実現する形態が増加している。これに伴い、仮想マシンを実現するサーバコンピュータ等を運用するデータセンタにおける消費電力も年々増加しており、消費電力の削減が急務になっている。【０００３】
仮想化環境においては、別々のハードウェア（コンピュータ）上で実行されていた仮想マシンを同一のハードウェア上で動作させることで、リソースの効率的な使用が可能である。しかしながら、現状、仮想マシンに対するサービスレベルを維持するために、同一ハードウェア上で実行する仮想マシンの数を過度に制限しているため、本来使えるリソースを十分活用できていない。【０００４】
サービスレベルを維持しつつ、少ない数のハードウェアに仮想マシンを集約するためには、ハードウェアのキャパシティと仮想マシンの必要キャパシティとを正確に見積もることが重要である。この見積もりの精度が低い場合、必要となるハードウェアの数が増加することになる。サービスレベルを維持するために、仮想マシンの必要キャパシティを大きく見積もらざるを得ず、同一ハードウェア上で実行させる仮想マシンの数が少なく設定されるからである。【０００５】
下記特許文献１には、異なる複数の測定条件での情報処理システムの性能試験を自動的に連続して実行できるようにする技術が提案されている。具体的には、測定条件の互いに異なる項目の設定値を任意に組み合わせて生成した性能試験データに基づいて、情報処理システムの性能試験を実行することが提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３９８７３３３号
【発明の概要】
【０００７】
しかしながら、上述のような手法では、計測対象の項目毎（例えば、コンピュータ資源毎）に性能試験が行われるに過ぎず、複数の項目を組み合わせた性能試験が考慮されていない。実際、仮想化環境のみでなく他の環境下においても、コンピュータ（システム）上で１つのコンピュータ資源を利用した１つの処理のみが実行されることは少なく、複数の処理が並列して実行されることが多い。
【０００８】
よって、上述の手法で得られた性能データは、実運用を考慮した場合、精度が低い可能性がある。
【０００９】
特に、仮想化環境では、システムや仮想マシンに対するコンフィグレーションを柔軟に変更でき、様々な性質を持った複数の仮想マシンが同一ハードウェア上で共存するため、コンピュータのキャパシティ（性能）の見積もりが非常に難しい。
【００１０】
本発明の目的は、コンピュータの性能を高精度に評価する技術を提供することにある。
【００１１】
本発明の各態様では、上述した課題を解決するために、それぞれ以下の構成を採用する。
【００１２】
第１の態様は、評価対象コンピュータの性能を評価する性能評価装置に関する。第１の態様に係る性能評価装置は、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを評価対象コンピュータ上に順次発生させるワークロード制御手段と、各ワークロード発生中の評価対象コンピュータの１次性能データ、及び、複合ワークロード発生中の評価対象コンピュータの複合性能データを取得するデータ取得手段と、データ取得手段により取得された１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、データ取得手段により取得された複合性能データ及びデータ解析手段により生成された１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、を備える。
【００１３】
第２の態様は、コンピュータにより実行される、評価対象コンピュータの性能を評価する性能評価方法に関する。第２の態様に係る性能評価方法は、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、各ワークロード発生中の評価対象コンピュータの１次性能データを取得し、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを評価対象コンピュータ上に順次発生させ、複合ワークロード発生中の評価対象コンピュータの複合性能データを取得し、取得された前記１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成し、取得された複合性能データ及び生成された１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成することを含む。
【００１４】
第３の態様は、上記第２の態様に含まれる各構成をコンピュータに実現させる性能評価プログラムである。なお、別態様としては、第３の態様に係る性能評価プログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。この記録媒体は、非一時的な有形の媒体を含む。
【００１５】
上記各態様によれば、コンピュータの性能を高精度に評価する技術を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、第１実施形態における性能評価システムの構成例を概念的に示す図である。
【図２】図２は、第１実施形態における性能評価装置及びサーバ装置の処理構成例を概念的に示す図である。
【図３】図３は、第２実施形態における性能評価装置及びサーバ装置の処理構成例を概念的に示す図である。
【図４】図４は、ＣＰＵに関する単一ワークロード種のワークロード計画ファイルの例を示す図である。
【図５】図５は、ネットワーク送信に関する単一ワークロード種のワークロード計画ファイルの例を示す図である。
【図６】図６は、２次複合ワークロード種のワークロード計画ファイルの例を示す図である。
【図７】図７は、第２実施形態における性能評価システムの動作例を示すフローチャートである。
【図８】図８は、第３実施形態におけるサーバ装置の処理構成例を概念的に示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態における性能評価システムについて図面を用いて説明する。以下に挙げた各実施形態はそれぞれ例示であり、本発明は以下の各実施形態の構成に限定されない。
【００１８】
［第１実施形態］
図１は、第１実施形態における性能評価システムの構成例を概念的に示す図である。第１実施形態における性能評価システム１は、図１に示すように、性能評価装置１０と、性能評価の対象となるサーバ装置２０とを有する。
【００１９】
性能評価システム１では、性能評価装置１０がサーバ装置２０の所定のコンピュータ資源に関する性能を評価する。性能評価装置１０は、性能モデルを生成することにより、所定のコンピュータ資源に関する性能を評価する。
【００２０】
性能評価装置１０は、ハードウェア構成として、ＲＡＭ（Random Access Memory）１２、ＲＯＭ（Read Only Memory、図示せず）、ハードディスク（ＨＤＤ）１３等のようなメモリ、ＣＰＵ（Central Processing Unit）１１、入出力インタフェース１４等を有する。これら各ハードウェア要素は例えばバス１５により接続される。入出力インタフェース１４は、性能評価装置１０及びサーバ装置２０の間で所定通信方式の通信を可能とするネットワークインタフェースを含む。
【００２１】
サーバ装置２０のハードウェア構成も性能評価装置１０と同様である。本実施形態は、性能評価装置１０及びサーバ装置２０のハードウェア構成を限定しない。また、本実施形態は、性能評価の対象となるコンピュータをサーバ装置に限定するものではなく、コンピュータであればよい。性能評価装置１０及びサーバ装置２０は、例えば、メモリに格納されるプログラムがＣＰＵ１１により実行されることにより、図２に示す各処理部をそれぞれ実現する。
【００２２】
図２は、第１実施形態における性能評価装置１０及びサーバ装置２０の処理構成例を概念的に示す図である。性能評価装置１０は、図２に示すように、ワークロード制御部１０１、データ取得部１０２、データ解析部１０３、モデル生成部１０４等を有する。
【００２３】
ワークロード制御部１０１は、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し該複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを該評価対象コンピュータ上に順次発生させる。
【００２４】
ここで、ワークロードとは、或るコンピュータ資源を利用する処理負荷を意味し、例えば、ＣＰＵ負荷、ネットワーク送信負荷、ネットワーク受信負荷、ハードディスク読込み負荷、ハードディスク書込み負荷、画像処理負荷等である。また、単一ワークロード種とは、処理負荷（ワークロード）の種類を意味する。
【００２５】
例えば、ＣＰＵに関するワークロードとして浮動小数点演算が利用される場合には、この浮動小数点演算というタイプが単一ワークロード種に該当する。また、グラフィックに関するワークロードとしてテスト画像の表示処理が利用される場合には、そのテスト画像の表示処理というタイプが単一ワークロード種に該当する。この例によれば、浮動小数点演算を示す単一ワークロード種に関しては、演算量又は演算負荷の異なる複数の浮動小数点演算が用意され、これら各浮動小数点演算が各ワークロードに該当する。
【００２６】
複合ワークロード種については、評価対象となるサーバ装置２０上で並列に実行される２つの異なる単一ワークロードのワークロード種を組み合わせた種類を意味する。例えば、浮動小数点演算とネットワーク送信処理との２つの異なる単一ワークロード種の組み合わせが、１つの複合ワークロード種に該当する。この例によれば、浮動小数点演算とネットワーク送信処理とからなる複合ワークロード種に関しては、或る演算量を持つ浮動小数点演算と或る送信量を持つネットワーク送信処理との組み合わせが各複合ワークロードに該当する。
【００２７】
データ取得部１０２は、各ワークロード発生中のサーバ装置２０の１次性能データ、及び、複合ワークロード発生中のサーバ装置２０の複合性能データを取得する。ここで、１次性能データとは、所定のコンピュータ資源の稼働状況を示すデータを意味し、例えば、ＣＰＵ使用率、ＣＰＵ使用量、ネットワーク送信量、ネットワーク受信量、ハードディスク読込み量、ハードディスク書込み量等のいずれか１つ又はいずれか複数の組み合わせである。
【００２８】
データ解析部１０３は、データ取得部１０２により取得された１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成する。このモデル化には、例えば、周知の統計解析手法等が利用される。本実施形態は、このモデル化手法を限定しない。
【００２９】
モデル生成部１０４は、データ取得部１０２により取得された複合性能データ及びデータ解析部１０３により生成された各１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成する。この複合性能モデルは、その複合ワークロード種に対応する少なくとも２つのワークロードの組み合わせが実行された際のサーバ装置２０の性能データの特性を示す。
【００３０】
サーバ装置２０は、ワークロード生成部２０１、データ計測部２０２等を有する。
【００３１】
ワークロード生成部２０１は、性能評価装置１０のワークロード制御部１０１の制御により、各ワークロード及び複合ワークロードをそれぞれ異なるタイミングで実行する。複合ワークロードの実行では、その複合ワークロードを構成する各ワークロードが並列に実行される。
【００３２】
ワークロード生成部２０１は、サーバ装置２０に予め保持される、各ワークロードに対応するプログラム（タスク、プロセス等）を実行するようにしてもよい。また、単一ワークロード種毎にそれぞれ当該プログラムが保持され、ワークロード生成部２０１が、ワークロード制御部１０１から送られるパラメータを当該プログラムに適用して実行するようにしてもよい。
【００３３】
データ計測部２０２は、各ワークロード発生中の各１次性能データ、及び、複合ワークロード発生中の複合性能データを計測する。計測された１次性能データ及び複合性能データは、性能評価装置１０へ送られる。
【００３４】
〔第１実施形態の作用及び効果〕
第１実施形態では、性能評価装置１０の制御に応じて、サーバ装置２０において、各ワークロードが実行され、各ワークロード発生中のサーバ装置２０の１次性能データがそれぞれ計測され、計測された各１次性能データがそれぞれ性能評価装置１０に送られる。同様に、複合ワークロードが実行された場合には、その複合ワークロード発生中のサーバ装置２０の複合性能データが計測され、その複合性能データが性能評価装置１０に送られる。
【００３５】
性能評価装置１０では、各１次性能データをモデル化することにより、各単一ワークロード種に対する各１次性能モデルがそれぞれ生成され、生成された各１次性能モデル及び複合性能データに基づいて、複合ワークロード種に対する複合性能モデルが生成される。
【００３６】
このように、第１実施形態によれば、複数の処理負荷が並列して発生している状況下の性能モデル（複合性能モデル）を生成することができる。よって、第１実施形態によれば、サーバ装置２０の実際の運用下の性能を正確に評価することができる。
【００３７】
［第２実施形態］
第２実施形態における性能評価システム１は、図１に示す上述の第１形態と同様の構成を有する。以下、第２実施形態における性能評価システム１について第１実施形態と異なる内容を中心に説明する。
【００３８】
図３は、第２実施形態における性能評価装置１０及びサーバ装置２０の処理構成例を概念的に示す図である。なお、サーバ装置２０は、第１実施形態と同様であるため、サーバ装置２０の説明はここでは省略する。
【００３９】
第２実施形態における性能評価装置１０は、第１実施形態の構成に加えて、更に、モデル推定部１０５、性能データ格納部１０６、性能モデル格納部１０７を有する。これら新たな各処理部についても、例えば、メモリに格納されるプログラムがＣＰＵ１１により実行されることで実現される。新たな各処理部以外の処理部についても、第１実施形態と異なる内容を中心に以下に説明する。
【００４０】
ワークロード制御部１０１は、ワークロード及び複合ワークロードを発生させるにあたり、発生させるワークロードについての情報を取得する。この情報は、例えば、図４、図５及び図６に示されるようなワークロード計画ファイルから取得される。これらワークロード計画ファイルは、性能評価装置１０に格納されていてもよいし、他の装置から取得されてもよい。各ワークロード計画ファイルには、単一ワークロード種のワークロードをサーバ装置２０上で発生させるために必要な情報がそれぞれ格納される。
【００４１】
図４は、ＣＰＵに関する単一ワークロード種のワークロード計画ファイルの例を示す図である。図５は、ネットワーク送信に関する単一ワークロード種のワークロード計画ファイルの例を示す図である。図４及び図５に示すように、例えば、単一ワークロード種のワークロード計画ファイルには、単一ワークロード種を識別する情報、分割数、発生時間、ワークロード上限値（Ｗ＿Ｔｈｒｅｓ＿ＣＰＵ、Ｗ＿Ｔｈｒｅｓ＿ＮＷＳＥＮＤ）、通信先アドレス等が格納される。
【００４２】
ワークロード上限値は、単一ワークロード種に対応するコンピュータ資源の性能が最大となる最小のワークロード値である。例えば、ＣＰＵに関する単一ワークロード種のワークロード上限値は、ＣＰＵ使用率が最大（例えば１００％）になる最小のワークロード値である。ネットワーク送信に関する単一ワークロード種のワークロード上限値は、例えば、ビットレートが最大となる最小のワークロード値である。
【００４３】
ここで、ワークロード値は、そのワークロードの大きさを示す。例えば、ワークロードが浮動小数点演算であれば、そのワークロード値は、単位時間あたりの浮動小数点演算回数に設定されてもよい。また、ワークロードがネットワーク送信処理であれば、そのワークロード値は、単位時間あたりの送信データ量に設定されてもよい。
【００４４】
ワークロード制御部１０１は、図４及び図５に示されるワークロード計画ファイルを参照した場合、例えば、以下の（式１）及び（式２）で示される各ワークロード値（Ｖ＿ＣＰＵ（ｉ）、Ｖ＿ＮＷＳＥＮＤ（ｋ））を持つ各ワークロードをサーバ装置２０上に発生させる。
【００４５】
Ｄは分割数を示し、ｉ及びｋは、０以上かつ分割数以下の整数である。
Ｖ＿ＣＰＵ（ｉ）＝ｉ×（Ｗ＿Ｔｈｒｅｓ＿ＣＰＵ／Ｄ）    （式１）
Ｖ＿ＮＷＳＥＮＤ（ｋ）＝ｋ×（Ｗ＿Ｔｈｒｅｓ＿ＮＷＳＥＮＤ／Ｄ）    （式２）
【００４６】
図４及び図５の例によれば、ワークロード制御部１０１は、ＣＰＵに関する単一ワークロード種に関しそれぞれ異なるワークロード値を持つ２１（０≦ｉ≦２０）個のワークロードを６０秒間ずつサーバ装置２０上に発生させる。その後、ワークロード制御部１０１は、ネットワーク送信に関する単一ワークロード種に関しそれぞれ異なるワークロード値を持つ２１（０≦ｋ≦２０）個のワークロードを６０秒間ずつサーバ装置２０上に発生させる。
【００４７】
ワークロード制御部１０１は、単一ワークロード種を識別する情報、分割数、発生時間、ワークロード上限値を含むワークロード実行指示をサーバ装置２０に送ることにより、所望のワークロードを発生させてもよい。また、図４及び図５の例では、各ワークロード値は、ワークロード上限値を所定の分割数で分割することで得られたが、予め所望の数のワークロード値が設定されるようにしてもよい。
【００４８】
ワークロード制御部１０１は、サーバ装置２０上に発生させるワークロードに対応するプログラムを他のコンピュータ上で実行する必要がある場合には、そのプログラムを実行するように他のコンピュータへ指示する。例えば、ネットワーク受信に関するワークロードをサーバ装置２０上に発生させる場合、他のコンピュータ上でサーバ装置２０へデータ送信を行うプログラムが必要となる。このような場合、ワークロード制御部１０１は、ネットワーク受信に関するワークロードをサーバ装置２０上に発生させる前又は同時に、他のコンピュータ上でデータ送信プログラムが実行されるように制御する。
【００４９】
ワークロード制御部１０１は、サーバ装置２０のデータ計測部２０２に計測の開始を指示するようにしてもよい。この場合には、ワークロード制御部１０１は、ワークロード生成部２０１がワークロード又は複合ワークロードを実行させる前又は同時に、所定の性能データの計測の開始をデータ計測部２０２に指示する。
【００５０】
図６は、２次複合ワークロード種のワークロード計画ファイルの例を示す図である。以降、構成する単一ワークロード種の数（Ｋ）に応じてその複合ワークロード種をＫ次複合ワークロード種と表記する。同様に、Ｋ個のワークロードが組み合わされた複合ワークロードはＫ次複合ワークロードと表記する。
【００５１】
図６に示されるファイルには、ＣＰＵに関する単一ワークロード種とネットワーク送信に関する単一ワークロード種とを組み合わせた２次複合ワークロード種のワークロード計画が設定されている。複合ワークロード種のワークロード計画ファイルには、複合ワークロード種を識別する情報、分割数、発生時間、通信先アドレス、それを構成する各単一ワークロード種のワークロード上限値が格納される。
【００５２】
ワークロード制御部１０１は、複合ワークロード種に関し発生させる複合ワークロードの数を、その複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数に設定する。
【００５３】
図４、図５及び図６の例では、ＣＰＵ及びネットワーク送信の各単一ワークロード種に関しそれぞれ発生させるワークロードの数が２１個であるため、それらのワークロードの全組み合わせ数は、４４１（＝２１×２１）個である。ところが、複合ワークロード種に関して発生させる複合ワークロードの数は、ＣＰＵに関し発生させる１１個のワークロードと、ネットワーク送信に関し発生させる１１個のワークロードとの全組み合わせ（１２１＝１１×１１）から、単一ワークロードの数（２２）を引いた数となる。ここで減算された数（２２）は、上記（式１）及び（式２）におけるｉが０又はｋが０となる組み合わせであり、これらは単一ワークロードであり複合ワークロードではない。
【００５４】
ワークロード制御部１０１は、各単一ワークロード種に関する各ワークロードをそれぞれ発生させた後、組み合わされるワークロード種の数が少ない複合ワークロード種から順に複合ワークロードをサーバ装置２０上に発生させる。図６の例によれば、２次複合ワークロードとして、ワークロード制御部１０１は、上記（式１）及び（式２）に分割数Ｄ（＝１０）を適用して得られるＶ＿ＣＰＵ（ｉ）及びＶ＿ＮＷＳＥＮＤ（ｋ）を示す各ワークロードを並列にサーバ装置２０上に発生させる。このとき、既に実行されている１つのワークロード（ｉが０又はｋが０の組み合わせ）は除かれる。
【００５５】
なお、複合ワークロード種に関し発生させる複合ワークロードの数は、その複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数であれば、特に限定されない。複合ワークロードの数を減らすことにより、本実施形態は、計測回数を減らし、計測時間を減らすことができる。
【００５６】
データ取得部１０２は、評価対象とされる性能の種類に応じた性能データを取得するようにしてもよい。例えば、最終的にＣＰＵ性能の評価が望まれる場合には、データ取得部１０２は、ＣＰＵ性能を示す性能データを取得するようにしてもよい。また、最終的にネットワーク送信性能の評価が望まれる場合には、データ取得部１０２は、ネットワーク送信性能を示す性能データを取得するようにしてもよい。
【００５７】
性能データ格納部１０６は、データ取得部１０２により取得された各性能データをそれぞれ格納する。性能モデル格納部１０７は、データ解析部１０３により生成された１次性能モデル、モデル生成部１０４により生成されたＫ（Ｋは２以上）次の性能モデル、モデル推定部１０５により推定される近似複合性能モデル等を格納する。
【００５８】
性能データ格納部１０６及び性能モデル格納部１０７に格納される各データは適宜抽出され、各処理部で利用される。以降の説明では、自明であることから、性能データ格納部１０６及び性能モデル格納部１０７に格納される各データを利用する各処理部の説明において、性能データ格納部１０６及び性能モデル格納部１０７から抽出することを特に明記しない。
【００５９】
モデル推定部１０５は、データ解析部１０３により生成された１次性能モデルのうち、２次複合ワークロード種を構成する各単一ワークロード種に対応する各１次性能モデルを用いて、その２次複合ワークロード種に対する近似複合性能モデルを推定する。モデル推定部１０５は、例えば、各１次性能モデルを足し合わせることにより、当該近似複合性能モデルを推定する。
【００６０】
例えば、ＣＰＵ性能の評価のための２次複合ワークロード種に対する近似複合性能モデルＭ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ〜（）は、以下の式で表すことができる。
Ｍ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ〜（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ）
＝Ｋ（Ｍ１ＣＰＵ＿ＣＰＵ（ＷＬ＿ＣＰＵ）＋Ｍ１ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＮＷＳＥＮＤ））
【００６１】
ＷＬ＿ＣＰＵは、ＣＰＵワークロードのワークロード値を示す変数であり、ＷＬ＿ＮＷＳＥＮＤは、ネットワーク送信ワークロードのワークロード値を示す変数である。Ｍ１ＣＰＵ＿ＣＰＵ（ＷＬ＿ＣＰＵ）は、ＣＰＵの単一ワークロード種に対するＣＰＵ性能モデルである。Ｍ１ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＮＷＳＥＮＤ）は、ネットワーク送信の単一ワークロード種に対するＣＰＵ性能モデルである。Ｋは、引数の値がＣＰＵ性能の最大値を超える場合にはＣＰＵ性能の最大値を返す関数を示す。
【００６２】
なお、ここで推定される近似複合性能モデルは、１次性能モデルを足し合わせたものであるため、２つの種類のワークロードを同時に発生させたことによる競合要素が考慮されていない。よって、近似複合性能モデルと実際の複合性能モデルとの間には誤差が存在する。
【００６３】
モデル推定部１０５は、Ｋ（Ｋは３以上の整数）個の単一ワークロード種が利用される場合に、モデル生成部１０４により生成された、（Ｋ−１）個の異なるワークロード種を組み合わせた（Ｋ−１）次の複合ワークロード種に対する（Ｋ−１）次性能モデルを用いて、Ｋ個の異なるワークロード種を組み合わせたＫ次の複合ワークロード種に対する近似複合性能モデルを推定する。モデル推定部１０５は、例えば、各（Ｋ−１）次性能モデルを足し合わせることにより、当該Ｋ次複合ワークロード種に対する近似複合性能モデルを生成する。
【００６４】
更に、例えば、ＣＰＵ性能の評価のための３次複合ワークロード種に対する近似複合性能モデルＭ３ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ＿ＨＤＤＷＴ〜（）は、以下の式で表すことができる。
Ｍ３ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ＿ＨＤＤＷＴ〜（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ、ＷＬ＿ＨＤＤＷＴ）
＝Ｋ（Ｍ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＣＰＵ／２、ＷＬ＿ＮＷＳＥＮＤ／２）＋Ｍ２ＣＰＵ＿ＣＰＵ＿ＨＤＤＷＴ（ＷＬ＿ＣＰＵ／２、ＷＬ＿ＨＤＤＷＴ／２）＋Ｍ２ＣＰＵ＿ＮＷＳＥＮＤ＿ＨＤＤＷＴ（ＷＬ＿ＮＷＳＥＮＤ／２、ＷＬ＿ＨＤＤＷＴ／２））
【００６５】
Ｍ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ（）は、ＣＰＵの単一ワークロード種とネットワーク送信の単一ワークロード種との組み合わせに係る２次複合ワークロード種に対する２次性能モデルを示す。Ｍ２ＣＰＵ＿ＣＰＵ＿ＨＤＤＷＴ（）は、ＣＰＵの単一ワークロード種とハードディスク書き込みの単一ワークロード種との組み合わせに係る２次複合ワークロード種に対する２次性能モデルを示す。Ｍ２ＣＰＵ＿ＮＷＳＥＮＤ＿ＨＤＤＷＴ（）は、ネットワーク送信の単一ワークロード種とハードディスク書き込みの単一ワークロード種との組み合わせに係る２次複合ワークロード種に対する２次性能モデルを示す。Ｋは、引数の値がＣＰＵ性能の最大値を超える場合にはＣＰＵ性能の最大値を返す関数を示す。
【００６６】
なお、上記Ｍ３ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ＿ＨＤＤＷＴ〜（）における、各２次複合ワークロード種に対する２次性能モデルの変数（各ワークロード値）がそれぞれ２で除算されているのは、重複している性能要素を減じるためである。Ｍ次の複合ワークロード種に対する近似複合性能モデルの場合には、各変数（各ワークロード値）は、（Ｍ−１）で除算される。
【００６７】
データ解析部１０３は、データ取得部１０２により取得された複合性能データと、モデル推定部１０５により推定された近似複合性能モデルから得られる近似複合性能データとの差分データをモデル化することにより、複合ワークロード種に対する差分データモデルを生成する。ここで生成される差分データモデルが、近似複合性能モデルと実際の複合性能モデルとの間の誤差に相当する。
【００６８】
モデル生成部１０４は、モデル推定部１０５により推定された近似複合性能モデル及びデータ解析部１０３により生成された差分データモデルを用いて、複合ワークロード種に対する複合性能モデルを生成する。モデル生成部１０４は、例えば、近似複合性能モデル及び差分データモデルを足し合わせることにより、複合ワークロード種に対する複合性能モデルを生成する。
【００６９】
例えば、ＣＰＵ性能の評価のための２次の複合ワークロード種に対する複合性能モデルＭ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ（）は、以下の式で表すことができる。ここでは、ＣＰＵの単一ワークロード種とネットワーク送信の単一ワークロード種とを組み合わせた２次複合ワークロード種を例に挙げる。
Ｍ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ）
＝Ｍ２ＣＰＵ＿ＣＰＵ＿ＮＷＳＥＮＤ〜（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ）＋Ｍ２ＣＰＵ＿ＤＩＦＦ＿ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ）
【００７０】
上記式におけるＭ２ＣＰＵ＿ＤＩＦＦ＿ＣＰＵ＿ＮＷＳＥＮＤ（ＷＬ＿ＣＰＵ、ＷＬ＿ＮＷＳＥＮＤ）は、データ解析部１０３により生成される、ＣＰＵの単一ワークロード種とネットワーク送信の単一ワークロード種とを組み合わせた２次複合ワークロード種に対する差分データモデルを示す。
【００７１】
〔動作例〕
図７は、第２実施形態における性能評価システム１の動作例を示すフローチャートである。以下の説明では、サーバ装置２０のＣＰＵ性能を評価対象とする場合の動作を例に挙げる。この評価対象とすべきサーバ装置２０のコンピュータ資源については、予め性能評価装置１０に設定されていてもよいし、ユーザにより入力されるようにしてもよい。以下の動作例は、ＣＰＵ性能を評価対象とする場合のみならず、他のコンピュータ資源に関する性能、即ち、ネットワーク性能、ハードディスクアクセス性能、グラフィック性能等を評価対象とする場合にも適用可能である。
【００７２】
性能評価装置１０では、ワークロード制御部１０１が、性能モデルを生成するにあたり、利用すべき単一ワークロード種に関する情報を取得する。例えば、ワークロード制御部１０１は、ワークロード計画ファイルからその情報を取得する。なお、ＣＰＵ、ネットワーク送信及びハードディスク書き込みに関する３つの単一ワークロード種が利用される場合には、ワークロード制御部１０１は、利用すべき単一ワークロード種の数Ｍに３を設定し、変数Ｋを１に設定する（Ｓ１、Ｓ２）。
【００７３】
ワークロード制御部１０１は、Ｍ個の単一ワークロード種のうちの１つの単一ワークロード種を選択し、この選択された単一ワークロード種に関しワークロード計画情報を取得する（Ｓ３）。例えば、図４及び図５に示されるようなワークロード計画ファイルから当該ワークロード計画情報が取得される。
【００７４】
ワークロード制御部１０１は、上記取得されたワークロード計画情報に基づいて、当該選択された単一ワークロード種に関する複数のワークロードの発生をサーバ装置２０に指示する。この指示には、上記ワークロード計画情報が含まれるようにしてもよい。
【００７５】
サーバ装置２０では、ワークロード生成部２０１がその指示を受け、その指示に応じたワークロードを実行する（Ｓ４）。図４の例によれば、ワークロード値（Ｖ＿ＣＰＵ（０））のＣＰＵワークロードが６０秒間実行され、その後、ワークロード値（Ｖ＿ＣＰＵ（１））のＣＰＵワークロードが６０秒間実行される。図４の例によれば、このように、２１個の各ワークロード値に対応する各ワークロードが６０秒間ずつ順次実行される。
【００７６】
このとき、サーバ装置２０では、データ計測部２０２がサーバ装置２０のＣＰＵ性能を示す性能データ（１次性能データ）を計測している。ここでは、例えば、ＣＰＵ使用率が１次性能データとして計測される。データ計測部２０２は、計測された１次性能データを性能評価装置１０に送る。
【００７７】
性能評価装置１０では、データ取得部１０２がサーバ装置２０のデータ計測部２０２から送られる１次性能データを取得する。ここで取得される１次性能データは、上記選択された単一ワークロード種に関する各ワークロード発生中の性能を示す。
【００７８】
続いて、データ解析部１０３は、データ取得部１０２により取得された各１次性能データをモデル化することにより、上記選択された単一ワークロード種に対する１次性能モデルを生成する（Ｓ５；ＹＥＳ、Ｓ６）。このモデル化には、例えば、多項式回帰手法が利用される。この場合に生成される１次性能モデルは、性能を示す値（目的変数）とそれに影響を与えたワークロード値（説明変数）とで表す多項式、即ち、多項式回帰モデルとなる。
【００７９】
ワークロード制御部１０１は、或る単一ワークロード種に対する１次性能モデルの生成が完了したが、全ての単一ワークロード種の処理が完了していないため（Ｓ９；ＮＯ）、２つ目の単一ワークロード種を選択し、この選択された単一ワークロード種に関しワークロード計画情報を取得する（Ｓ３）。
【００８０】
以降、Ｍ個の単一ワークロード種に対するＭ個の１次性能モデルが生成されるまで（Ｓ９；ＹＥＳ）、上述と同様に、各単一ワークロード種に対する１次性能モデルの生成処理がそれぞれ実行される（Ｓ３、Ｓ４、Ｓ５；ＹＥＳ、Ｓ６）。
【００８１】
全ての単一（Ｋ＝１）ワークロード種に対する１次性能モデルの生成処理が完了すると（Ｓ９；ＹＥＳ、Ｓ１０；ＮＯ）、モデル推定部１０５は、生成されたＭ個の１次性能モデルの中のいずれか２個の各組み合わせをそれぞれ足し合わせることにより、２次の近似複合性能モデルを推定する（Ｓ１１）。ここで推定される（Ｋ＋１）次の近似複合性能モデルの数は、ＭＣ（Ｋ＋１）で示される。このＣは、コンビネーションを示す。３つの単一ワークロード種が利用される場合には、３つの２次近似複合性能モデルが生成される（Ｍ＝３かつＫ＝１）。
【００８２】
例えば、ＣＰＵ、ネットワーク送信及びハードディスク書き込みに関する３つの単一ワークロード種が利用される場合には、ＣＰＵに関する１次性能モデルとネットワーク送信に関する１次性能モデルとが足しあわされた２次の近似複合性能モデルと、ＣＰＵに関する１次性能モデルとハードディスク書き込みに関する１次性能モデルとが足しあわされた２次の近似複合性能モデルと、ネットワーク送信に関する１次性能モデルとハードディスク書き込みに関する１次性能モデルとが足しあわされた２次の近似複合性能モデルと、が推定される。
【００８３】
モデル推定部１０５により２次の近似複合性能モデルが構築されると、変数Ｋに１が加算される（Ｓ１２）。続いて、ワークロード制御部１０１は、２次の複合ワークロード種に関するワークロード計画情報を取得する（Ｓ３）。例えば、図６のようなワークロード計画ファイルから当該ワークロード計画情報が取得される。
【００８４】
ワークロード制御部１０１は、取得された計画情報に応じて、２次の複合ワークロードの発生をサーバ装置２０に指示する。サーバ装置２０では、ワークロード生成部２０１がその指示に応じて２次の複合ワークロードを実行する（Ｓ４）。即ち、ワークロード生成部２０１は、指示で示される複合ワークロード種に対応する２つのワークロードを並列に実行する。
【００８５】
このとき、データ計測部２０２が、サーバ装置２０における２次の複合ワークロード発生中の性能データ（複合性能データ）を計測している。この計測された２次の複合ワークロード発生中の複合性能データは、性能評価装置１０のデータ取得部１０２により取得される。
【００８６】
続いて、データ解析部１０３は、モデル推定部１０５により既に推定された２次の近似複合性能モデルに、取得された複合性能データに対応する複合ワークロードを構成する各ワークロードのワークロード値を適用することにより、各近似複合性能データをそれぞれ取得する。データ解析部１０３は、データ取得部１０２により取得された複合性能データと、取得された近似複合性能データとの差分データをモデル化することにより、差分データモデルを生成する（Ｓ５；ＮＯ、Ｓ７）。このモデル化にも、例えば、上述と同様に、多項式回帰手法が利用される。
【００８７】
続いて、モデル生成部１０４は、モデル推定部１０５により既に推定された近似複合性能モデル及びデータ解析部１０３により生成された差分データモデルを足し合わせることにより、２次の複合ワークロード種に対する複合性能モデルを生成する（Ｓ８）。このモデル同士の足し合わせは、例えば、多項式同士の足し算となる。
【００８８】
以降、ＭＣ２個の２次性能モデルが生成されるまで（Ｓ９；ＹＥＳ）、上述と同様に、各２次の複合ワークロード種に対する複合性能モデルの生成処理がそれぞれ実行される（Ｓ３、Ｓ４、Ｓ５；ＮＯ、Ｓ７、Ｓ８）。
【００８９】
全ての２次の複合ワークロード種に対する複合性能モデルの生成処理が完了すると（Ｓ９；ＹＥＳ、Ｓ１０；ＮＯ）、モデル推定部１０５は、ＭＣ２個の２次性能モデルの中のいずれか３個の各組み合わせをそれぞれ足し合わせることにより、３次の近似複合性能モデルを推定する（Ｓ１１）。Ｍが３でＫが２の場合には、１つの３次近似複合性能モデルが生成される。
【００９０】
なお、Ｍが２の場合には、上述のように３次近似複合性能モデルが生成されることなく、処理は終了される（Ｓ１０；ＹＥＳ）。
【００９１】
例えば、ＣＰＵ、ネットワーク送信及びハードディスク書き込みに関する３つの単一ワークロード種が利用される場合には、ＣＰＵ及びネットワーク送信の各単一ワークロード種が組み合わされた２次の複合ワークロード種に対する複合性能モデルと、ＣＰＵ及びハードディスク書き込みの各単一ワークロード種が組み合わされた２次の複合ワークロード種に対する複合性能モデルと、ネットワーク送信及びハードディスク書き込みの各単一ワークロード種が組み合わされた２次の複合ワークロード種に対する複合性能モデルと、が足しあわされた３次の近似複合性能モデルが推定される。
【００９２】
モデル推定部１０５により３次の近似複合性能モデルが構築されると、変数Ｋに１が加算される。続いて、ワークロード制御部１０１は、３次の複合ワークロード種に関するワークロード計画情報を取得する（Ｓ３）。以降、２次の複合ワークロード種の処理と同様に処理され（Ｓ４、Ｓ５；ＮＯ、Ｓ７）、上記３次の近似複合性能モデルを利用して、３次の複合ワークロード種に対する複合性能モデルが生成される（Ｓ８）。
【００９３】
このように最終的に望まれるＭ次の複合ワークロード種に対する複合性能モデルが生成されるまで、上述のような処理が繰り返される。
【００９４】
〔第２実施形態の作用及び効果〕
上述のように、第２実施形態における性能評価システム１では、まず、複数の単一ワークロード種に対する各１次性能モデルが生成される。具体的には、ワークロード制御部１０１の制御に応じて、単一ワークロード種毎の複数ワークロードがワークロード生成部２０１によってサーバ装置２０上に所定時間ずつ順次実行され、各ワークロード発生中のサーバ装置２０の性能データがデータ計測部２０２によってそれぞれ計測される。
【００９５】
計測された性能データはデータ取得部１０２によって取得され、データ解析部１０３が、単一ワークロード種毎に複数の性能データをそれぞれモデル化することにより、各単一ワークロード種に対する１次性能モデルを生成する。
【００９６】
このように、第２実施形態では、各１次性能モデルは、同一種で大きさの異なる複数のワークロードに対応する複数の性能データに基づいてそれぞれ生成される。ここで、単一ワークロード種に関し発生させるワークロードの数（サンプル数）が大きい程、詳細な性能データが取得されるため、生成される１次性能モデルの精度も高くなる。
【００９７】
ところで、複合性能モデルのための複合ワークロードは、少なくとも２つの異種のワークロードの組み合わせであるため、組み合わせられる単一ワークロード種のサンプル数を増やすと、複合ワークロードのサンプル数は飛躍的に増加する。つまり、精度の高い複合性能モデルの生成には、通常、長い計測時間が費やされる。
【００９８】
一方、計測時間を削減するために、当該サンプル数を減らした場合には、得られる性能データの数が少なくなるため、１次性能モデル及び複合性能モデルの精度が劣化することになる。
【００９９】
そこで、第２実施形態は、上述のように生成された複数の１次性能モデルを用いて、精度を劣化させることなく効率よく複合性能モデルを生成する。なお、上述のような１次性能モデルのためのサンプル数は、１次性能モデルの精度が劣化しない程度の通常設定される値に設定されればよい。
【０１００】
第２実施形態では、Ｋを２以上の整数とすると、Ｋ次の近似複合性能モデルと差分データモデルとの足し算により、Ｋ次の性能モデルを生成する（モデル生成部１０４）。
【０１０１】
Ｋ次の近似複合性能モデルは、複数の（Ｋ−１）次の性能モデルの中のＫ個の各組み合わせの足し算により推定される（モデル推定部１０５）。但し、Ｋ次の近似複合性能モデルは、Ｋ個のワークロードを同時に発生させたことによる競合要素が考慮されていないため、真のＫ次性能モデルとの間に誤差がある。
【０１０２】
第２実施形態では、この誤差を埋めるために、データ解析部１０３により生成される上記差分データモデルが利用される。差分データモデルは、データ計測部２０２により計測された、Ｋ次の複合ワークロード発生中のサーバ装置２０上の性能データと、Ｋ次の近似複合性能モデルから得られる近似複合データとの複数の差分データがデータ解析部１０３によりモデル化されることにより生成される。
【０１０３】
このように、第２実施形態では、Ｋ次の性能モデルを生成するために実行される実質的なモデル化処理は、差分データモデル構築のための処理である。差分データモデルの複雑さは、真のＫ次の性能モデルより小さい。従って、第２実施形態によれば、差分データモデルを生成するためのサンプル数、即ち、複合ワークロードのサンプル数を削減することができる。より複雑な分布を示すデータをモデル化するためには、より多くの計測点による計測が必要であるからである。
【０１０４】
サンプル数を削減することができれば、計測時間の削減にも繋がる。従って、第２実施形態によれば、Ｋ次の複合性能モデルを計測回数を削減することにより効率的に生成することができる。但し、第２実施形態によれば、計測回数を削減しても、性能モデルの精度を維持することができる。これは、複合ワークロードに対する複合性能モデル化を、近似性能モデルと真の複合性能モデルとの差分値のモデル化へ変換することにより、モデル化の対象の複雑さを軽減しているからである。
【０１０５】
〔第３実施形態〕
第３実施形態では、上述の各実施形態における評価対象であるサーバ装置２０が仮想マシン環境を提供可能である場合の例を挙げる。以下、第３実施形態について、上述の各実施形態と異なる内容を中心に説明する。
【０１０６】
図８は、第３実施形態におけるサーバ装置２０の処理構成例を概念的に示す図である。第３実施形態におけるサーバ装置２０は、第１実施形態及び第２実施形態の構成に加えて、複数の仮想マシン２６０（＃１）及び２６０（＃２）、サーバ制御部２５０を新たに有する。仮想マシンの実現手法は一般的な手法が利用されればよい。
【０１０７】
第３実施形態におけるサーバ装置２０では、サーバ制御部２５０が、各仮想マシン２６０（＃１）及び２６０（＃２）を制御し、性能評価装置１０のワークロード制御部１０１からの指示内容に応じて、ワークロード生成部２０１（＃１）及び２０１（＃２）を各仮想マシン２６０（＃１）及び２６０（＃２）上に実現させる。
【０１０８】
ワークロード生成部２０１（＃１）及び２０１（＃２）はそれぞれ、第１実施形態及び第２実施形態と同様に、各仮想マシン２６０（＃１）及び２６０（＃２）上にワークロード又は複合ワークロードを発生させる。
【０１０９】
データ計測部２０２は、各仮想マシン２６０（＃１）及び２６０（＃２）の各性能データ、並びに、サーバ装置２０全体の性能データをそれぞれ計測する。これにより、性能評価装置１０のデータ取得部１０２は、各仮想マシン２６０（＃１）及び２６０（＃２）の各性能データ、並びに全体の性能データをそれぞれ取得する。
【０１１０】
性能評価装置１０の処理構成は、第１実施形態及び第２実施形態の構成と同様であればよい。但し、第３実施形態では、同一種のワークロードでも発生させる仮想マシンが異なる場合、異なるワークロードとして扱われる。即ち、ＣＰＵ及びネットワーク送信の２つの単一ワークロード種が利用される場合には、仮想マシン２６０（＃１）上で発生されたＣＰＵワークロード及びネットワーク送信ワークロード、仮想マシン２６０（＃２）上で発生されたＣＰＵワークロード及びネットワーク送信ワークロードの４つの単一ワークロード種が存在するものとして処理される。
【０１１１】
データ解析部１０３におけるモデル化においては、データ取得部１０２により取得された各仮想マシン２６０（＃１）及び２６０（＃２）の各性能データ、並びに全体の性能データが用いられる。１次性能モデル及び複合性能モデルの生成手法については第１実施形態及び第２実施形態と同様である。
【０１１２】
このように、第３実施形態によれば、仮想マシン毎の性能モデルを精度を劣化させることなく効率よく生成することができる。
【０１１３】
［変形例］
上述の各実施形態は、組み合わされるワークロード種の数が少ない複合ワークロード種から順に、漸次的に性能モデルを生成した。これは、各次の性能モデルを生成するための差分データモデルの複雑さを低減することにより、性能モデルの精度を劣化させることなく効率を上げるためであった。
【０１１４】
しかしながら、評価対象とする性能の種類等によれば、異種のワークロード同士の競合に関する要素が性能モデルの精度の高さに与える影響が小さい場合もあり得る。このような場合、上述の各実施形態のように漸次的な生成手法ではなく、以下のような性能モデルの生成手法を用いるようにしてもよい。
【０１１５】
１つ目として、１次性能モデルを用いて最終的な３次以上の性能モデルを直接生成する手法が取られてもよい。この手法は、Ｋ個の１次性能モデルを足し合わせることにより、Ｋ次の近似複合性能モデルを推定し、Ｋ次の複合ワークロードの発生中の複合性能データを計測し、差分データモデルを生成し、Ｋ次の近似複合性能モデルと差分データモデルとを足し合わせることによりＫ次の複合性能モデルを生成する。
【０１１６】
この手法では、例えば、３次の性能モデルを生成する際には、２次の複合ワークロードを発生させる際に生じる競合要素と、３次の複合ワークロードを発生させる際に生じる競合要素が考慮されないため、当該差分データモデルが上記各実施形態と比べて複雑になる。よって、差分データモデルを得るためのサンプル数は、上記各実施形態と比べて多くすることが好ましい。しかしながら、この手法によれば、中間次数の複合ワークロードの計測時間が省かれるため、上記各実施形態と比べて処理量及び計測時間を少なくすることができる。
【０１１７】
２つ目として、Ｋ次の近似複合性能モデルを推定する場合、（Ｋ−１）次の性能モデルのみでなく、（Ｋ−２）以下の次数の性能モデルも利用する手法が取られてもよい。具体的には、例えば、２次の性能モデルと１次性能モデルとを足し合わせることで、３次の近似複合性能モデルを生成するようにしてもよい。なお、この手法においても、１つ目の手法と同様に、考慮されない競合要素が存在することになるため、当該差分データモデルが上記各実施形態と比べて複雑になる。
【０１１８】
なお、上記実施形態の説明には、複数のフローチャートを用いており、それぞれに複数のステップ（処理）を順番に記載しているが、その記載の順番は、本実施形態で実行される処理ステップの各順番を必ずしも限定するものではない。本実施形態では、図示される処理ステップの順番を内容的に支障しない範囲で変更することができる。また、上述した実施形態及び変形例は、その内容が相反しない範囲で組み合わせることができる。
【０１１９】
上記の各実施形態及び各変形例の一部又は全部は、以下の付記のようにも記載され得る。但し、各実施形態及び各変形例が以下の記載に限定されるものではない。
【０１２０】
（付記１）複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを評価対象コンピュータ上に順次発生させるワークロード制御手段と、各ワークロード発生中の評価対象コンピュータの１次性能データ、及び、複合ワークロード発生中の評価対象コンピュータの複合性能データを取得するデータ取得手段と、データ取得手段により取得された１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、データ取得手段により取得された複合性能データ及びデータ解析手段により生成された１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、を備えることを特徴とする性能評価装置。
【０１２１】
（付記２）上記ワークロード制御手段は、複合ワークロード種に関し発生させる複合ワークロードの数を、複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数に設定することを特徴とする付記１に記載の性能評価装置。
【０１２２】
（付記３）上記モデル生成手段は、上記データ解析手段により生成された１次性能モデルの少なくとも１つを用いて、複合ワークロード種に対する近似複合性能モデルを推定するモデル推定手段を含み、上記データ解析手段は、上記データ取得手段により取得された複合性能データと、上記モデル推定手段により推定された近似複合性能モデルから得られる近似複合性能データとの差分データをモデル化することにより、複合ワークロード種に対する差分データモデルを生成し、上記モデル生成手段は、上記モデル推定手段により推定された近似複合性能モデル及び上記データ解析手段により生成された差分データモデルを用いて、複合ワークロード種に対する複合性能モデルを生成する、ことを特徴とする付記１又は２に記載の性能評価装置。
【０１２３】
（付記４）上記モデル推定手段は、上記モデル生成手段により生成された、（Ｋ−１）個（Ｋは３以上の整数）の異なるワークロード種を組み合わせた（Ｋ−１）次の複合ワークロード種に対する（Ｋ−１）次性能モデルを用いて、Ｋ個の異なるワークロード種を組み合わせたＫ次の複合ワークロード種に対する近似複合性能モデルを推定する、ことを特徴とする付記３に記載の性能評価装置。
【０１２４】
（付記５）上記ワークロード制御手段は、各単一ワークロード種の全てに関しそれぞれ全てのワークロードを発生させた後、組み合わされるワークロード種の数が少ない複合ワークロード種から順に複合ワークロードを発生させることを特徴とする付記１から４のいずれか１つに記載の性能評価装置。
【０１２５】
（付記６）コンピュータが、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、各ワークロード発生中の評価対象コンピュータの１次性能データを取得し、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを評価対象コンピュータ上に順次発生させ、複合ワークロード発生中の評価対象コンピュータの複合性能データを取得し、取得された上記１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成し、取得された複合性能データ及び生成された１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成する、ことを含む性能評価方法。
【０１２６】
（付記７）複合ワークロード種に関し発生させる複合ワークロードの数は、複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数に設定されることを特徴とする付記６に記載の性能評価方法。
【０１２７】
（付記８）上記複合性能モデルの生成は、生成された１次性能モデルの少なくとも１つを用いて、複合ワークロード種に対する近似複合性能モデルを推定し、取得された上記複合性能データと、推定された上記近似複合性能モデルから得られる近似複合性能データとの差分データをモデル化することにより、複合ワークロード種に対する差分データモデルを生成し、推定された近似複合性能モデル及び生成された差分データモデルを用いて、複合ワークロード種に対する複合性能モデルを生成する、ことを含む付記６又は７に記載の性能評価方法。
【０１２８】
（付記９）上記近似複合性能モデルの推定は、生成された、（Ｋ−１）個（Ｋは３以上の整数）の異なるワークロード種を組み合わせた（Ｋ−１）次の複合ワークロード種に対する（Ｋ−１）次性能モデルを用いて、Ｋ個の異なるワークロード種を組み合わせたＫ次の複合ワークロード種に対する近似複合性能モデルを推定する、ことを含む付記８に記載の性能評価方法。
【０１２９】
（付記１０）各単一ワークロード種の全てに関しそれぞれ全てのワークロードを発生させた後、組み合わされるワークロード種の数が少ない複合ワークロード種から順に複合ワークロードを発生させることを特徴とする付記６から９のいずれか１つに記載の性能評価方法。
【０１３０】
（付記１１）コンピュータに、複数の単一ワークロード種の各々に関し大きさの異なる複数のワークロードを評価対象コンピュータ上に順次発生させ、かつ、少なくとも２つの異なる単一ワークロード種を組み合わせた複合ワークロード種に関し複合ワークロード種に対応する異種のワークロードを組み合わせた複数の複合ワークロードを評価対象コンピュータ上に順次発生させるワークロード制御手段と、各ワークロード発生中の評価対象コンピュータの１次性能データ、及び、複合ワークロード発生中の評価対象コンピュータの複合性能データを取得するデータ取得手段と、上記データ取得手段により取得された１次性能データをモデル化することにより、各単一ワークロード種に対する１次性能モデルをそれぞれ生成するデータ解析手段と、上記データ取得手段により取得された複合性能データ及び上記データ解析手段により生成された１次性能モデルに基づいて、複合ワークロード種に対する複合性能モデルを生成するモデル生成手段と、を実現させることを特徴とする性能評価プログラム。
【０１３１】
（付記１２）上記ワークロード制御手段は、複合ワークロード種に関し発生させる複合ワークロードの数を、複合ワークロード種を構成する各単一ワークロード種に関しそれぞれ発生させるワークロードの全組み合わせ数よりも少ない数に設定する、ことを特徴とする付記１１に記載の性能評価プログラム。
【０１３２】
（付記１３）上記モデル生成手段は、上記データ解析手段により生成された１次性能モデルの少なくとも１つを用いて、複合ワークロード種に対する近似複合性能モデルを推定するモデル推定手段、を含み、上記データ解析手段は、上記データ取得手段により取得された複合性能データと、上記モデル推定手段により推定された近似複合性能モデルから得られる近似複合性能データとの差分データをモデル化することにより、複合ワークロード種に対する差分データモデルを生成し、上記モデル生成手段は、上記モデル推定手段により推定された近似複合性能モデル及び上記データ解析手段により生成された差分データモデルを用いて、複合ワークロード種に対する複合性能モデルを生成する、ことを特徴とする付記１１又は１２に記載の性能評価プログラム。
【０１３３】
（付記１４）上記モデル推定手段は、上記モデル生成手段により生成された、（Ｋ−１）個（Ｋは３以上の整数）の異なるワークロード種を組み合わせた（Ｋ−１）次の複合ワークロード種に対する（Ｋ−１）次性能モデルを用いて、Ｋ個の異なるワークロード種を組み合わせたＫ次の複合ワークロード種に対する近似複合性能モデルを推定する、ことを特徴とする付記１３に記載の性能評価プログラム。
【０１３４】
（付記１５）上記ワークロード制御手段は、各単一ワークロード種の全てに関しそれぞれ全てのワークロードを発生させた後、組み合わされるワークロード種の数が少ない複合ワークロード種から順に複合ワークロードを発生させることを特徴とする付記１１から１４のいずれか１つに記載の性能評価プログラム。
【０１３５】
（付記１６）上記付記１から５のいずれか１つに記載の性能評価装置と、上記ワークロード制御手段の制御により、各ワークロード及び複合ワークロードをそれぞれ異なるタイミングで実行するワークロード生成手段と、各ワークロード発生中の各一次性能データ、及び、複合ワークロード発生中の複合性能データを計測するデータ計測手段と、を含む上記評価対象コンピュータと、を備える性能評価システム。
【０１３６】
（付記１７）付記１１から１５のいずれか１つに記載の性能評価プログラムを記録したコンピュータが読み取り可能な記録媒体。
【０１３７】
この出願は、２０１１年１月６日に出願された日本出願特願２０１１−００１４６７を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2012093469.tif 000003
【図２】
2012093469.tif 000004
【図３】
2012093469.tif 000005
【図４】
2012093469.tif 000006
【図５】
2012093469.tif 000007
【図６】
2012093469.tif 000008
【図７】
2012093469.tif 000009
【図８】
2012093469.tif 000010
【国際調査報告】
2012093469.tif 000011
2012093469.tif 000012