JP5807732B2 - 性能予測装置、性能予測方法および性能予測プログラム - Google Patents

性能予測装置、性能予測方法および性能予測プログラム Download PDF

Info

Publication number
JP5807732B2
JP5807732B2 JP2015509252A JP2015509252A JP5807732B2 JP 5807732 B2 JP5807732 B2 JP 5807732B2 JP 2015509252 A JP2015509252 A JP 2015509252A JP 2015509252 A JP2015509252 A JP 2015509252A JP 5807732 B2 JP5807732 B2 JP 5807732B2
Authority
JP
Japan
Prior art keywords
performance
performance prediction
software
program feature
performance data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015509252A
Other languages
English (en)
Other versions
JPWO2014167761A1 (ja
Inventor
大地 木村
大地 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2015509252A priority Critical patent/JP5807732B2/ja
Application granted granted Critical
Publication of JP5807732B2 publication Critical patent/JP5807732B2/ja
Publication of JPWO2014167761A1 publication Critical patent/JPWO2014167761A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、仮想化される情報処理システムの性能を予測する性能予測装置、性能予測方法および性能予測プログラムに関する。
仮想化技術のために発生するオーバヘッドは、情報処理システムの性能に影響を及ぼす。すなわち、仮想化しようとする情報処理システムに対して、実環境で運用する前に仮想化に伴うシステムの性能を予測することが重要である。
特許文献1には、情報処理システムの各構成要素の設計情報を基に、性能予測モデルを作成する性能予測装置が記載されている。特許文献1に記載された性能予測装置は、データベースに記憶されている仮想化のために発生する仮想マシンモニタごとのオーバヘッドを含んだ性能計算式を用いて、性能予測モデルのオーバヘッドを考慮する。
特許文献2には、ストレージ仮想化装置の構成要素のモデル情報を基に、ストレージシステムの性能予測モデルを作成する性能予測装置が記載されている。
特許文献3には、仮想化技術のために発生するオーバヘッドを含んだ性能評価関数および性能評価モデルを用いて、仮想化されたシステムの性能予測値を算出する性能予測装置が記載されている。
非特許文献1には、単独の仮想マシンにおける性能を予測したいアプリケーションソフトウェアのプログラム特徴量と類似しているプログラム特徴量を持つベンチマークソフトウェア(以下、「BM」という。)を用いて、単独の仮想マシンにおけるBM動作時の性能からアプリケーションソフトウェアの仮想マシンにおける性能予測値を算出する性能予測装置が記載されている。
非特許文献2には、複数のBMについて、単独の仮想マシンにおける動作時の性能と、複数の仮想マシンにおける様々な組み合わせのBMを動作させたときの性能を用いて、単独の仮想マシンにおけるアプリケーションソフトウェアを動作させたときの性能から、複数の仮想マシンにおけるアプリケーションソフトウェアおよび複数のBMが動作している状況における性能予測値を算出する性能予測装置が記載されている。
特開2012−146015号公報 特開2006−146354号公報 特開2010−009160号公報
Kenneth Hoste, Aashish Phansalkar, Lieven Eeckhout, Andy Georges, Lizy K. John, Koen De Bosschere, Performance Prediction based on Inherent Program Similarity, PACT’06 Proceedings of the 15th international conference on Parallel architectures and compilation techniques, 2006, September 16 − 20, Pages 114 − 122 Younggyun Koh, Rob Knauerhase, Paul Brett, Mic Bowman, Zhihua Wen, Calton Pu, An Analysis of Performance Interference Effectsin Virtual Environments, IEEE International Symposium on Performance Analysis of Systems & Software, 2007, Pages 200 − 209
特許文献1〜3に記載されている性能予測装置は、情報処理システムの各構成要素の設計情報および動作情報を基に、性能予測モデルを作成する。しかし、複数の仮想マシンが存在する場合、それらの仮想マシンを模倣する仮想マシンモニタの動作は複雑である。
すなわち、精緻な性能予測モデルを作成するには、仮想マシンモニタに対する多大な知識が求められる。また、仮想マシンモニタの動作が複雑であるため、設計情報などに複雑な動作などが正しく反映されないなどの理由により、性能予測装置は間違った性能予測モデルを作成しやすい。このため、作成される性能予測モデルの精度は低い可能性が高い。
また、非特許文献1に記載されている性能予測装置は、仮想マシンが単独の場合のみを考慮している。すなわち、この性能予測装置では複数の仮想マシンが存在する場合の性能を予測する手段を提供できないという問題がある。
また、非特許文献2に記載されている性能予測装置は、単独の仮想マシンでアプリケーションソフトウェアを動作させたときの性能を用いて、複数の仮想マシンでアプリケーションソフトウェアを動作させる場合の性能を予測する。しかし、仮想マシンが単独の場合の性能は、仮想マシンモニタのオーバヘッドによる影響をすでに受けた性能である。
すなわち、仮想マシンが単独の場合の性能は、仮想マシンが複数存在する場合の仮想マシンのオーバヘッドによる影響を予測するためのテストデータとして使用するには精度が落ちたデータである。よって、非特許文献2に記載されている性能予測装置では精度の高い性能予測ができないという問題がある。
そこで、本発明は、精度の高い性能予測モデルを使用して性能予測を実行できる性能予測装置、性能予測方法および性能予測プログラムを提供する。
本発明による性能予測装置は、複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する装置であり、ソフトウェアのプログラム特徴量が入力されると情報処理システムまたはソフトウェアの性能データを出力する性能予測モデルを用いる性能予測装置であって、試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで試験用ソフトウェアが動作したときの情報処理システムの性能データまたは試験用ソフトウェアの各性能データを出力とする予測モデルを性能予測モデルとして作成する性能予測モデル作成手段を備え、性能予測モデル作成手段は、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて予測モデルを作成することを特徴とする。
本発明による性能予測方法は、複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する性能予測方法であって、試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで試験用ソフトウェアが動作したときの情報処理システムの性能データまたは試験用ソフトウェアの各性能データを出力とする性能予測モデルを作成し、性能予測モデルに複数の評価対象ソフトウェアのプログラム特徴量を入力して、複数の評価対象ソフトウェアが各仮想マシンで動作するときの情報処理システムの性能データまたは複数の評価対象ソフトウェアの各性能データを得、性能予測モデルを作成するときに、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて当該性能予測モデルを作成することを特徴とする。
本発明による性能予測プログラムは、複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する性能予測プログラムであって、コンピュータに、試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで試験用ソフトウェアが動作したときの情報処理システムの性能データまたは試験用ソフトウェアの各性能データを出力とする性能予測モデルを作成する性能予測モデル作成処理、および性能予測モデルに複数の評価対象ソフトウェアのプログラム特徴量を入力して、複数の評価対象ソフトウェアが各仮想マシンで動作するときの情報処理システムの性能データまたは複数の評価対象ソフトウェアの各性能データを得る性能データ取得処理を実行させ、性能予測モデル作成処理で、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて性能予測モデルを作成させることを特徴とする。
本発明によれば、精度の高い性能予測モデルを使用して性能予測を実行できる。
性能予測装置100の第1の実施形態の構成例を示すブロック図である。 性能予測装置100の第1の実施形態の性能予測処理の動作を示すフローチャートである。 性能予測モデル作成部101が作成した性能予測モデルへ入力される入力変数の例を示す説明図である。 性能予測モデル作成部101が性能予測モデルのパラメータを調整するときに使用するテストパターンの例を示す説明図である。 性能予測装置100の第2の実施形態の構成例を示すブロック図である。 性能予測装置100の第2の実施形態の性能予測処理の動作を示すフローチャートである。 本発明による性能予測装置の概要を示すブロック図である。
実施形態1.
以下、本発明の実施形態を図面を参照して説明する。図1は、性能予測装置100の第1の実施形態の構成例を示すブロック図である。図1に示す性能予測装置100は、性能予測モデル作成部101と、性能予測部102とを含む。
性能予測装置100は、複数の仮想マシンが動作する情報処理システム(以下、「予測対象システム」という。)の性能を予測する。性能予測装置100は、複数の仮想マシンでアプリケーションソフトウェアが稼働するときの、予測対象システムの性能データと各仮想マシンで動作するアプリケーションソフトウェアの性能データとを出力する。
性能予測モデル作成部101は、性能予測モデルを作成する機能を有する。性能予測モデルは、BMのプログラム特徴量を入力すると、予測対象システム上の各仮想マシンでBMが動作したときの予測対象システムの性能データと各仮想マシンで動作するBMの性能データとを出力する。
ここで、BMは、コンピュータハードウェアやソフトウェアの性能を計測するソフトウェアである。BMは、例えば、CPU(Central Processing Unit)やディスクなどの特定のリソースに負荷を掛けて性能を測るソフトウェアである。また、BMは、オークションサイトやエレクトロニックコマース(Eコマース)システムなど、システム全体の性能を測るために特定の利用形態を模倣したソフトウェアでもよい。
また、予測対象システムの性能と各仮想マシンで動作するBMの性能は、スループット、応答時間、リソース使用率、またはBMが独自に定義したスコアなどである。
また、プログラム特徴量は、ソフトウェアプログラムの特徴や性質を表す量である。プログラム特徴量は、ソフトウェアが動作する環境に依存しない量である。
プログラム特徴量は、非特許文献1に記載されている命令混合率(instruction mix)、命令レベルの並列性(instruction−level parallelism)、レジスタの特性(register traffic characteristics)、負荷特性(working set)、データ転送とストライドのパターン(data stream strides)、分岐予測成功率(branch predictability)などである。また、プログラム特徴量は、プロファイラなどを用いた動的プログラム解析で得られる指標などでもよい。
また、性能予測モデルは、学習や回帰などの方法によって、入力データに対して適当な出力データを決定できる仕組みを持つモデルであればどのようなモデルでもよい。性能予測モデルは、ニューラルネットワークや隠れマルコフモデルなどで実現されてもよい。また、性能予測モデルは、多項式関数などによる近似式やノンパラメトリック回帰関数で実現されてもよい。
性能予測部102は、性能予測モデル作成部101が作成した性能予測モデルに、予測対象システム上の各仮想マシンで動作する各アプリケーションソフトウェア(以下、「想定AP」という。)のプログラム特徴量を入力し、各想定APが動作するときの予測される予測対象システムの性能データと各想定APの各性能データとを出力する機能を有する。
なお、性能予測部102は、予測される性能データを表示してもよい。また、性能予測部102は、性能予測装置100以外の他の装置に性能データを出力してもよい。
なお、本実施形態における性能予測モデル作成部101および性能予測部102は、例えば、プログラムに従って動作するCPUによって実現される。
以下、本実施形態の性能予測処理の動作を図2のフローチャートを参照して説明する。図2は、性能予測装置100の第1の実施形態の性能予測処理の動作を示すフローチャートである。
性能予測モデル作成部101は、初期の性能予測モデルを作成する(ステップS101)。初期の性能予測モデルは、各仮想マシンで動作するソフトウェアのプログラム特徴量を入力変数とし、予測対象システムの性能データと各ソフトウェアの性能データとを出力変数とするモデルである。
図3に入力変数の例を示す。図3は、性能予測モデル作成部101が作成した性能予測モデルへ入力される入力変数の例を示す説明図である。図3には、仮想マシンが2つあり、各仮想マシンにおいて動作するソフトウェアのプログラム特徴量が3種類ある場合の入力変数の例が示されている。
図3に示す例の場合、性能予測モデルへ入力される入力変数の数は、2つの仮想マシンと3種類のプログラム特徴量より、2×3=6つとなる。なお、ユーザは、プログラム特徴量をすべて入力変数として使用せずに、自分が選択したプログラム特徴量のみを入力変数としてもよい。出力変数も同様に、自分が選択した性能データのみを出力変数としてもよい。
次に、性能予測モデル作成部101は、性能予測モデルが持つパラメータを調整する(ステップS102)。具体的には、性能予測モデル作成部101は、性能予測モデルに各BMのそれぞれの組み合わせに対応する各BMのプログラム特徴量を入力したときに、性能予測モデルから予測対象システム上の各仮想マシンで各BMが動作したときの予測対象システムの適切な性能データ、または各BMの適切な性能データ、または適切な双方の性能データが出力されるようにパラメータを調整する。
ここで、性能予測モデルが持つパラメータとは、入力データに対して適切な出力データを決めるために調整する値である。性能予測モデルが持つパラメータは、性能予測モデルがニューラルネットワークの場合であればシナプス荷重である。また、性能予測モデルが回帰式の場合であれば各係数などである。
パラメータの調整の手法は、入力データに対して適切な出力データを決定できる手法であればどのような手法でもよい。パラメータの調整の手法は、バックプロパゲーションや遺伝的アルゴリズムでもよい。
図4は、性能予測モデル作成部101が性能予測モデルのパラメータを調整するときに使用するテストパターンの例を示す説明図である。図4には、予測対象システムにおいて仮想マシンが2つ稼働しており、動作するBMが2つの場合のテストパターンが示されている。図4に示す例の場合、パラメータ調整に使用されるテストパターンの数は、2つの仮想マシンと2つの動作するBMより、2×2=4つとなる。
例えば、BM1が仮想マシン1において動作し、BM2が仮想マシン2において動作している1つ目のテストパターンの場合、BM1のプログラム特徴量とBM2のプログラム特徴量が入力データとなり、そのときの予測対象システムの性能データ、仮想マシン1で動作したBM1の性能データおよび仮想マシン2で動作したBM2の性能データが出力データとなる。これらの入力データおよび出力データをもとに、性能予測モデル作成部101は、パラメータを調整する。
ここで、仮想マシンの仕様が同一の場合など各仮想マシンの区別をつけなくてもよい場合には、ユーザはテストパターンを省略できる。
例えば、図4に示す例では、BM1が仮想マシン1で動作しBM2が仮想マシン2で動作するテストパターンと、BM2が仮想マシン1で動作しBM1が仮想マシン2で動作するテストパターンとがそれぞれ分けられている。しかし、仮想マシン1と仮想マシン2との区別をつけなくてもよい場合には、これらのテストパターンを分けなくてもよい。
次に、性能予測モデル作成部101は、性能予測モデルの調整が十分か否かを判断する(ステップS103)。
ここで、性能予測モデル作成部101は、性能予測モデルの調整が十分であると判断する条件を、予測対象システムに合わせて設定すればよい。例えば、性能予測モデル作成部101は、「予測対象システムの出力データと性能予測モデルが予測した出力データとの誤差が、予め定められた閾値未満である」という条件を使用できる。
また、性能予測モデル作成部101は、「予測対象システムの出力データと性能予測モデルが予測した出力データとの誤差が、所定の回数の調整を経ても変化せず、調整が平衡状態にあるとみなせる」という条件を使用してもよい。また、性能予測モデル作成部101は、「予め定められた回数調整した」という条件を使用してもよい。
性能予測モデルの調整が十分ではないと性能予測モデル作成部101が判断すると(ステップS103のNo)、性能予測装置100は、ステップS102に処理を移動する。
ステップS102において、性能予測モデル作成部101は、再び性能予測モデルのパラメータを調整する。性能予測装置100は、調整が十分であると性能予測モデル作成部101が判断するまで調整を繰り返す。
性能予測モデルの調整が十分であると性能予測モデル作成部101が判断すると(ステップS103のYes)、性能予測装置100は、ステップS104に処理を移動する。
調整が十分な場合、性能予測部102は、作成された性能予測モデルに予測対象システム上の各仮想マシンで動作する想定APのプログラム特徴量を入力する。そして、性能予測部102は、予測対象システムの予測される性能データもしくは各想定APの予測される性能データまたは双方の性能データを出力させる(ステップS104)。
例えば、仮想マシンが2つ、想定APが2つの場合には、図3に示されるような項目の入力変数が入力される。この場合、図3に示す仮想マシン1上のソフトウェアのプログラム特徴量1〜3は、1つ目の想定APのプログラム特徴量1〜3が対応する。同様に、仮想マシン2上のプログラム特徴量1〜3は、2つ目の想定APのプログラム特徴量1〜3が対応する。このようなデータが入力されると、性能予測モデルは、入力されたデータに基づき予測される性能データを出力する。
本実施形態の性能予測装置100を使用する場合、使用するユーザは、BMのプログラム特徴量から性能予測モデルを作成し、その性能予測モデルを基に、想定APが予測対象システムで動作する場合の性能を予測できる。
その理由は、本実施形態の性能予測装置100の性能予測モデル作成部101は、各BMのプログラム特徴量を入力データとし、予測対象システム上の各仮想マシンでBMが動作したときの予測対象システムの性能データと各BMの性能データとを出力データとする性能予測モデルを作成する。つまり、性能予測モデル作成部101は、プログラム特徴量を入力し、各仮想マシンでソフトウェアが動作する場合の性能データを出力する性能予測モデルを作成する。
プログラム特徴量は、ソフトウェアが動作するプラットフォームである仮想マシンや仮想マシンモニタに依存しない。よって、性能予測装置100は、各ソフトウェアのプログラム特徴量を入力することで、仮想マシンが複数存在する場合の仮想マシンモニタのオーバヘッドによる純粋な影響をモデル化できる。
非特許文献2に記載された方法において、入力される指標はすでに仮想マシンモニタの影響を受けている。よって、非特許文献2に記載された方法は、仮想マシンが複数存在する場合の仮想マシンモニタのオーバヘッドの純粋な影響をモデル化する際に使用するには不適当な方法である。しかし、本実施形態の性能予測装置を使用すれば、上記の問題は解消される。
実施形態2.
次に、本発明の第2の実施形態を説明する。図5は、性能予測装置100の第2の実施形態の構成例を示すブロック図である。
性能予測装置100は、性能予測モデル作成部101と、性能予測部102と、プログラム特徴量変換モデル作成部103と、プログラム特徴量推定部104とを含む。
プログラム特徴量変換モデル作成部103は、単独の仮想マシンが動作する予測対象システムにおいて、仮想マシンでBMが動作したときの予測対象システムの性能データとBMの性能データとを入力データとし、BMのプログラム特徴量を出力データとするプログラム特徴量変換モデルを作成する機能を有する。
ここで、プログラム特徴量変換モデルは、学習や回帰などの方法によって、入力データに対して適当な出力データを決定できる仕組みを持つモデルであればどのようなモデルでもよい。プログラム特徴量変換モデルは、ニューラルネットワークや隠れマルコフモデルなどで実現されてもよい。また、プログラム特徴量変換モデルは、多項式関数などによる近似式やノンパラメトリック回帰関数で実現されてもよい。
なお、入力変数も出力変数も多変数であることが多いため、プログラム特徴量変換モデルは、多変数を扱うことができるモデルであることが望ましい。
プログラム特徴量推定部104は、プログラム特徴量変換モデル作成部103が作成したプログラム特徴量変換モデルに、プログラム特徴量を推定したいアプリケーションソフトウェア(以下、「推定対象AP」という。)が仮想マシンで動作したときの予測対象システムの性能データと推定対象APの性能データとを入力し、推定対象APの推定されるプログラム特徴量を出力させる機能を有する。
なお、プログラム特徴量推定部104は、推定されるプログラム特徴量を表示してもよい。また、プログラム特徴量推定部104は、性能予測装置100以外の他の装置に推定されるプログラム特徴量を出力してもよい。
なお、本実施形態におけるプログラム特徴量変換モデル作成部103およびプログラム特徴量推定部104は、例えば、プログラムに従って動作するCPUによって実現される。
以下、本実施形態の性能予測処理の動作を図6のフローチャートを参照して説明する。図6は、性能予測装置100の性能予測処理の動作を示すフローチャートである。
プログラム特徴量変換モデル作成部103は、初期のプログラム特徴量変換モデルを作成する(ステップS201)。初期のプログラム特徴量変換モデルは、予測対象システム上の単独の仮想マシンでソフトウェアが動作した場合の予測対象システムの性能データとソフトウェアの性能データとを入力変数とし、ソフトウェアのプログラム特徴量を出力変数とするモデルである。
なお、ユーザは、予測対象システムの性能データとソフトウェアの性能データをすべて入力変数として使用せずに、自分が選択した性能データのみを入力変数としてもよい。ユーザは、出力変数も同様に、自分が選択したプログラム特徴量のみを出力変数としてもよい。
プログラム特徴量変換モデル作成部103は、プログラム特徴量変換モデルが持つパラメータを調整する(ステップS202)。具体的には、プログラム特徴量変換モデル作成部103は、各BMについて、プログラム特徴量変換モデルに予測対象システム上の単独の仮想マシンで1つのBMが動作したときの予測対象システムの性能データとBMの性能データを入力したときに、プログラム特徴量変換モデルからBMの適切なプログラム特徴量が出力されるようにパラメータを調整する。
ここで、プログラム特徴量変換モデルが持つパラメータとは、入力データに対して適切な出力データを決めるために調整する値である。プログラム特徴量変換モデルが持つパラメータは、プログラム特徴量変換モデルがニューラルネットワークの場合であればシナプス荷重である。また、プログラム特徴量変換モデルが持つパラメータは、プログラム特徴量変換モデルが回帰式の場合であれば各係数などである。
パラメータの調整の手法は、入力データに対して適切な出力データを決定できる手法であればどのような手法でもよい。パラメータの調整の手法は、バックプロパゲーションや遺伝的アルゴリズムでもよい。
次に、プログラム特徴量変換モデル作成部103は、プログラム特徴量変換モデルの調整が十分か否かを判断する(ステップS203)。
ここで、プログラム特徴量変換モデル作成部103は、プログラム特徴量変換モデルの調整が十分であると判断する条件を、予測対象システムおよびBMに合わせて設定すればよい。例えば、プログラム特徴量変換モデル作成部103は、「BMのプログラム特徴量とプログラム特徴量変換モデルが推定したプログラム特徴量との誤差が、予め定められた閾値未満である」という条件を使用できる。
また、プログラム特徴量変換モデル作成部103は、「BMのプログラム特徴量とプログラム特徴量変換モデルが推定したプログラム特徴量との誤差が、所定の回数の調整を経ても変化せず、調整が平衡状態にあるとみなせる」という条件を使用してもよい。また、プログラム特徴量変換モデル作成部103は、「予め定められた回数調整した」という条件を使用してもよい。
プログラム特徴量変換モデルの調整が十分ではないとプログラム特徴量変換モデル作成部103が判断すると(ステップS203のNo)、性能予測装置100は、ステップS202に処理を移動する。
ステップS202において、プログラム特徴量変換モデル作成部103は、再びプログラム特徴量変換モデルのパラメータを調整する。性能予測装置100は、調整が十分であるとプログラム特徴量変換モデル作成部103が判断するまで調整を繰り返す。
プログラム特徴量変換モデルの調整が十分であるとプログラム特徴量変換モデル作成部103が判断すると(ステップS203のYes)、性能予測装置100は、ステップS204に処理を移動する。
プログラム特徴量推定部104は、作成されたプログラム特徴量変換モデルに、予測対象システム上の単独の仮想マシンで推定対象APが動作したときの予測対象システムの性能データと推定対象APの性能データとを入力し、推定対象APの推定されるプログラム特徴量を出力させる(ステップS204)。
以後、性能予測装置100は、出力されたプログラム特徴量を用いて、推定対象APが予測対象システムで動作する場合の性能を予測する。ステップS205〜ステップS208の各処理は、第1の実施形態の性能予測処理の動作におけるステップS101〜ステップS104の各処理と同様であるため、説明を省略する。
本実施形態の性能予測装置を使用する場合、使用するユーザは、想定APのプログラム特徴量を事前に知らなくても、想定APが予測対象システムで動作する場合の性能を予測できる。
その理由は、本実施形態に係る性能予測装置100のプログラム特徴量変換モデル作成部103は、単独の仮想マシンが動作する予測対象システムにおいて、仮想マシンでBMが動作したときの予測対象システムの性能データとBMの性能データとを入力データとし、BMのプログラム特徴量を出力データとするプログラム特徴量変換モデルを作成する。
そして、プログラム特徴量推定部104は、作成されたプログラム特徴量変換モデルに、想定APが仮想マシンで動作したときの予測対象システムの性能データと想定APの性能データとを入力し、推定される想定APのプログラム特徴量を出力させる。
第1の実施形態と比較すると、本実施形態に係る性能予測装置100の性能予測部102は、プログラム特徴量推定部が推定した想定APのプログラム特徴量を入力データとして性能を予測する。このように、本実施形態の性能予測装置100を使用した場合、使用するユーザは、想定APのプログラム特徴量を知らない場合でも性能を予測できる。
次に、本発明の概要を説明する。図7は、本発明による性能予測装置の概要を示すブロック図である。本発明による性能予測装置1は、複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する装置であり、ソフトウェアのプログラム特徴量が入力されると情報処理システムまたはソフトウェアの性能データを出力する性能予測モデルを用いる性能予測装置であって、試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで試験用ソフトウェアが動作したときの情報処理システムの性能データまたは試験用ソフトウェアの各性能データを出力とする予測モデルを性能予測モデルとして作成する性能予測モデル作成手段2(例えば、性能予測モデル作成部101)を備える。
そのような構成により、この性能予測装置は、精度の高い性能予測モデルを使用して性能予測を実行できる。
また、性能予測装置1は、単独の仮想マシンが動作する情報処理システムにおける当該仮想マシンで試験用ソフトウェアが動作したときの情報処理システムの性能データまたは試験用ソフトウェアの性能データを入力とし、試験用ソフトウェアのプログラム特徴量を出力とするプログラム特徴量変換モデルを作成するプログラム特徴量変換モデル作成手段(例えば、プログラム特徴量変換モデル作成部103)と、プログラム特徴量変換モデルに評価対象ソフトウェアが仮想マシンで動作したときの情報処理システムの性能データまたは評価対象ソフトウェアの性能データを入力して、評価対象ソフトウェアのプログラム特徴量を得るプログラム特徴量推定手段(例えば、プログラム特徴量推定部104)とを備えていてもよい。
そのような構成により、この性能予測装置を使用する場合、使用するユーザは、アプリケーションソフトウェアのプログラム特徴量を事前に知らなくても、アプリケーションソフトウェアが予測対象システムで動作する場合の性能を予測できる。
また、性能予測モデル作成手段2は、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて予測モデルを作成してもよい。
そのような構成により、この性能予測装置を使用する場合、使用するユーザは、自分が選択したプログラム特徴量の組み合わせのみを入力変数とすることができる。
この出願は、2013年4月9日に出願された日本出願特願2013−081378を基礎とする優先権を主張し、その開示の全てをここに取り込む。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
1、100 性能予測装置
2 性能予測モデル作成手段
101 性能予測モデル作成部
102 性能予測部
103 プログラム特徴量変換モデル作成部
104 プログラム特徴量推定部

Claims (6)

  1. 複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する装置であり、ソフトウェアのプログラム特徴量が入力されると前記情報処理システムまたは前記ソフトウェアの性能データを出力する性能予測モデルを用いる性能予測装置であって、
    試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで前記試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの各性能データを出力とする予測モデルを前記性能予測モデルとして作成する性能予測モデル作成手段を備え
    前記性能予測モデル作成手段は、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて前記予測モデルを作成する
    ことを特徴とする性能予測装置。
  2. 単独の仮想マシンが動作する情報処理システムにおける当該仮想マシンで試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの性能データを入力とし、前記試験用ソフトウェアのプログラム特徴量を出力とするプログラム特徴量変換モデルを作成するプログラム特徴量変換モデル作成手段と、
    前記プログラム特徴量変換モデルに評価対象ソフトウェアが前記仮想マシンで動作したときの前記情報処理システムの性能データまたは前記評価対象ソフトウェアの性能データを入力して、前記評価対象ソフトウェアのプログラム特徴量を得るプログラム特徴量推定手段とを備える
    請求項1記載の性能予測装置。
  3. 複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する性能予測方法であって、
    試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで前記試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの各性能データを出力とする性能予測モデルを作成し、
    前記性能予測モデルに前記複数の評価対象ソフトウェアのプログラム特徴量を入力して、前記複数の評価対象ソフトウェアが前記各仮想マシンで動作するときの前記情報処理システムの性能データまたは前記複数の評価対象ソフトウェアの各性能データを得
    前記性能予測モデルを作成するときに、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて当該性能予測モデルを作成する
    ことを特徴とする性能予測方法。
  4. 単独の仮想マシンが動作する情報処理システムにおける当該仮想マシンで試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの性能データを入力とし、前記試験用ソフトウェアのプログラム特徴量を出力とするプログラム特徴量変換モデルを作成し、
    前記プログラム特徴量変換モデルに評価対象ソフトウェアが前記仮想マシンで動作したときの前記情報処理システムの性能データまたは前記ソフトウェアの性能データを入力して、前記評価対象ソフトウェアのプログラム特徴量を得る
    請求項記載の性能予測方法。
  5. コンピュータに、
    複数の仮想マシンが動作する情報処理システムまたは複数の仮想マシンのそれぞれで動作する複数の評価対象ソフトウェアの性能を予測する処理を実行させる性能予測プログラムであって、
    コンピュータに、
    試験用ソフトウェアのプログラム特徴量を入力とし、各仮想マシンで前記試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの各性能データを出力とする性能予測モデルを作成する性能予測モデル作成処理、および
    前記性能予測モデルに前記複数の評価対象ソフトウェアのプログラム特徴量を入力して、前記複数の評価対象ソフトウェアが前記各仮想マシンで動作するときの前記情報処理システムの性能データまたは前記複数の評価対象ソフトウェアの各性能データを得る性能データ取得処理を実行させ
    前記性能予測モデル作成処理で、複数の仮想マシンのそれぞれと複数の試験用ソフトウェアのそれぞれとによる複数の組み合わせを用いて前記性能予測モデルを作成させるための性能予測プログラム。
  6. コンピュータに、
    単独の仮想マシンが動作する情報処理システムにおける当該仮想マシンで試験用ソフトウェアが動作したときの前記情報処理システムの性能データまたは前記試験用ソフトウェアの性能データを入力とし、前記試験用ソフトウェアのプログラム特徴量を出力とするプログラム特徴量変換モデルを作成する変換モデル作成処理、および
    前記プログラム特徴量変換モデルに評価対象ソフトウェアが前記仮想マシンで動作したときの前記情報処理システムの性能データまたは前記評価対象ソフトウェアの性能データを入力して、前記評価対象ソフトウェアのプログラム特徴量を得る特徴量取得処理を実行させる
    請求項記載の性能予測プログラム。
JP2015509252A 2013-04-09 2014-01-23 性能予測装置、性能予測方法および性能予測プログラム Active JP5807732B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015509252A JP5807732B2 (ja) 2013-04-09 2014-01-23 性能予測装置、性能予測方法および性能予測プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2013081378 2013-04-09
JP2013081378 2013-04-09
PCT/JP2014/000330 WO2014167761A1 (ja) 2013-04-09 2014-01-23 性能予測装置、性能予測方法および性能予測プログラム
JP2015509252A JP5807732B2 (ja) 2013-04-09 2014-01-23 性能予測装置、性能予測方法および性能予測プログラム

Publications (2)

Publication Number Publication Date
JP5807732B2 true JP5807732B2 (ja) 2015-11-10
JPWO2014167761A1 JPWO2014167761A1 (ja) 2017-02-16

Family

ID=51689185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015509252A Active JP5807732B2 (ja) 2013-04-09 2014-01-23 性能予測装置、性能予測方法および性能予測プログラム

Country Status (2)

Country Link
JP (1) JP5807732B2 (ja)
WO (1) WO2014167761A1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010009160A (ja) * 2008-06-25 2010-01-14 Nec Corp 性能値算出装置
JP2010271863A (ja) * 2009-05-20 2010-12-02 Toshiba Corp 情報処理装置
JP5742125B2 (ja) * 2010-07-21 2015-07-01 富士通株式会社 プログラム、情報生成装置及び情報生成方法

Also Published As

Publication number Publication date
JPWO2014167761A1 (ja) 2017-02-16
WO2014167761A1 (ja) 2014-10-16

Similar Documents

Publication Publication Date Title
US10032114B2 (en) Predicting application performance on hardware accelerators
US10372422B2 (en) Performance verification device for verifying performance of program, method, and recording medium having program recorded thereon for causing computer to perform the method
WO2018150798A1 (ja) モデル推定システム、方法およびプログラム
CN109074349A (zh) 处理数据以表征电池的热行为
US20160117199A1 (en) Computing system with thermal mechanism and method of operation thereof
JP2010211684A (ja) データ処理方法、データ処理プログラム、データ処理装置
JP6854727B2 (ja) ヘテロジニアスシステムにおけるアプリケーション性能の近似計算
JP5807732B2 (ja) 性能予測装置、性能予測方法および性能予測プログラム
JP2014174609A (ja) ハードウェア構成見積システム、ハードウェア構成見積方法及びハードウェア構成見積プログラム
JP2012128771A (ja) 情報処理装置及びプログラム
Hauck et al. Towards Performance Prediction for Cloud Computing Environments based on Goal-oriented Measurements.
von Kistowski et al. Univariate interpolation-based modeling of power and performance
JP5765266B2 (ja) 性能評価方法、情報処理装置およびプログラム
JP2008204350A (ja) 電力消費見積もりシステムおよび電力消費見積もり方法
Barve et al. Fecbench: An extensible framework for pinpointing sources of performance interference in the cloud-edge resource spectrum
US10929177B2 (en) Managing resources for multiple trial distributed processing tasks
JP5532052B2 (ja) 評価モデル分析システム、評価モデル分析方法およびプログラム
JP5215343B2 (ja) 予測値算出装置
Nozdrzykowski et al. Testing the significance of parameters of models estimating execution time of parallel program loops according to the Open MPI Standard
Jain et al. An approach for OO software size estimation using Predictive Object Point Metrics
JPWO2013141018A1 (ja) 最適システム設計支援装置
WO2024127523A1 (ja) 処理負荷推定システム、及び処理負荷推定方法
JP2018041262A (ja) コスト算出プログラム
JP6761788B2 (ja) 予測装置、予測方法及び予測プログラム
JP4539405B2 (ja) トランザクション・プロファイル作成方法および装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150811

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150824

R150 Certificate of patent or registration of utility model

Ref document number: 5807732

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150