(57)【特許請求の範囲】
【請求項１】
情報処理システムの性能を予測するための性能予測装置であって、
前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、
前記性能予測装置は、
前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する第１の性能モデル生成手段と、
前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成する第２の性能モデル生成手段と、
前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成するシステム性能モデル合成手段と、を備えることを特徴する性能予測装置。
【請求項２】
前記システム性能モデル合成手段は、
前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルにリクエストが入力されるのに応じて、前記計測対象部に含まれる前記ハードウェア部を構成するハードウェアリソースの使用方法に関する情報を含むリソース要求を、当該第１の仮想マシンの性能モデルに発行させ、
前記計測対象部の性能モデルに、前記リソース要求に応じた処理を行わせると共に、当該処理の完了に応じて、各前記第１の仮想マシンの性能モデルに対して、処理完了通知を発行させ、
前記リソース要求と前記処理完了通知とを利用する合成処理を行うことを特徴とする請求項１に記載の性能予測装置。
【請求項３】
前記システム性能モデル合成手段は、前記情報処理システムの性能モデルとして、
前記計測対象部の性能モデルによって算出された性能指標と、
前記リソース要求が前記計測対象部の性能モデルに対して発行されてから、前記計測対象部の性能モデルから前記処理完了通知が発行されるまでの所有時間と、の少なくとも何れかを提示することを特徴とする、請求項２に記載の性能予測装置。
【請求項４】
前記ハードウェア部は、仮想マシンモニタと、物理マシンのハードウェアと、を含むことを特徴とする、請求項１から３の何れか１項に記載の性能予測装置。
【請求項５】
前記第２の性能モデル生成手段は、前記情報処理システムを計測し、当該計測に用いた入力値と、当該入力値に対応する、当該計測によって得られた出力値とに基づいて、前記計測対象部の性能モデルを生成することを特徴とする、請求項１から４の何れか１項に記載の性能予測装置。
【請求項６】
前記計測対象部に対する計測は、使用頻度の傾向が異なる時間軸上の単位毎に行われることを特徴とする、請求項１から５の何れか１項に記載の性能予測装置。
【請求項７】
前記第１の性能モデル生成手段の代わりに、あるいは、前記第１の性能モデル生成手段に加えて更に、前記第１の仮想マシンにて動作するアプリケーションの設計情報に基づき生成された、前記第１アプリケーション部の性能モデルを１つ以上格納している記憶手段から、特定の性能モデルを選択する、性能モデル特定手段を備えることを特徴とする、請求項１から６の何れか１項に記載の性能予測装置。
【請求項８】
前記第２の仮想マシンが動作する場合の、前記情報処理システムの計測に関わる設定値と、当該計測の実行命令を指定可能な入力内容指定手段と、
前記情報処理システムの設定値である入力値と、当該入力値に対応する出力値とを収集する情報収集手段と、を更に備え、
前記第２の性能モデル生成手段は、前記入力値と、前記出力値とに基づいて、前記計測対象部の性能モデルを生成することを特徴とする、請求項１から７の何れか１項に記載の性能予測装置。
【請求項９】
情報処理システムの性能を予測するための性能予測装置における性能モデル生成方法であって、
前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、
前記性能モデル生成方法は、
前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成し、
前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成し、
前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用することにより、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する、ことを特徴する性能モデル生成方法。
【請求項１０】
情報処理システムの性能を予測するための性能予測装置を含むコンピュータに実行させるプログラムであって、
前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、
前記プログラムは、
前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する処理と、
前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成する処理と、
前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する処理と、をコンピュータに実行させることを特徴する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、性能予測装置、性能モデル生成方法およびプログラムに関する。
【背景技術】
【０００２】
コンピュータの仮想化技術は、物理マシンを用いて１または複数の仮想的なマシン（仮想マシン）を動作させる。このような動作を行う環境を有するシステムを仮想化システムと呼ぶ。
【０００３】
このような仮想化システムを用いる場合、物理マシンを構成するハードウェアリソースにおいて、リソース競合や仮想マシンモニタのエミュレーションが発生する。ここで、ハードウェアリソースとは、例えば、当該物理マシンが有するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、記憶装置、メモリ等である。リソース競合とは、例えば、複数トランザクションの同時実行によって発生するハードウェアリソースの競合のことである。また、仮想マシンモニタのエミュレーションとは、仮想マシンモニタが同時に複数の仮想マシンの仮想ハードウェアに対しエミュレートすることである。
【０００４】
非特許文献１には、エミュレーションやリソース競合に関して、物理マシンにおいて動作する仮想マシンが１台増える毎に、ＣＰＵ性能が劣化すること、その劣化が当該仮想マシンにおいて実行されるシステムの性能に影響を及ぼすことが記載されている。
【０００５】
一般に、物理マシンにおいて動作する仮想マシンの台数が増加すれば、その物理マシンを構成するハードウェアの環境をエミュレートする仮想マシンモニタの動作は複雑になると想定される。そして、仮想マシンモニタの動作が複雑になれば、仮想マシンの性能も低下すると考えられる。したがって、仮想化システムの性能予測には、オーバヘッドやリソース競合に対する考慮、および、複数の仮想マシンが動作する状況における性能の予測が必要である。
【０００６】
このような仮想化システムの性能予測方法として、性能モデルを用いる方法がある。ここで、性能モデルとは、仮想化システムへの入力を用いて、性能予測の対象である仮想化システム（対象システム）の性能を予測するモデルである。性能モデルの典型的な例としては、例えば、待ち行列や回帰モデルが挙げられる。このように性能予測に用いる性能モデルの生成方法として、以下に述べる主に２種類の方法が挙げられる。
【０００７】
その方法とは、（１）対象システムの動作を模倣した性能モデルを生成する方法と、（２）対象システムへの入力値と、その入力値に対応する出力値とに基づいて、統計処理や機械学習を利用して、性能モデルを生成する方法である。
【０００８】
まず、（１）対象システムの動作を模倣した性能モデルを生成する方法について説明する。以降、この性能モデルの生成方法を「ホワイトボックスアプローチ」と称する。ホワイトボックスアプローチは、性能モデルの生成に際して、対象システムの動作の詳細（例えば、設計情報等）が明確であることを必要とする。つまり、ホワイトボックスアプローチは、対象システムの動作が明確であれば、他のシステムに置き換えた場合においても、性能モデルを容易に生成できる。
【０００９】
このような特徴を有するホワイトボックスアプローチによって性能モデルを生成する方法の例が、非特許文献２、特許文献２から５に記載されている。
【００１０】
非特許文献２には、待ち行列理論に基づいて、オーバヘッドを考慮した性能モデルを生成する方法が記載されている。
【００１１】
特許文献２には、コンピュータシステムにおけるワークロード毎の測定された応答時間に基づいて、クラス毎の平均サービス需要を推定し、推定した平均サービス需要とワークロードの特徴に基づいてコンピュータシステムの待ち行列モデルを生成する方法が記載されている。
【００１２】
特許文献３には、ストレージ仮想化技術を用いたストレージシステムの各構成要素のモデルを用いて、各モデルのモデル情報に基づいて、ストレージ仮想化装置のモデル化を行い、性能評価を行う方法が記載されている。つまり、特許文献３によれば、モデル化されたストレージ仮想化装置（ストレージ仮想化装置の性能モデル）は、ホワイトボックスアプローチを利用して生成されている。
【００１３】
特許文献４には、物理的なシステムの性能を算出する規則に基づいて、データフローのモデルと仮想サーバモデルとの対応関係の情報、および、仮想サーバモデルのオブジェクトと物理サーバモデルのオブジェクトとの対応関係の情報から性能評価モデルを生成する方法が記載されている。
【００１４】
特許文献５には、階層的な競合資源を持つシステムを、上位層（ソフトウェア部分）と下位層（ハードウェア部分）とに分け、階層ごとに生成した性能評価値を、システム全体の性能評価値とする方法が記載されている。この際、特許文献５では、階層ごとの性能評価値を算出するために使用する近似システム（性能モデル）は、ホワイトボックスアプローチを用いて生成されている。
【００１５】
次に、（２）対象システムへの入力値と、その入力値に対応する出力値とに基づいて、統計処理や機械学習を利用して、性能モデルを生成する方法について説明する。以降、このような性能モデルの生成方法を、「ブラックボックスアプローチ」と称する。ブラックボックスアプローチは、実測値を基にモデルを生成する。
【００１６】
ブラックボックスアプローチによって性能モデルを生成する方法の例が、非特許文献３および特許文献６に記載されている。
【００１７】
非特許文献３には、単体の仮想マシンが、仮想マシンモニタにおいて動作している状態における実測値と、線形モデルとを用いて、性能モデルを生成することが記載されている。
【００１８】
特許文献６には、予め収集した負荷データと構成データとに基づいて仮想マシンのオーバヘッドを算出し、負荷データとオーバヘッドとを用いて、負荷を再生する仮想化システムが記載されている。つまり、特許文献６に記載の仮想化システムは、性能評価を行うために負荷を発生させる。つまり、特許文献６の技術では、実際の運用環境に近い負荷条件の仮想マシン（性能モデル）を、実際の負荷データを利用して生成している。
【００１９】
そして、上述した２種類の生成方法を用いて生成された性能モデルを用いた性能予測方法の例が、特許文献１に記載されている。
【００２０】
特許文献１によれば、予め測定された複数のソフトウェア・コンポーネントのシステム資源使用量から、トランザクションのシステム資源使用量を予測する。そして、特許文献１に記載のシステム性能予測方式では、上記システム性能予測モデルに、予測したシステム資源使用量を入力することにより、当該対象システム全体の性能予測を行う。
【００２１】
また、仮想化システムの性能予測値算出装置に、オーバヘッドを含んだ性能予測関数や性能モデルを用いる技術が特許文献７に記載されている。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開２００４−２２０４５３号公報
【特許文献２】特開２０１１−０８６２９５号公報
【特許文献３】特開２００６−１４６３５４号公報
【特許文献４】特開２０１２−１４６０１５号公報
【特許文献５】特開２０００−０２９７５３号公報
【特許文献６】特開２０１０−１２８８６６号公報
【特許文献７】特開２０１０−００９１６０号公報
【非特許文献】
【００２３】
【非特許文献１】網代育大、田中淳裕、「仮想計算機環境における資源管理オーバヘッドの評価」、情報処理学会研究報告．ＥＶＡ，［システム評価］、一般社団法人情報処理学会、２００６年６月、Ｖｏｌ．２００６、Ｎｏ．６６、ｐ．１７−２２
【非特許文献２】Febricio Benevenuto、他６名、「Performance Models for Virtualized Applications」、Frontiers of High Performance Computing and Networking - ISPA 2006 Workshops、Springer Berlin Heidelberg、２００６年、Ｖｏｌ．４３３１、ｐ．４２７−４３９
【非特許文献３】Lei Lu、他５名、「Untangling Mixed Informantion to Calibrate Resource Utilization in Virtual Machines」、Proceeding of the 8th ACM international conference on Autonomic computing (ICAC '11)、ＡＣＭ、２０１１年、ｐ．１５１−１６０
【発明の概要】
【発明が解決しようとする課題】
【００２４】
仮想化システムにおいて、物理マシンのハードウェアを複数台の仮想マシンで共有する場合がある。この複数台の仮想マシンの中には、例えば、仮想マシンの管理者が、当該仮想化システムを使用する利用者と異なる等の理由により、仮想マシンの設計情報等を入手できないものが含まれる可能性がある。
【００２５】
しかしながら、このような仮想化システムの性能を予測する場合には、上記のような設計情報等を入手できない仮想マシンについても考慮する必要がある。
【００２６】
また、物理マシンのハードウェアリソースが、第３者が管理するものである場合には、当該ハードウェアリソースの情報（ハードウェアリソース情報）が入手できない可能性がある。
【００２７】
特許文献１の技術では、測定することにより得られた性能データを、待ち行列のパラメータ値として用いることにより、システム全体の性能を予測している。しかしながら、特許文献１の技術では、設計情報等を入手できない仮想マシンを考慮した仮想化システムの性能予測は行われていない。
【００２８】
また、非特許文献２および特許文献２〜５に記載の技術では、上述したホワイトボックスアプローチで性能モデルを作成している。このような技術では、設計情報等を入手できない仮想マシンや、ハードウェアリソース情報が入手できないハードウェアリソースが、どのような動作をするのかわからない。したがって、上記技術では、設計情報等を入手できない仮想マシンを含む仮想化システムの性能モデルを作成することができない。
【００２９】
また、特許文献６では、ホストＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）において複数の仮想マシンが動作する状況を作り出し、その状況において、ゲストＯＳにおいて動作する評価対象アプリケーションの実測による性能予測を行う。しかし、特許文献６では、実測値による性能予測を行っているため、仮想マシンのスペックが変更された場合は、変更毎に当該評価対象アプリケーションを用いて実測しなければならない。したがって、特許文献６の技術では、設計情報等を入手できない仮想マシンが含まれる場合や、その場合のハードウェアリソース情報が入手できない場合は、追加された仮想マシンのアプリケーションを単独で実行することが難しい。そのため、変更毎にすべての仮想マシンに対し、実測しなおす必要があり、手間がかかってしまう。
【００３０】
また、特許文献７に記載の技術においても、設計情報等を入手できない仮想マシンを考慮した仮想化システムの性能予測は行われていない。
【００３１】
本発明は、上記課題に鑑みてなされたものであり、その目的は、仮想化システムの性能をより好適に予測することが可能な性能予測装置を実現することにある。
【課題を解決するための手段】
【００３２】
本発明の一態様に係る性能予測装置は、情報処理システムの性能を予測するための性能予測装置であって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記性能予測装置は、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する第１の性能モデル生成手段と、前記第２アプリケーション部、並びに、前記ハードウェア部を計測対象部として計測した結果に基づいて、前記計測対象部の性能モデルを生成する第２の性能モデル生成手段と、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成するシステム性能モデル合成手段と、を備える。
【００３３】
本発明の一態様に係る性能モデル生成方法は、情報処理システムの性能を予測するための性能予測装置における性能モデル生成方法であって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記性能モデル生成方法は、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成し、前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成し、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用することにより、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する。
【００３４】
本発明の一態様に係るプログラムは、情報処理システムの性能を予測するための性能予測装置を含むコンピュータに実行させるプログラムであって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記プログラムは、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する処理と、前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成する処理と、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する処理と、をコンピュータに実行させる。
【発明の効果】
【００３５】
本発明によれば、仮想化システムの性能をより好適に予測することができる。
【図面の簡単な説明】
【００３６】
【図１】本発明の第１の実施の形態に係る、仮想化システムの性能を予測するための性能予測装置の機能構成の一例を示すブロック図である。
【図２】本発明の第１の実施の形態に係る、仮想化システムの前提条件を概念的に説明するための図である。
【図３】第１の実施の形態に係る性能予測装置の性能予測モデル合成部が行う合成処理を概念的に説明するための図である。
【図４】第１の実施の形態に係る計測対象部性能モデルが出力する性能指標を例示する図である。
【図５】本発明の第２の実施の形態に係る、仮想化システムの性能を予測するための性能予測装置の機能構成の一例を示すブロック図である。
【図６】本発明の第２の実施の形態に係る性能予測装置による性能モデル生成処理の流れの一例を示すフローチャートである。
【図７】本発明の第２の実施の形態において、計測対象部性能モデルの生成処理の流れの一例を示すフローチャートである。
【図８】本発明の第２の実施の形態において、システム性能モデル合成部の合成処理の流れの一例を示すフローチャートである。
【図９】本発明の第２の実施の形態において、システム性能モデル合成部の合成処理を概念的に説明するための図である。
【図１０】本発明の各実施の形態を実現可能なコンピュータ（情報処理装置）のハードウェア構成を例示的に説明する図である。
【発明を実施するための形態】
【００３７】
＜第１の実施の形態＞
本発明の第１の実施の形態について、図面を参照して詳細に説明する。
【００３８】
図１は、本実施の形態に係る、仮想化システムの性能を予測するための性能予測装置の機能構成の一例を示すブロック図である。図１に示す通り、性能予測装置１は、仮想化システム２と通信可能に接続されている。仮想化システム２は、性能予測装置１が性能を予測する対象（以下、対象システム、または、仮想化環境とも呼ぶ）である。性能予測装置１と仮想化システム２との接続方法には、例えば、インターネットやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の一般的な通信手段を採用することができる。よって、本実施の形態では、係る通信手段に関する詳細な説明は省略する。
【００３９】
なお、本実施の形態に係る仮想化システム（仮想化環境）２は、仮想化技術を用いて構築された情報処理システムの一例として説明を行う。
【００４０】
仮想化システム２には、複数の仮想マシンが含まれる。複数の仮想マシンには、例えば、仮想マシンの管理者が仮想化システム２を使用する利用者と異なる等の理由により、当該仮想マシンの設計情報等を入手できないものが含まれる。つまり、本実施の形態に係る仮想化システムは、動作が明確なアプリケーションが実行される、１または複数の仮想マシンと、動作が不明なアプリケーションが実行される、１または複数の仮想マシンとが、同じ物理マシンを共有している構成である。以下、前者の仮想マシンを、第１の仮想マシンまたは予測対象仮想マシン、とも呼ぶ。また、後者の仮想マシンを、第２の仮想マシン、動作不明仮想マシンまたは予測対象外仮想マシンとも呼ぶ。
【００４１】
（仮想化システム２）
ここで、図２を参照して、本実施の形態に係る仮想化システム２の概念について説明する。図２は、本発明の第１の実施の形態に係る、一般的な仮想化システムを概念的に説明する図である。
【００４２】
図２では、仮想化システム２を、一例として、モノリシック・ハイパーバイザ型で構築している。ただし、仮想化システム２の構成方法は、仮想マシンモニタがホストＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）において動作するホストＯＳ型や、仮想マシンモニタが仮想化環境を提供するための最低限の機能しか持たないマイクロカーネル・ハイパーバイザ型でもよい。即ち、仮想化システム２の構成方法は、一つの物理マシンにおいて、仮想マシンが動作できる環境が実現できる方法であれば、何れの方法でも採用することができる。
【００４３】
本実施の形態における仮想化システム２は、一般的な仮想化システムと同様に、仮想マシン（第１の仮想マシン２０１、第２の仮想マシン３０１）と、仮想マシンモニタ（ハイパーバイザ）２０２と、物理マシンのハードウェア２０３という３層をなす。仮想マシン（２０１、３０１）は、図２に示すように、Ｍ台（Ｍは０を除く自然数）の第１の仮想マシン２０１と、Ｎ台（Ｎは０を除く自然数）の第２の仮想マシン３０１とであり、台数は限定されない。個々の仮想マシン（２０１、３０１）は、図２に例示するように、ゲストＯＳ環境を提供すると共に、１つ以上の任意のアプリケーション（ＡＰ）を実行することができる。
【００４４】
ここで、第１の仮想マシン２０１は、動作が明確なアプリケーションが実行される仮想マシンであり、第２の仮想マシン３０１は、動作が不明なアプリケーションが実行される仮想マシンである。つまり、本実施の形態における第１の仮想マシン２０１は、第１の仮想マシン２０１上で動作するアプリケーションに関する情報が入手可能な仮想マシンである。なお、本実施の形態では、第１の仮想マシン２０１は、仮想マシンの設計情報などの詳細が入手できる仮想マシンであるとも言う。同様に、第２の仮想マシン３０１は、第２の仮想マシン３０１上で動作するアプリケーションに関する情報が入手できない仮想マシンであり、第２の仮想マシン３０１を、詳細が入手できない仮想マシン、第３者が所有している仮想マシン、であるともいう。
【００４５】
そして、本実施の形態では、このような３層構造をなす仮想化システム（対象システム）２を、図２において破線で囲まれた、以下の（ａ）および（ｂ）の２層（２階層）として取り扱う。すなわち、
（ａ）仮想マシンモニタ２０２と、物理マシンのハードウェア２０３とによって構成されるハードウェア層２０５、
（ｂ）仮想マシン（２０１、３０１）によって構成されるアプリケーション層２０４。
【００４６】
このうち、性能予測装置１によって仮想化システム２の性能を予測する際に、アプリケーション層２０４に含まれる仮想マシンが、第１の仮想マシン２０１のみである場合、その仮想化システム２は２部で構成されている、と定義する。そして、本実施の形態では、以下の構造をなす仮想化システム２を、３部と定義する。すなわち、
（１）仮想マシンモニタ２０２と、物理マシンのハードウェア２０３とによって構成されるハードウェア部３００（ハードウェア層２０５）、
（２）１または複数の第１の仮想マシン２０１によって構成される第１アプリケーション部４００、
（３）１または複数の第２の仮想マシン３０１によって構成される第２アプリケーション部５００。
【００４７】
つまり、２層構造として取り扱う仮想化システム２の性能を予測する際に、本実施の形態に係る性能予測装置１は、仮想化システム２が３部で構成されている、と定義する。そして、性能予測装置１は、このような定義を前提として、仮想化システム２の性能を予測するための性能モデルを生成する。ここで、性能予測装置１への定義の仕方としては、例えば、第１の仮想マシン２０１を第１アプリケーション部４００と関連づけて登録し、第２の仮想マシン３０１を第２アプリケーション部５００と関連付けて登録し、仮想マシンモニタ２０２と物理マシンのハードウェア２０３とをハードウェア部３００と関連付けて登録すればよい。
【００４８】
また、図２において一点鎖線で囲んだ、ハードウェア部３００と第２アプリケーション部５００とをまとめて、計測対象部５０１と呼ぶ。
【００４９】
（性能予測装置１）
性能予測装置１は、図１に示す通り、計測対象部性能モデル生成部（第２の性能モデル生成部）３と、仮想マシン性能モデル生成部（第１の性能モデル生成部）４と、システム性能モデル合成部５と、を備えている。
【００５０】
本実施の形態における性能モデルの生成には、少なくとも、システムの動作の詳細を模倣する性能モデルを作成するホワイトボックスアプローチと、性能予測対象のシステムの実測値により性能モデルを構築するブラックボックスアプローチとを用いることとする。性能モデルの生成には、例えば、待ち行列理論や回帰分析手法などを採用することができる。なお、本実施の形態における性能モデル生成方法は、一般的な手法を採用するため、詳細な説明を省略する。
【００５１】
計測対象部性能モデル生成部３は、第２の仮想マシン３０１が動作する場合の仮想化システム２を計測した結果（実測値）に基づいて、計測対象部５０１に対する計測対象部性能モデル（図３における３１０）を生成する。より具体的には、計測対象部性能モデル生成部３は、第２アプリケーション部５００、並びに、ハードウェア部３００からなる計測対象部５０１を計測対象として計測した結果に基づいて、上述したブラックボックスアプローチによって、計測対象部５０１の性能モデルを生成する。
【００５２】
本実施の形態において、ブラックボックスアプローチによる性能モデルの生成（モデル生成とも呼ぶ）とは、上述したとおり、任意のシステムへの入力値と、その入力値に対応する出力値とに基づいて、統計処理や機械学習によって性能モデルを生成する手法である。ブラックボックスアプローチによるモデル生成手法では、例えば、回帰分析やニューラルネットワーク、遺伝的アルゴリズムを用いることができる。なお、上記モデル生成手法は、これに限定されるものではなく、同様のアプローチ方法が実現できる手法であればよい。
【００５３】
なお、計測対象部性能モデル生成部３は、月次、日次、所定の時間毎等に、計測対象部性能モデル（３１０）を生成してもよい。なお、本実施の形態においては、計測対象部５０１を、仮想化システム影響部とも呼ぶ。
【００５４】
計測対象部性能モデル生成部３は、生成した性能モデル（計測対象部性能モデル３１０）をシステム性能モデル合成部５に供給する。
【００５５】
仮想マシン性能モデル生成部４は、仮想化システム２の第１アプリケーション部４００の各第１の仮想マシン２０１において動作するアプリケーションに関する情報に基づいて、上述したホワイトボックスアプローチによって、各仮想マシンの性能モデル（図３における仮想マシン性能モデル４１０）を生成する。つまり、仮想マシン性能モデル生成部４は、仮想化システム２における仮想マシンのアプリケーションの動作が明確な場合は、当該仮想マシン毎に性能モデルを生成する。
【００５６】
上記第１の仮想マシン２０１のアプリケーションとは、オペレータ等の操作に応じて、第１の仮想マシン２０１上で実行されるアプリケーションであって、当該アプリケーションの動作の詳細が入手できるアプリケーションである。
【００５７】
本実施の形態において、ホワイトボックスアプローチによるモデル生成とは、上述したとおり、任意のシステムの設計情報を基に当該任意のシステムの動作を模倣した性能モデルを生成する手法である。ホワイトボックスアプローチによるモデル生成手法では、例えば、待ち行列理論やペトリネットを用いることができる。なお、上記モデル生成手法は、これに限定されるものではなく、同様のアプローチ方法が実現できる手法であればよい。
【００５８】
仮想マシン性能モデル生成部４は、生成した性能モデル（仮想マシン性能モデル４１０）をシステム性能モデル合成部５に供給する。
【００５９】
システム性能モデル合成部５は、計測対象部性能モデル生成部３から、性能モデル（計測対象部性能モデル３１０）を受信する。また、システム性能モデル合成部５は、仮想マシン性能モデル生成部４から、性能モデル（仮想マシン性能モデル４１０）を受信する。そして、システム性能モデル合成部５は、上記性能モデルにおいて、一方の性能モデルにおける出力値を、もう一方の性能モデルへの入力値として利用する合成処理を行う。この合成処理により、計測対象部性能モデル（３１０）と、第１アプリケーション部の仮想マシン毎の仮想マシン性能モデル（４１０）との間の依存関係が反映された、仮想化システム２の性能モデル（システム性能モデル５１０）を生成する。以下、本実施の形態において、計測対象部性能モデル（３１０）と、第１アプリケーション部の仮想マシン毎の性能モデル（４１０）との間の依存関係を考慮した性能モデルの生成処理を、合成（合成処理）と称することがある。
【００６０】
システム性能モデル合成部５の処理について、図３を参照して、更に詳細に説明する。
【００６１】
一般的に仮想化システムにおいて、仮想マシンは、物理マシンのハードウェアリソースを利用することによってアプリケーションを実行する。そのため、ハードウェア部３００と、第１の仮想マシン２０１および第２の仮想マシン３０１との間には依存関係がある。つまり、仮想マシン（２０１、３０１）と、ハードウェア部３００との間を別々に分けた状態では、性能を予測すべき対象である仮想化システム２の性能を、好適に予測することはできない。
【００６２】
そのため、本実施の形態に係る性能予測装置１のシステム性能モデル合成部５は、計測対象部性能モデル生成部３によって生成された性能モデル（計測対象部性能モデル３１０）と、仮想マシン性能モデル生成部４によって生成された、第１アプリケーション部４００の各第１の仮想マシン２０１の性能モデル（仮想マシン性能モデル４１０）とを用いて、仮想化システム２の性能モデル（システム性能モデル５１０）を生成する。これにより、仮想化システム２の性能予測を可能とする。
【００６３】
図３は、システム性能モデル合成部５が行う合成処理を概念的に説明するための図である。
【００６４】
まず、システム性能モデル合成部５は、第１の仮想マシン２０１にリクエストが入力されるのに応じて、第１アプリケーション部４００の各仮想マシン性能モデル４１０に、ハードウェアリソースへのリソース要求６０を生成させる。そして、システム性能モデル合成部５は、第１アプリケーション部４００の各仮想マシン性能モデル４１０によって生成された、ハードウェア部３００のハードウェアリソースへのリソース要求６０を、計測対象部性能モデル３１０に入力する。ここで、ハードウェアリソースへのリソース要求６０は、ハードウェアリソースを第１アプリケーション部４００の各仮想マシン性能モデル４１０がどのように使用するかに関する情報を含む。
【００６５】
そして、システム性能モデル合成部５は、計測対象部性能モデル３１０に入力されたリソース要求６０に応じて、計測対象部性能モデル３１０に性能を予測することが可能な性能指標（後述する、図９に図示する性能指標６０４に相当）を、算出させる。
【００６６】
ここで、計測対象部性能モデル３１０は、上記性能指標として、例えば、月、日、時刻の単位で、ハードウェアリソースの使用率、ＴＡＴ（Ｔｕｒｎ  Ａｒｏｕｄ  Ｔｉｍｅ）、スループット等を採用してもよい。上記性能指標を、図４に例示する。図４は、本実施の形態における計測対象部性能モデル３１０が算出する性能指標を例示する図である。図４に示す例では、時間を変化させた場合（８時から２時間毎、１８時からは、１８時から８時までを１つの単位とする）の「ＴＡＴ（ｍｓ：ミリ秒）」「ＣＰＵ使用率（％）」、「スループット（ｔｐｓ：トランザクション数毎秒）」、の平均値を表す。そして、システム性能モデル合成部５は、計測対象部性能モデル３１０が算出した、例えば、図４に示すような性能指標を、オペレータ等に提供する。なお、オペレータ等への提供方法は、図示しない表示手段を用いて提供する構成であってもよいが、本発明はこれに限定されるものではない。
【００６７】
計測対象部性能モデル３１０において、入力されたリソース要求６０に応じた処理が完了すると、システム性能モデル合成部５は、当該リソース要求に対応する処理完了通知６１を、計測対象部性能モデル３１０に発行させる。そして、システム性能モデル合成部５は、第１アプリケーション部４００の各仮想マシン性能モデル４１０に、処理完了通知６１を入力する。なお、計測対象部性能モデル３１０と仮想マシン性能モデル４１０との間の相互的なやり取りは、仮想化システム２に入力された命令（処理プロセス）が完了するまで続ける。
【００６８】
即ち、本実施の形態に係る性能予測装置１のシステム性能モデル合成部５は、第１アプリケーション部４００の仮想マシン性能モデル４１０と、計測対象部５０１の計測対象部性能モデル３１０とに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルの入力値として利用する合成処理を行う。この様な構成によって、システム性能モデル合成部５は、２部間の依存関係が反映された、仮想化システム２のシステム性能モデル５１０（例えば、上述した性能指標）を生成する。
【００６９】
（効果）
本実施の形態に係る仮想化システム２は、上述したとおり、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシン２０１を含む第１アプリケーション部４００と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシン３０１を含む第２アプリケーション部５００と、ハードウェア部３００と、を有する。
【００７０】
このような仮想化システム２の性能を予測するための性能予測装置１によれば、より好適に、仮想化システム２の性能を予測することができる。
【００７１】
なぜならば、本実施の形態に係る性能予測装置１が、計測対象部性能モデル生成部３と、仮想マシン性能モデル生成部４と、システム性能モデル合成部５と、を備えているからである。
【００７２】
仮想マシン性能モデル生成部４は、第１アプリケーション部４００の各第１の仮想マシン２０１のアプリケーションに関する情報に基づいて、第１の仮想マシン２０１の性能モデル（仮想マシン性能モデル４１０）を夫々生成する。計測対象部性能モデル生成部３は、第２アプリケーション部５００並びにハードウェア部３００を計測対象部５０１とし、計測対象部５０１を計測対象として計測した結果に基づいて、計測対象部５０１の性能モデル（計測対象部性能モデル３１０）を生成する。また、システム性能モデル合成部５は、仮想マシン性能モデル４１０と、計測対象部性能モデル３１０とに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、仮想化システム２の性能モデルを（システム性能モデル５１０）生成する。
【００７３】
したがって、本実施の形態に係る性能予測装置１は、係るシステム性能モデル５１０を用いて、仮想化システム２の性能を好適に予測できる。
【００７４】
また、本実施の形態における性能予測装置１は、ホワイトボックスアプローチを採用して、第１アプリケーション部４００で動作する第１の仮想マシン２０１で実行されるアプリケーション情報を用いて、第１の仮想マシン２０１毎に仮想マシン性能モデル４１０を生成する。第１アプリケーション部４００において複数台の第１の仮想マシン２０１が動作する環境において、例えば、第１の仮想マシン２０１の追加や削除といった仮想マシンの構成の変更があった場合について説明する。この時、仮想マシン性能モデル生成部４は、追加／削除された第１の仮想マシン２０１の仮想マシン性能モデル４１０を追加／削除することにより、第１アプリケーション部４００に対する性能モデルを作成することができる。よって、本実施の形態によれば、ブラックボックスアプローチを採用した場合に必要となる、第１の仮想マシン２０１の台数に応じて仮想化システム２を計測し直すといった、手間を要しない。
【００７５】
また、本実施の形態における性能予測装置１は、ブラックボックスアプローチを用いて、計測対象部性能モデル３１０を生成する。このため、（ａ）動作が複雑な物理ハードウェアの各構成要素についての動作や仕様が不明確な場合、（ｂ）予測対象外である仮想マシンや、詳細が入手できない仮想マシンが物理マシン上で動作している場合、または、（ｃ）第３者が管理する基盤上を何台の仮想マシンと共有しているか情報が入手できない場合の何れであっても、計測対象部性能モデル生成部３は、計測対象部性能モデル３１０を生成することができる。即ち、ブラックボックスアプローチを採用することにより、計測対象部性能モデル生成部３は、ホワイトボックスアプローチのように、システムやアプリケーションの動作を明確に把握する必要がないので、計測対象部性能モデル３１０を好適に生成することができる。したがって、第２の仮想マシン３０１のエミュレーションや、物理マシンのハードウェア２０３におけるリソース競合の詳細、または第２の仮想マシン３０１上で実行されるアプリケーションの詳細が入手できない場合でも、計測対象部性能モデル生成部３は、詳細を明示的に記述することなく、これらが及ぼす性能への影響が正しく考慮された計測対象部性能モデル３１０を生成できる。
【００７６】
そして、本実施の形態におけるシステム性能モデル合成部５は、第１アプリケーション部４００における各第１の仮想マシン２０１の仮想マシン性能モデル４１０と、計測対象部性能モデル３１０とを利用する合成処理により、これらの各部間の依存性を考慮したシステム性能モデル５１０を生成する。即ち、本実施の形態によれば、このように生成されたシステム性能モデル５１０を用いて、仮想化システム２の性能を好適に予測することができる。
【００７７】
＜第２の実施の形態＞
次に、上述した第１の実施の形態に係る性能予測装置１を基本とする第２の実施の形態について説明する。なお、説明の便宜上、前述した第１の実施の形態で説明した図面に含まれる部材と同じ機能を有する部材については、同じ符号を付し、その説明を省略する。なお、本実施の形態において、性能予測装置１０が性能を予測する対象となる仮想化システムは、第１の実施の形態と同様、図２に例示した３部（ハードウェア部３００、第１アプリケーション部４００、および、第２アプリケーション部５００）により構成されることを前提条件とする。
【００７８】
（性能予測装置１０）
図５は、本発明の第２の実施の形態に係る、仮想化システム２の性能を予測するための性能予測装置１０の機能構成を示すブロック図である。図５に示す通り、性能予測装置１０は、入力内容指定部３０と、情報収集部３１と、計測対象部性能モデル生成部３２と、記憶部４１と、仮想マシン性能モデル特定部４２と、システム性能モデル合成部５０と、を備えている。
【００７９】
なお、本実施の形態においては、記憶部４１が性能予測装置１０の内部に構成されていることを例に説明を行うが、記憶部４１は、性能予測装置１０の外部の記憶装置などによって実現されてもよい。この場合、仮想マシン性能モデル特定部４２は、上記記憶装置を参照すればよい。
【００８０】
また、本実施の形態における性能予測装置１０は、第１の実施の形態と同様に、仮想化システム２と通信可能に接続されている。また、性能予測装置１０は、オペレータ等９からの指示を受け付けるように構成されている。
【００８１】
（入力内容指定部３０）
入力内容指定部３０は、オペレータ等９に対するユーザインタフェース（ＵＩ、マンマシン）としての機能を有する。オペレータ等９は、仮想化システム２に関する実測値を計測する際、入力内容指定部３０を用いて、計測に関連する内容を指定することができる。よって、入力内容指定部３０を用いたオペレータ等９による入力操作により、仮想化システム２には、仮想化システム２の実測値（各リソースの使用率、スループット、ＴＡＴ等）の計測に関わる設定値、計測期間（月次や日時、時刻等）、計測等の実行命令に関する内容が指定される。
【００８２】
なお、入力内容指定部３０に対し、オペレータ等９による入力（指定）が行われることを例に説明を行ったが、本発明はこれに限定されない。入力内容指定部３０に対し、ＬＡＮやインターネットを介したサーバ等の外部装置からの命令が入力されてもよい。
【００８３】
また、入力内容指定部３０は、指定された内容（入力内容）を、仮想化システム２に入力（設定）する。具体的には、入力内容指定部３０は、オペレータ等９の操作によって入力された、仮想化システム２の計測に関わる設定値、計測期間（月次や日時、時刻等）、計測指示を示す命令等を、仮想化システム２に設定する。これにより、仮想化システム２は、入力内容指定部３０によって入力された情報に基づいて、仮想化システム２の計測を行う。
【００８４】
なお、上記入力を用いて、仮想化システム２から出力される実測値であって、計測の結果で得られた実測値は、計測対象部性能モデル生成部３２による計測対象部性能モデル３１０の生成に利用される。
【００８５】
仮想化システム２における実測値の計測は、後述するシステム性能モデル合成部５０による合成処理に先立って行われてもよい。計測の内容としては、ハードウェア部３００上で第２の仮想マシン３０１がＮ台稼働している状態（Ｎは０を含む自然数）で、月次、日次や時刻毎などシステムの使用頻度の傾向が異なる時間軸上の単位毎での、ベンチマークソフトを用いたベンチマークテストが挙げられる。このベンチマークソフトは、例えば、ＣＰＵ、記憶装置、通信ネットワーク等のように、仮想化システム２に関係する各種のハードウェアリソースに負荷を与えられることが可能な処理をさせるソフトウェア（コンピュータ・プログラム）であってもよい。本実施の形態においては、ベンチマークソフトとして、特定のハードウェアリソースの負荷状況を再現できる任意のソフトウェア（コンピュータ・プログラム）を採用するとするが、本発明はこれに限定されるものではない。仮想化システム２における実測値の計測方法は、一般的な手順を採用することができるので、本実施の形態における詳細な説明は省略する。
【００８６】
（情報収集部３１）
情報収集部３１は、仮想化システム２に対して計測された実測値を収集する。ここで、実測値とは、入力内容指定部３０からの入力内容に応じて実行される仮想化システム２に関するベンチマークテストにおける入力値と、その入力値に対する出力値との対をなす情報である。情報収集部３１は、仮想化システム２から上述した実測値として、仮想化システム２への入力値と、その入力値に対応する出力値とを収集する。
【００８７】
ここで、入力値とは、仮想化システム２を構成する各ハードウェアリソースに対する要求（ハードウェア資源の使用方法に関する情報を含んだ情報）を含んでいる。
【００８８】
なお、情報収集部３１は、この入力値を、仮想化システム２から収集する構成について、説明を行ったが、本発明はこれに限定されるものではない。情報収集部３１は、上記入力値を、入力内容指定部３０から収集する構成であってもよい。
【００８９】
また、入力値に対応する出力値とは、例えば、各ハードウェアリソースの使用率やスループット、ＴＡＴ等である。
【００９０】
情報収集部３１は、収集した実測値を、ハードウェア部３００と第２の仮想マシン３０１を含む第２アプリケーション部５００とを併せた計測対象部５０１の性能モデルである計測対象部性能モデル３１０に入力可能である。
【００９１】
更に、情報収集部３１は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等のコンピュータ読み取り可能な記憶媒体（例えば、記憶部４１）に、収集した実測値（即ち、仮想化システム２への入力値と、その入力値に対応する出力値）を記憶する機能を有する。また、情報収集部３１は、これらの情報を収集が終了（入力内容指定部３０が指定した計測が完了）したことを契機に、収集した実測値を、計測対象部性能モデル生成部３２に供給する。
【００９２】
（計測対象部性能モデル生成部３２）
計測対象部性能モデル生成部３２は、第１の実施の形態における計測対象部性能モデル生成部３と同様の処理を行う。計測対象部性能モデル生成部３２は、情報収集部３１から入力された情報（上述した実測値）に基づいて、ブラックボックスアプローチにより、計測対象部性能モデル３１０を生成する。
【００９３】
実測値は、上述したとおり、仮想化システム２への入力値と、その入力値に対応する出力値とを含む。入力値は、上述したとおり、リソース要求（ハードウェア資源の使用方法に関する情報を含んだ情報）を含むデータである。出力値は、各リソースの使用率、スループットやＴＡＴ等を表すデータである。これらの入出力値は、月次や日次、時刻毎に収集されたデータである。計測対象部性能モデル生成部３２は、これらの入出力値を用いて、例えば、ニューラルニューラルネットワーク、遺伝的アルゴリズム、多項式関数、回帰分析等の演算処理によって計測対象部性能モデル３１０を生成する。ただし、本発明において、計測対象部性能モデル３１０の生成方法は、これらの演算処理に限定されず、実測値を用いた同様のアプローチによって計測対象部性能モデル３１０を実現する方法であればよい。
【００９４】
そして、計測対象部性能モデル生成部３２は、生成した計測対象部性能モデル３１０を、システム性能モデル合成部５０に供給する。
【００９５】
（記憶部４１）
記憶部４１は、例えば、コンピュータ読み取り可能な記憶媒体であるハードディスク装置で実現される記憶手段である。記憶部４１は、性能モデル群４０を記憶している。
【００９６】
記憶部４１に記憶された性能モデル群４０は、第１アプリケーション部４００において動作する第１の仮想マシン２０１で実行されるアプリケーションの設計情報等を用いて生成される。また、性能モデル群４０は、仮想マシン性能モデル４１０として特定可能な候補である。つまり、性能モデル群４０は、第１アプリケーション部４００第１の仮想マシン２０１において動作するアプリケーションの振る舞いを模倣した構成を有するモデルの集合である。
【００９７】
本実施の形態において、性能モデル群４０をなす個々の仮想マシン性能モデル４１０は、第１の実施の形態において説明した仮想マシン性能モデル４１０と同様に、上述したホワイトボックスアプローチによって生成される。本実施の形態においては、性能予測装置１０は、例えば、性能モデル群４０を構成する仮想マシン性能モデルを、後述するシステム性能モデル合成部５０による合成処理に先立って、ホワイトボックスアプローチを用いた一般的な手順により求めてもよい。なお、以下では、仮想マシン性能モデル４１０が、ホワイトボックスアプローチを用いて生成されたものとして説明を行う。
【００９８】
つまり、記憶部４１は、ホワイトボックスアプローチを用いて生成された第１アプリケーション部４００の第１の仮想マシン２０１において動作する可能性のあるアプリケーションの仮想マシン性能モデル４１０を１または複数、記憶している。
【００９９】
性能モデル群４０には、第１の仮想マシン２０１で実行されるアプリケーションの設計情報に従って、例えば、待ち行列やペトリネットなどを利用して生成した性能モデルを採用することができる。なお、本実施の形態における、性能モデル群４０の生成方法は、上記に限定されない。性能モデル生成方法は、入力に対する解析計算やシミュレーション等の予め決められた手順で出力が決定される、という任意の方法を採用してもよい。
（仮想マシン性能モデル特定部４２）
仮想マシン性能モデル特定部４２は、オペレータ等９に対するユーザインタフェース（ＵＩ、マンマシン）としての機能を有する。オペレータ等９は、仮想マシン性能モデル特定部４２を用いて、第１アプリケーション部４００にて実行される、第１の仮想マシン２０１において動作するアプリケーションに関する情報等を指定することができる。仮想マシン性能モデル特定部４２を用いたオペレータ等９による入力操作により、仮想マシン性能モデル特定部４２は、その入力内容に対応するまたは一致する仮想マシン性能モデル４１０を、性能モデル群４０から特定し、取得する。
【０１００】
具体的には、仮想マシン性能モデル特定部４２は、オペレータ等９の操作に応じて、第１の仮想マシン２０１にて動作するアプリケーションに関する情報に基づいて記憶部４１を参照する。そして、仮想マシン性能モデル特定部４２は、性能モデル群４０中から、上記アプリケーションに関する情報に関連付けられた、特定の仮想マシン性能モデル４１０を特定する。そして、仮想マシン性能モデル特定部４２は、記憶部４１から、特定した仮想マシン性能モデル４１０を取得する。
【０１０１】
また、仮想マシン性能モデル特定部４２は、上記取得した仮想マシン性能モデル４１０を、システム性能モデル合成部５０に供給する。
【０１０２】
ここで、オペレータ等９から指示された情報（入力内容）とは、第１アプリケーション部４００にて実行される各第１の仮想マシン２０１において実行されるアプリケーションに関する情報である。
【０１０３】
そして、入力内容に対応する仮想マシン性能モデル４１０とは、性能を予測すべき対象となる第１の仮想マシン２０１毎のアプリケーション内容を表す。このアプリケーション内容は、当該第１の仮想マシン２０１毎に異なる。したがって、第１の仮想マシン２０１が第１アプリケーション部４００において３台稼働している場合、仮想マシン性能モデル特定部４２は、それら３台の第１の仮想マシン２０１におけるアプリケーションの情報にマッチする仮想マシン性能モデル４１０を、夫々、性能モデル群４０（記憶部４１）から取り出す必要がある。
【０１０４】
なお、仮想マシン性能モデル４１０の特定は、第１の仮想マシン２０１においてオペレータ等９が稼働を希望する所望のアプリケーションに関する情報と同じ内容のアプリケーション情報を用いて予め生成された仮想マシン性能モデル４１０を、性能モデル群４０の中から、オペレータ等９が、例えば、人的操作によって選択してもよい。
【０１０５】
なお、仮想マシン性能モデル特定部４２に対し、オペレータ等９による入力（指定）が行われることを例に説明を行ったが、本発明はこれに限定されない。仮想マシン性能モデル特定部４２に対し、ＬＡＮやインターネットを介したサーバ等の外部装置から必要な情報が入力されてもよい。
（システム性能モデル合成部５０）
システム性能モデル合成部５０は、計測対象部性能モデル生成部３２にて生成された計測対象部性能モデル３１０と、仮想マシン性能モデル特定部４２にて特定された仮想マシン性能モデル４１０とを合成することにより、仮想化システム２のシステム性能モデル５１０を生成する。本実施の形態におけるシステム性能モデル５１０の生成方法は、第１の実施の形態と同様である。システム性能モデル合成部５０は、例えば、入力内容指定部３０および／または仮想マシン性能モデル特定部４２に対するオペレータ等の操作を契機に、合成処理を実行してもよい。
【０１０６】
即ち、性能予測装置１０は、システム性能モデル合成部５０が生成するシステム性能モデル５１０を用いることにより、各仮想マシンへのリクエスト内容を基に、仮想化システム２の性能を予測した結果である性能指標を算出することができる。オペレータ等９は、このような性能指標を、例えば、ディスプレイ等を介して参照することにより、仮想化システム２の性能を予測できる。
【０１０７】
（性能モデル生成処理）
次に、性能予測装置１０が行う性能モデル生成処理について、図６から図９を参照して説明する。
【０１０８】
図６は、本発明の第２の実施の形態に係る性能予測装置１０による性能モデル生成処理の概要を示すフローチャートである。図６に示す通り、性能予測装置１０は、以下のステップＳ１０１からステップＳ１０３の動作を行う。
【０１０９】
ステップＳ１０１：計測対象部性能モデル生成部３２が、仮想化システム２のハードウェア部３００と第２アプリケーション部５００とを併せた計測対象部５０１に対する性能モデル（計測対象部性能モデル３１０）を生成する処理を行う。なお、この計測対象部性能モデル３１０の生成処理については、図面を変えて説明を行う。
【０１１０】
ステップＳ１０２：仮想マシン性能モデル特定部４２が、オペレータ等９の操作に応じて、記憶部４１の性能モデル群４０から仮想マシン性能モデル４１０を特定し、記憶部４１から取得する。具体的には、まず、仮想マシン性能モデル特定部４２は、対象となる第１の仮想マシン２０１にて動作するアプリケーションに関する情報を用いて、記憶部４１を参照する。ここで、対象となる第１の仮想マシン２０１とは、仮想化システム２において動作する、詳細が入手できる仮想マシン（第１の仮想マシン２０１）である。そして、仮想マシン性能モデル特定部４２は、記憶部４１に記憶されている性能モデル群４０から、上記情報に対応する（合致する）仮想マシン性能モデル４１０を特定し、当該特定した仮想マシン性能モデル４１０を取得する。
【０１１１】
なお、ステップＳ１０１とＳ１０２とは同時に実行されてもよいし、逆順で実行されてもよい。
【０１１２】
ステップＳ１０３：システム性能モデル合成部５０が、ステップＳ１０１にて生成された計測対象部性能モデル３１０と、ステップＳ１０２にて特定された１または複数の仮想マシン性能モデル４１０とを用いて、合成処理を実行する。これにより、仮想化システム２の性能を予測するための性能モデルが生成される。この合成処理の結果として得た性能モデル（性能予測値）は、システム性能モデル合成部５０の出力値である。システム性能モデル合成部５０の処理（合成処理）については、図面を変えて説明する。
【０１１３】
図７は、上述したステップＳ１０１における、計測対象部性能モデル３１０の生成処理の流れの一例を示すフローチャートである。図７に示す通り、計測対象部性能モデル３１０の生成処理では、以下のステップＳ２０１からステップＳ２０３の処理が行われる。
【０１１４】
ステップＳ２０１：入力内容指定部３０が、オペレータ等９の操作を契機に、仮想化システム２に計測を開始させる。そして、仮想化システム２は、仮想化システム２の計測を行う。
【０１１５】
ステップＳ２０２：情報収集部３１が、ステップＳ２０１にて行われた仮想化システム２の計測によって出力される実測値を収集する。この実測値は、ハードウェア部３００における第２の仮想マシン３０１の動作の影響を含んだ、例えば、月次や日時、時刻毎の、各リソースの使用率、スループット、ＴＡＴ等のハードウェア部３００、並びに、第２アプリケーション部５００の各第２の仮想マシン３０１の状態を表す情報である。情報収集部３１は、収集した実測値（ステップＳ２０１にて、仮想化システム２に入力された入力値とその入力値に対応する出力値）を、計測対象部性能モデル生成部３２に供給する。
【０１１６】
ステップＳ２０３：計測対象部性能モデル生成部３２が、情報収集部３１から供給された実測値を用いて、ブラックボックスアプローチにより、計測対象部性能モデル３１０を生成する。これにより計測対象部性能モデル３１０の生成処理を終了する。
【０１１７】
図８は、上述したステップＳ１０３における、システム性能モデル合成部５０が行う合成処理の流れの一例を示すフローチャートである。また、図９は、システム性能モデル合成部５０が行う合成処理を概念的に説明するための図である。図８に示す通り、システム性能モデル合成部５０の合成処理では、以下のステップＳ３０１からステップＳ３０７の処理が行われる。
【０１１８】
ステップＳ３０１：システム性能モデル合成部５０が、第１アプリケーション部４００の各仮想マシン性能モデル４１０に、図９に示すリクエスト（６００、６０１）を入力する。
【０１１９】
ステップＳ３０２：システム性能モデル合成部５０が、仮想マシン性能モデル４１０に対し、ステップＳ３０１にて入力されたリクエストに従って、リソース要求（６０２、６０３）を生成させる。本実施の形態において、リソース要求（６０２、６０３）は、例えば、第１の仮想マシン２０１を構成するプロセスが、どのハードウェアリソースを、どのように使用するかについての情報を含んだデータである。本実施の形態におけるリソース要求（６０２、６０３）は、上述した第１の実施の形態におけるリソース要求６０と同様のものである。
【０１２０】
ステップＳ３０３：システム性能モデル合成部５０が、ステップＳ３０２にて仮想マシン性能モデル４１０に生成させたリソース要求（６０２、６０３）を、計測対象部性能モデル３１０に入力する。
【０１２１】
ステップＳ３０４：システム性能モデル合成部５０が、ステップＳ３０３にて入力したリソース要求（６０２、６０３）を、計測対象部性能モデル３１０を用いて処理する。
【０１２２】
ステップＳ３０５：システム性能モデル合成部５０が、ステップＳ３０４における処理が完了したことを表す処理完了通知（６０５、６０６）を、計測対象部性能モデル３１０から仮想マシン性能モデル４１０に入力する。処理完了通知（６０５、６０６）が計測対象部性能モデル３１０から出力される際、システム性能モデル合成部５０は、計測対象部性能モデル３１０により算出した性能指標（例えば、リソース使用率、ＴＡＴ等）６０４を、計測対象部性能モデル３１０から出力する。この出力のタイミングは、任意のタイミングで算出してよい。具体的には、システム性能モデル合成部５０は、例えば、処理完了通知（６０５、６０６）を出力するときに性能指標６０４を算出してもよく、オペレータ等９が決めた時間ごとに算出してもよい。
【０１２３】
ステップＳ３０６：システム性能モデル合成部５０は、第１アプリケーション部４００が出力する未処理のリソース要求の有無を確認する。未処理のリソース要求が第１アプリケーション部４００に残っている場合（ステップＳ３０６にてＹＥＳ）、システム性能モデル合成部５０は、処理をステップＳ３０３に戻す。全てのリソース要求の処理が完了した場合（ステップＳ３０６にてＮＯ）、システム性能モデル合成部５０は、処理をステップＳ３０７に進める。即ち、ステップＳ３０３からステップＳ３０６までの各ステップからなるループは、第１アプリケーション部４００におけるリソース要求が無くなるまで繰り返される。
【０１２４】
ステップＳ３０７：ステップＳ３０６にて全てのリソース要求の処理が完了したと判断すると、システム性能モデル合成部５０は、各仮想マシン性能モデル４１０から、処理済みリクエスト（６０７、６０８）を出力する。
【０１２５】
これにより、オペレータ等９は、システム性能モデル合成部５０が算出した、第１アプリケーション部４００の各仮想マシン性能モデル４１０および計測対象部性能モデル３１０の計算結果（性能指標６０４等）を用いて、仮想化システム２の性能を予測することができる。
【０１２６】
なお、ステップＳ３０７にて出力される処理済みリクエストは、対応するリクエストに対する処理が終了した後、すなわち、ステップＳ３０５の後に出力されるものであってもよい。
【０１２７】
図９は、図５に示すシステム性能モデル合成部５０における、システム性能モデル５１０の合成方法を概念的に表した図である。図９に第１アプリケーション部４００においては、第１の仮想マシン２０１毎に用意した仮想マシン性能モデル４１０に対して、それぞれリクエスト（６００、６０１）が入力される。入力されたリクエストは、その後、待ち行列を用いて処理され、処理済みリクエスト（６０７、６０８）として出力される。ここで、仮想マシン性能モデル４１０は、第１アプリケーション部４００において実行されるアプリケーションの動作を模倣したモデルである。
【０１２８】
即ち、オペレータ等９の操作により、第１アプリケーション部４００の仮想マシン性能モデル４１０には、リクエスト（６００、６０１）が入力される。ここで、リクエスト（６００、６０１）は、各仮想マシン性能モデル４１０を用いたシミュレーションのために、模擬的に作成したデータである。このデータの内容は、各ソフトウェア資源への負荷や、ハードウェアリソースの利用タイミング等を表す。
【０１２９】
本実施の形態において、複数の第１の仮想マシン２０１が動作している場合、図９に例示する通り、当該複数の第１の仮想マシン２０１の夫々に対応する仮想マシン性能モデル４１０の夫々に対して、リクエストを入力する。個々のリクエストは、同時、または、例えば、オペレータ等９が指定した時間差をおいて、各仮想マシン性能モデル４１０へ入力される。
【０１３０】
図９に示す例の場合、リクエスト（６００、６０１）が第１アプリケーション部４００の仮想マシン性能モデル４１０に入力されると、仮想マシン性能モデル４１０は、当該リクエストに対応する処理を行った後、処理済みリクエスト（６０７、６０８）を、処理結果として出力する。
【０１３１】
システム性能モデル合成部５０は、第１アプリケーション部４００の仮想マシン性能モデル４１０を用いて、入力されたリクエスト（６００、６０１）から、当該リクエストが求める処理に必要なリソース要求（６０２、６０３）を生成する。本実施の形態においては、例えば、リソース要求（６０２、６０３）は、各仮想マシン性能モデル４１０に入力されたリクエストを処理するために必要なハードウェア部３００を構成するリソース（ハードウェアリソース）に対して、特定の処理を要求する命令である。ここで、ハードウェア部３００を構成するリソースは、例えば、ＣＰＵ、記憶装置（ＨＤＤ）、通信ネットワーク（ＮＩＣ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等である。
【０１３２】
システム性能モデル合成部５０は、第１アプリケーション部４００にて生成されたハードウェアリソースへのリソース要求（６０２、６０３）を、計測対象部５０１に入力する。計測対象部５０１に入力されたリソース要求（６０２、６０３）は、計測対象部性能モデル３１０によって処理される。システム性能モデル合成部５０は、計測対象部性能モデル３１０による処理が完了した後に、処理完了通知（６０５、６０６）を、計測対象部５０１から第１アプリケーション部４００に対して出力する。処理完了通知（６０５、６０６）は、上述した第１の実施の形態における、リソース要求に関する処理完了通知６１（図３）に相当する。
【０１３３】
システム性能モデル合成部５０は、計測対象部５０１の計測対象部性能モデル３１０を用いて、リソース要求（６０２、６０３）に対する処理において算出した性能指標６０４を、計測対象部性能モデル３１０から出力する。性能指標６０４は、例えば、各リソースの使用率やＴＡＴ等の情報を含んでもよい。
【０１３４】
システム性能モデル合成部５０は、計測対象部５０１が出力した処理完了通知（６０５、６０６）を第１アプリケーション部４００が受け取った後、処理済みリクエスト（６０７、６０８）を、各仮想マシン性能モデル４１０から出力する。
【０１３５】
なお、第１アプリケーション部４００が計測対象部５０１に対してリソース要求（６０２、６０３）を出力（発行）してから、計測対象部５０１から処理完了通知（６０５、６０６）が第１アプリケーション部４００に入力されるまでの時間（期間）を、仮想マシン性能モデル４１０の処理時間（処理所要時間）ＰＴとする。処理時間ＰＴは、第１アプリケーション部４００から出力されたリソース要求（６０２、６０３）が計測対象部５０１に入力されてから、計測対象部５０１が第１アプリケーション部４００に対して処理完了通知（６０５、６０６）を出力するまでの時間（期間）と捉えることもできる。
【０１３６】
以上の各ステップで算出された性能指標等を用いて、システム性能モデル合成部５０は、仮想化システム２の性能予測に関する情報を、オペレータ等９に提供する。
【０１３７】
すなわち、第１アプリケーション部４００の第１の仮想マシン２０１において動作する特定の仮想マシン性能モデル４１０により置き換えることにより、仮想マシン性能モデル４１０の入出力の関係性に基づいて、オペレータ等９は、仮想化システム２の性能を予測することができる。このため、オペレータ等９は、仮想マシン性能モデル４１０への入力値であるリクエスト（６００、６０１）と、当該リクエストに対する処理時間ＰＴとの関係性を用いて、仮想化システム２全体の性能を予測することができる。
【０１３８】
また、計測対象部５０１を置き換えた計測対象部性能モデル３１０に対する入力と出力との関係に基づいて、オペレータ等９は、計測対象部５０１の性能を予測することができる。このため、オペレータ等９は、計測対象部性能モデル３１０への入力値であるリソース要求（６０２、６０３）と、出力値である性能指標６０４との関係性を用いて、計測対象部５０１の性能を予測することができる。
【０１３９】
これにより、オペレータ等９は、仮想化システム２全体の性能を予測できる。
【０１４０】
図８および図９を用いて説明したとおり、システム性能モデル合成部５０の合成処理において得られる値（情報）は、以下の通りである。すなわち、
（ａ）各仮想マシン性能モデル４１０に入力されたリクエスト（６００、６０１）、
（ｂ）各仮想マシン性能モデル４１０により生成された計測対象部性能モデル３１０へのリソース要求（６０２、６０３）、
（ｃ）計測対象部性能モデル３１０により算出された性能指標６０４、
（ｄ）処理所有時間。
【０１４１】
なお、システム性能モデル合成部５０は、システム性能モデル５１０として、上記（ｃ）および（ｄ）の少なくとも何れかを出力する構成であってもよい。また、システム性能モデル合成部５０は、上記（ｃ）および／または（ｄ）に加え、（ａ）および／または（ｂ）を出力する構成であってもよい。
【０１４２】
すなわち、計測対象部性能モデル３１０を用いることで、システム性能モデル合成部５０は、性能を予測すべき対象である仮想化システム２へのリクエストの内容を基に、性能指標６０４を算出することができる。従って、オペレータ等９は、上述した各算出値を参照することにより、システム性能モデル５１０を用いて、仮想化システム２の性能を予測することができる。
【０１４３】
なお、本実施の形態の性能予測装置１０は、第１の実施の形態における仮想マシン性能モデル生成部４の代わりに、仮想マシン性能モデル特定部４２を備える構成について説明を行った。しかし、本実施の形態に係る性能予測装置１０は、図５に示した構成に、更に、第１の実施の形態における仮想マシン性能モデル生成部４を備える構成であってもよい。
【０１４４】
（効果）
以上のように、本実施の形態に係る性能予測装置１０は、仮想化システム２の構成をハードウェア部３００、第１アプリケーション部４００、第２アプリケーション部５００と定義する。そして、性能予測装置１０は、ハードウェア部３００および第２アプリケーション部５００からなる計測対象部５０１の計測対象部性能モデル３１０と、第１アプリケーション部４００の仮想マシン性能モデル４１０とを生成する。さらに、性能予測装置１０は、当該各部の依存関係が反映された仮想化システム２のシステム性能モデル５１０を生成する。これにより、仮想化システム２の性能を予測することができる。したがって、本実施の形態に係る性能予測装置１０は、仮想化システム２において、詳細が入手できない仮想マシンが複数動作している場合であっても、仮想化システム２の性能を好適に予測することが可能である。
【０１４５】
＜ハードウェアの構成例＞
ここで、上述した各実施の形態に係る性能予測装置を実現可能なハードウェアの構成例について説明する。上述した性能予測装置（１、１０）は、専用の装置として実現してもよいが、コンピュータ（情報処理装置）を用いて実現してもよい。
【０１４６】
図１０は、本発明の各実施の形態を実現可能なコンピュータ（情報処理装置）のハードウェア構成を例示する図である。
【０１４７】
図１０に示した情報処理装置（コンピュータ）１００のハードウェアは、ＣＰＵ１１、通信インタフェース（Ｉ／Ｆ）１２、入出力ユーザインタフェース１３、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１４、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１５、記憶装置１７、及びコンピュータ読み取り可能な記憶媒体１９のドライブ装置１８を備え、これらがバス１６を介して接続された構成を有する。入出力ユーザインタフェース１３は、入力デバイスの一例であるキーボードや、出力デバイスとしてのディスプレイ等のマンマシンインタフェースである。通信インタフェース１３は、上述した各実施の形態に係る装置（図１、図５）が、外部装置と、通信ネットワーク２００を介して通信するための一般的な通信手段である。係るハードウェア構成において、ＣＰＵ１１は、各実施の形態に係る性能予測装置（１、１０）を実現する情報処理装置１００について、全体の動作を司る。
【０１４８】
上述した各実施の形態を例に説明した本発明は、例えば、上記各実施の形態において説明した処理を実現可能なプログラム（コンピュータ・プログラム）を、図１０に示す情報処理装置１００に対して供給した後、そのプログラムを、ＣＰＵ１１に読み出して実行することによって達成される。なお、係るプログラムは、例えば、上記各実施の形態の説明において参照したフローチャート（図６、図７、図８）に記載した各種処理や、或いは、図１、図５に示したブロック図において当該装置内に示した各部（各ブロック）を実現可能なプログラムであってもよい。
【０１４９】
また、情報処理装置１００内に供給されたプログラムは、読み書き可能な一時記憶メモリ（１５）またはハードディスクドライブ等の不揮発性の記憶装置（１７）に格納されてもよい。即ち、記憶装置１７において、プログラム群１７Ａは、例えば、上述した各実施の形態における性能予測装置（１、１０）内に示した各部の機能を実現可能なプログラムである。また、各種の記憶情報１７Ｂは、例えば、上述した各実施の形態における第１アプリケーション部４００の性能モデル群４０や、仮想化システム２に関する実測値等である。ただし、情報処理装置１００へのプログラムの実装に際して、個々のプログラム・モジュールの構成単位は、ブロック図（図１、図５）に示した各ブロックの区分けには限定されず、当業者が実装に際して適宜選択してよい。
【０１５０】
また、前記の場合において、当該装置内へのプログラムの供給方法は、ＣＤ−ＲＯＭ、フラッシュメモリ等のコンピュータ読み取り可能な各種の記録媒体（１９）を介して当該装置内にインストールする方法や、インターネット等の通信回線（２００）を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード（プログラム群１７Ａ）或いは係るコードが格納された記憶媒体（１９）によって構成されると捉えることができる。
【０１５１】
以上、本発明を、上述した模範的な実施の形態およびその実施例に適用した例として説明した。しかしながら、本発明の技術的範囲は、上述した各実施の形態及び実施例に記載した範囲には限定されない。当業者には、係る実施の形態に対して多様な変更または改良を加えることが可能であることは明らかである。そのような場合、係る変更または改良を加えた新たな実施の形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。
【０１５２】
なお、上述した実施の形態の一部または全部は、以下の付記のようにも記載されうる。しかしながら、上述した実施の形態により例示的に説明した本発明は、以下には限られない。
【０１５３】
（付記１）情報処理システムの性能を予測するための性能予測装置であって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記性能予測装置は、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する第１の性能モデル生成手段と、前記第２アプリケーション部、並びに、前記ハードウェア部を計測対象部として計測した結果に基づいて、前記計測対象部の性能モデルを生成する第２の性能モデル生成手段と、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成するシステム性能モデル合成手段と、を備えることを特徴する性能予測装置。
【０１５４】
（付記２）前記システム性能モデル合成手段は、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルにリクエストが入力されるのに応じて、前記計測対象部に含まれる前記ハードウェア部を構成するハードウェアリソースの使用方法に関する情報を含むリソース要求を、当該第１の仮想マシンの性能モデルに発行させ、前記計測対象部の性能モデルに、前記リソース要求に応じた処理を行わせると共に、当該処理の完了に応じて、各前記第１の仮想マシンの性能モデルに対して、処理完了通知を発行させ、前記リソース要求と前記処理完了通知とを利用する合成処理を行うことを特徴とする付記１に記載の性能予測装置。
【０１５５】
（付記３）前記システム性能モデル合成手段は、前記情報処理システムの性能モデルとして、前記計測対象部の性能モデルによって算出された性能指標と、前記リソース要求が前記計測対象部の性能モデルに対して発行されてから、前記計測対象部の性能モデルから前記処理完了通知が発行されるまでの所有時間と、の少なくとも何れかを提示することを特徴とする、付記２に記載の性能予測装置。
【０１５６】
（付記４）前記ハードウェア部は、仮想マシンモニタと、物理マシンのハードウェアと、を含むことを特徴とする、付記１から３の何れかに記載の性能予測装置。
【０１５７】
（付記５）前記第２の仮想マシンは、当該第２の仮想マシンにおけるアプリケーションの詳細が入手できない仮想マシン、および、第３者が所有している仮想マシンの少なくとも何れかを含むことを特徴とする、付記１から４の何れかに記載の性能予測装置。
【０１５８】
（付記６）前記第２の性能モデル生成手段は、前記情報処理システムを計測し、当該計測に用いた入力値と、当該入力値に対応する、当該計測によって得られた出力値とに基づいて、前記計測対象部の性能モデルを生成することを特徴とする、付記１から５の何れかに記載の性能予測装置。
【０１５９】
（付記７）前記計測対象部に対する計測は、使用頻度の傾向が異なる時間軸上の単位毎に行われることを特徴とする、付記１から６の何れかに記載の性能予測装置。
【０１６０】
（付記８）前記第１の性能モデル生成手段の代わりに、あるいは、前記第１の性能モデル生成手段に加えて更に、前記第１の仮想マシンにて動作するアプリケーションの設計情報に基づき生成された、前記第１アプリケーション部の性能モデルを１つ以上格納している記憶手段から、特定の性能モデルを選択する、性能モデル特定手段を備えることを特徴とする、付記１から７の何れかに記載の性能予測装置。
【０１６１】
（付記９）前記第２の仮想マシンが動作する場合の、前記情報処理システムの計測に関わる設定値と、当該計測の実行命令を指定可能な入力内容指定手段と、前記情報処理システムの設定値である入力値と、当該入力値に対応する出力値とを収集する情報収集手段と、を更に備え、前記第２の性能モデル生成手段は、前記入力値と、前記出力値とに基づいて、前記計測対象部の性能モデルを生成することを特徴とする、付記１から８の何れかに記載の性能予測装置。
【０１６２】
（付記１０）情報処理システムの性能を予測するための性能予測装置における性能モデル生成方法であって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記性能モデル生成方法は、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成し、前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成し、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用することにより、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する、ことを特徴する性能モデル生成方法。
【０１６３】
（付記１１）情報処理システムの性能を予測するための性能予測装置を含むコンピュータに実行させるプログラムであって、前記情報処理システムは、仮想マシン上で動作するアプリケーションに関する情報が入手可能な、１または複数の第１の仮想マシンを含む第１アプリケーション部と、仮想マシン上で動作するアプリケーションに関する情報が入手できない、１または複数の第２の仮想マシンを含む第２アプリケーション部と、ハードウェア部と、を有する仮想化システムであり、前記プログラムは、前記第１アプリケーション部の各前記第１の仮想マシンの前記アプリケーションに関する情報に基づいて、前記第１の仮想マシンの性能モデルを夫々生成する処理と、前記第２アプリケーション部並びに前記ハードウェア部を計測対象部とし、当該計測対象部を計測対象として計測した結果に基づいて、前記計測対象部の性能モデルを生成する処理と、前記第１アプリケーション部の各前記第１の仮想マシンの性能モデルと、前記計測対象部の性能モデルとに対し、一方の部の性能モデルにおける出力値を、他方の部の性能モデルにおける入力値として利用する合成処理により、該２部間の依存関係が反映された、前記情報処理システムの性能モデルを生成する処理と、をコンピュータに実行させることを特徴する、プログラム。
【０１６４】
（付記１２）付記１１に記載のプログラムを記憶する、ことを特徴とするコンピュータ読み取り可能な記録媒体。
【符号の説明】
【０１６５】
１    性能予測装置
２    仮想化システム
３    計測対象部性能モデル生成部
４    仮想マシン性能モデル生成部
５    システム性能モデル合成部
１０    性能予測装置
３０    入力内容指定部
３１    情報収集部
３２    計測対象部性能モデル生成部
４０    性能モデル群
４１    記憶部
４２    仮想マシン性能モデル特定部
５０    システム性能モデル合成部
６０    リソース要求
６１    処理完了通知
２０１  第１の仮想マシン
２０２  仮想マシンモニタ
２０３  物理マシンのハードウェア
３００    ハードウェア部
３０１  第２の仮想マシン
３１０  計測対象部性能モデル
４００    第１アプリケーション部
４１０  仮想マシン性能モデル
５００    第２アプリケーション部
５０１    計測対象部
５１０    システム性能モデル
６０４    性能指標
【図１】
0005871018.tif 000002
【図２】
0005871018.tif 000003
【図３】
0005871018.tif 000004
【図４】
0005871018.tif 000005
【図５】
0005871018.tif 000006
【図６】
0005871018.tif 000007
【図７】
0005871018.tif 000008
【図８】
0005871018.tif 000009
【図９】
0005871018.tif 000010
【図１０】
0005871018.tif 000011