(57)【要約】  性能評価装置（１０）は、対象プログラム（４０）の構造を待ち行列モデルにより表したプログラムモデル式（８１）と、対象プログラム（４０）によるハードウェアリソースの要求構造を待ち行列モデルにより表したリソースモデル式（８２）とが組み合わせられた処理性能モデル式（８３）のパラメータの値（８４）を、対象プログラムを評価用計算機（２１）で動作させた結果を示す性能データ（５０）に基づき計算して、評価モデル式（８５）を生成する。性能評価装置（１０）は、評価モデル式（８４）のパラメータに、対象システムのハードウェアの構成及び能力を示す計算機リソースデータ（６０）を設定して、対象システムで対象プログラム（４０）を動作させた場合の性能を評価する。
2016181549.tif 000002
【特許請求の範囲】
【請求項１】
対象プログラムの構造を待ち行列モデルにより表したプログラムモデル式と、前記対象プログラムによるハードウェアリソースの要求構造を待ち行列モデルにより表したリソースモデル式とが組み合わせられた処理性能モデル式のパラメータの値を、前記対象プログラムを評価用計算機で動作させた結果を示す性能データに基づき計算して、評価モデル式を生成する評価モデル生成部と、
前記評価モデル生成部によって生成された評価モデル式のパラメータに、対象システムのハードウェアの構成及び能力を示す計算機リソースデータを設定して、前記対象システムで前記対象プログラムを動作させた場合の性能を評価する性能評価部と
を備える性能評価装置。
【請求項２】
前記プログラムモデル式は、リクエスト１つ当たりの平均処理時間Ｔｑａを、窓口数ｎａと、リクエストの到着率λａと、リクエスト１つ当たりのプロセスの処理時間Ｔｓａとを用いて表した式であり、
前記リソースモデル式は、リクエスト１つ当たりの平均処理時間Ｔｑｒを、窓口数ｎｒと、リクエストの到着率λｒと、リクエスト１つ当たりのプロセスの処理時間Ｔｓｒとを用いて表した式であり、
前記処理性能モデル式は、前記プログラムモデル式における処理時間Ｔｓａを、前記リソースモデル式における平均処理時間Ｔｑｒを用いて表した式である
請求項１に記載の性能評価装置。
【請求項３】
前記性能データは、複数のインデックスｉについて、リスエストの到着率λｉに対するリクエスト１つ当たりの処理時間Ｔｑｉを示し、
前記評価モデル生成部は、
各インデックスｉについて、前記処理性能モデル式における前記到着率λａを前記性能データにおける前記到着率λｉとした場合に、前記処理性能モデル式における前記平均処理時間Ｔｑａが前記性能データにおける前記処理時間Ｔｑｉに近い時間になるように、前記処理性能モデル式における窓口数ｎａと、窓口数ｎｒと、リクエストの到着率λｒと、プロセスの処理時間Ｔｓｒとの少なくとも一部のパラメータについて、近似値、又は、計算機リソースをパラメータとして有する近似式を前記値として計算するパラメータ計算部と、
前記処理性能モデル式における前記少なくとも一部のパラメータを、前記パラメータ計算部によって計算された近似値又は近似式に置き換えて前記評価モデル式を生成するモデル式生成部と
を備える請求項２に記載の性能評価装置。
【請求項４】
前記パラメータ計算部は、複数のプログラムモデル式の各プログラムモデル式と、複数のリソースモデル式の各リソースモデル式とを組み合わせた複数の処理性能モデル式それぞれについて、前記少なくとも一部のパラメータについての近似値又は近似式を計算し、
前記モデル式生成部は、計算された近似値又は近似式の近似度が高い処理性能モデル式における前記少なくとも一部のパラメータを、その処理性能モデルについて計算された近似値又は近似式に置き換えて前記評価モデル式を生成する
請求項３に記載の性能評価装置。
【請求項５】
前記評価モデル生成部は、前記処理性能モデル式のパラメータを、前記対象プログラムを構成の異なる複数の評価用計算機で動作させて得られた複数の性能データに基づき計算して、前記評価モデル式を生成する
請求項１に記載の性能評価装置。
【請求項６】
対象プログラムの構造を待ち行列モデルにより表したプログラムモデル式と、前記対象プログラムによるハードウェアリソースの要求構造を待ち行列モデルにより表したリソースモデル式とが組み合わせられた処理性能モデル式のパラメータを、前記対象プログラムを評価用計算機で動作させた結果を示す性能データに基づき計算して、評価モデル式を生成する評価モデル生成処理と、
前記評価モデル生成処理によって生成された評価モデル式のパラメータの値に、対象システムのハードウェアの構成及び能力を示す計算機リソースデータを設定して、前記対象システムで前記対象プログラムを動作させた場合の性能を評価する性能評価処理と
をコンピュータに実行させる性能評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、システムの性能評価技術に関する。
【背景技術】
【０００２】
システム構築する際、使用する計算機リソースを適切に決定することが重要である。計算機リソースとは、ハードウェアの構成及び能力である。決定した計算機リソースが適切であるか確認するためには、決定した計算機リソースを用いた場合に、システムで求められる性能を満たすかどうかを事前に検証することが必要である。【０００３】
ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）分野及びスマートメータシステムといった大量のデータトランザクションが同時発生するような大規模なシステムでは、数百万件規模のデータ量を数分程度で処理することが求められる。しかし、大規模なシステムの場合、必要となるハードウェアが多く、ハードウェアの調達が困難なため事前に十分な検証を行えないことがある。【０００４】
そこで、大規模なシステムの場合、手持ちハードウェアを元に構成した試験環境で性能を測定し、測定した性能を計算により本番環境での性能に変換することが行われている。
例えば、試験環境と本番環境との規模の差異により、線形関数に従って性能が劣化するとして、試験環境で測定された性能を計算により本番環境の性能に変換することがある。しかし、実際には、規模の差異により、指数関数に従って性能が劣化する場合がある。この場合、事前検証では性能を満たすと判定されていても、本番環境で実際にシステムを稼働させると性能を満たさないことが起こる。【０００５】
特許文献１には、本番環境を構成する並列計算機の構成データから計算機の待ち行列モデルを生成することが記載されている。特許文献１では、待ち行列モデルに基づき想定されるレスポンス時間を計算している。これにより、特許文献１では、本番環境を用意することなく、本番環境の性能を予測している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−２９８５９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載された方法では、待ち行列モデルを生成するために、システムの構成を詳細なプログラム要素に分解し、各プログラム要素の特性値を取得する必要がある。具体的には、システムを構成する各プログラム要素の利用傾向と、各プログラム要素がリソースを使用する頻度及び使用する時間とを取得する必要がある。
そのため、外部調達したパッケージ製品のようなブラックボックス化された製品を組み込んだシステムでは、特許文献１に記載された方法を使用することは困難である。また、プログラムの構成が複雑な場合にも、特許文献１に記載された方法を使用することは困難である。
本発明は、簡便に性能評価を実施可能とすることを目的とする。
【課題を解決するための手段】
【０００８】
この発明に係る性能評価装置は、
対象プログラムの構造を待ち行列モデルにより表したプログラムモデル式と、前記対象プログラムによるハードウェアリソースの要求構造を待ち行列モデルにより表したリソースモデル式とが組み合わせられた処理性能モデル式のパラメータの値を、前記対象プログラムを評価用計算機で動作させた結果を示す性能データに基づき計算して、評価モデル式を生成する評価モデル生成部と、
前記評価モデル生成部によって生成された評価モデル式のパラメータに、対象システムのハードウェアの構成及び能力を示す計算機リソースデータを設定して、前記対象システムで前記対象プログラムを動作させた場合の性能を評価する性能評価部と
を備える。
【発明の効果】
【０００９】
この発明では、プログラムモデル式とリソースモデル式とが組み合わせられた処理性能モデル式のパラメータを、評価用計算機で動作させた結果を示す性能データに基づき計算して評価モデル式を生成する。これにより、システムを構成するプログラムの特性値を取得することなく、性能評価を行うことが可能である。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る性能評価装置１０の構成図。
【図２】評価用計算機２１が１台の場合の性能データ５０を示す図。
【図３】評価用計算機２１が複数台の場合の性能データ５０を示す図。
【図４】プログラムモデル式８１の一覧を示す図。
【図５】プログラムモデル式８１のモデルａ１の説明図。
【図６】プログラムモデル式８１のモデルａ２の説明図。
【図７】プログラムモデル式８１のモデルａ３の説明図。
【図８】プログラムモデル式８１のモデルａ４の説明図。
【図９】プログラムモデル式８１のモデルａ５の説明図。
【図１０】プログラムモデル式８１のモデルａ６の説明図。
【図１１】プログラムモデル式８１のモデルａ７の説明図。
【図１２】リソースモデル式８２の一覧を示す図。
【図１３】実施の形態１に係る性能評価装置１０の動作を示すフローチャート。
【図１４】実施の形態１に係る評価モデル生成処理のフローチャート
【図１５】特性表５３の説明図。
【図１６】計算機リソースデータ６０を示す図。
【図１７】評価結果７０を示す図。
【図１８】評価結果７０の他の例を示す図。
【図１９】実施の形態２に係る性能評価装置１０の構成図。
【図２０】処理性能モデル式８３のパターンを示す図。
【図２１】実施の形態２に係る評価モデル生成処理を示すフローチャート。
【図２２】実施の形態２に係る評価モデル生成処理の他の流れ示すフローチャート。
【図２３】実施の形態１，２に係る性能評価装置１０のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１１】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１に基づき、実施の形態１に係る性能評価装置１０の構成について説明する。
性能評価装置１０は、対象システムの計算機リソースで対象プログラム４０を動作させた場合の性能を評価する。ここでは、対象プログラム４０は、単体のプログラムではなく、機能単位等のある程度大きなプログラムの集合である。また、ここでは、対象システムの計算機リソースとは、本番環境として想定する計算機リソースのことである。
性能評価装置１０は、評価用計算機２１とネットワークを介して接続されている。性能評価装置１０は、測定部２０と、分析部３０とを備える。
【００１２】
評価用計算機２１は、対象プログラム４０を動作させるための計算機である。図１では、評価用計算機２１は１台だけ示されているが、計算機リソースの異なる評価用計算機２１が複数台あってもよい。
【００１３】
測定部２０は、評価用計算機２１で対象プログラム４０を動作させ、動作させた結果を示す性能データ５０を生成する。評価用計算機２１が複数台ある場合には、測定部２０は、各評価用計算機２１で対象プログラム４０を動作させ、各評価用計算機２１で動作させた結果を示す性能データ５０を生成する。
具体的には、測定部２０は、複数のインデックスｉについて、到着率λｉを設定する。測定部２０は、各インデックスｉについて、到着率λｉでリクエストを対象プログラム４０に送信し、リクエストの処理時間Ｔｑｉを計測する。ここでは、処理時間Ｔｑｉは、ラウンドトリップ時間である。
そして、測定部２０は、図２に示すように、評価用計算機２１の計算機リソースを示す計算機リソースデータ５１と、各インデックスｉについての到着率λｉ及び処理時間Ｔｑｉのデータセット５２とを含む性能データ５０を生成する。
【００１４】
図２では、評価用計算機２１が１台であることを想定して、性能データ５０には、計算機リソースデータ５１と、データセット５２との組が１つだけ存在した。しかし、評価用計算機２１が複数台ある場合には、図３に示すように、性能データ５０には、計算機リソースデータ５１と、データセット５２との組が評価用計算機２１の台数分存在することになる。
【００１５】
分析部３０は、測定部２０が生成した性能データ５０を用いて、対象システムの計算機リソースで対象プログラム４０を動作させた場合の性能を評価する。
分析部３０は、モデル取得部３１と、プログラムモデル記憶部３２と、リソースモデル記憶部３３と、評価モデル生成部３４と、性能評価部３５とを備える。
【００１６】
モデル取得部３１は、プログラムモデル記憶部３２から対象プログラム４０に対応するプログラムモデル式８１を取得するとともに、リソースモデル記憶部３３から対象プログラム４０に対応するリソースモデル式８２を取得する。
ここでは、モデル取得部３１は、性能評価装置１０の利用者からの指示に従い選択されたプログラムモデル式８１及びリソースモデル式８２を取得する。
【００１７】
プログラムモデル記憶部３２は、複数のプログラムモデル式８１を記憶する。プログラムモデル式８１は、対象プログラム４０の構造を待ち行列モデルにより表した式である。
具体的には、プログラムモデル式８１は、対象プログラム４０に対するリクエスト１つ当たりの平均処理時間Ｔｑａを、窓口数ｎａと、リクエストの到着率λａと、リクエスト１つ当たりのプロセスの処理時間Ｔｓａとを用いて表した式である。平均処理時間Ｔｑａとは、リクエストが到着してから、そのリクエストについてのプロセスの処理が完了するまでの平均時間である。
【００１８】
リソースモデル記憶部３３は、複数のリソースモデル式８２を記憶する。リソースモデル式８２は、対象プログラム４０によるハードウェアリソースの要求構造を待ち行列モデルにより表した式である。つまり、リソースモデル式８２は、対象プログラム４０内部のプロセスがＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やストレージＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）等のハードウェアリソースをどのように要求するかを待ち行列モデルにより表した式である。
ハードウェアリソースは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）によって各プロセスに配分される。そのため、各プロセスがハードウェアリソースを要求した場合の処理時間は、他のプロセスからのリクエストの有無によって変動する。そこで、ここでは、待ち行列モデルを用いて対象プログラム４０によるハードウェアリソースの要求構造を表している。
具体的には、リソースモデル式８２は、あるハードウェアリソースに対するリクエスト１つ当たりの平均処理時間Ｔｑｒを、窓口数ｎｒと、リクエストの到着率λｒと、リクエスト１つ当たりのプロセスの処理時間Ｔｓｒとを用いて表した式である。平均処理時間Ｔｑｒとは、リクエストが到着してから、そのリクエストについてのプロセスの処理が完了するまでの平均時間である。
【００１９】
評価モデル生成部３４は、モデル取得部３１によって取得されたプログラムモデル式８１及びリソースモデル式８２を組み合わせて処理性能モデル式８３を生成する。そして、評価モデル生成部３４は、処理性能モデル式８３の少なくとも一部のパラメータの値８４を、測定部２０によって生成された性能データ５０に基づき計算して、評価モデル式８５を生成する。
評価モデル生成部３４は、モデル合成部３４１と、パラメータ計算部３４２と、モデル式生成部３４３とを備える。
【００２０】
モデル合成部３４１は、プログラムモデル式８１及びリソースモデル式８２を組み合わせて処理性能モデル式８３を生成する。
プログラムモデル式８１におけるプロセスの処理時間Ｔｓａは、対象プログラム４０内部のプロセスが要求するハードウェアリソースの処理時間の合計と考えることができる。そこで、モデル合成部３４１は、プログラムモデル式８１におけるプロセスの処理時間Ｔｓａを、リソースモデル式８２における平均処理時間Ｔｑｒを用いて表して、処理性能モデル式８３を生成する。具体的には、対象プログラム４０が利用するハードウェアリソースをＰ個とすると、Ｔｓａ：＝Σｉ＝１ＰＴｑｒ＿ｉとする。
【００２１】
パラメータ計算部３４２は、生成した処理性能モデル式８３の少なくとも一部のパラメータを近似する値８４を、測定部２０によって生成された性能データ５０に基づき計算する。
ここでは、パラメータ計算部３４２は、各インデックスｉについて、処理性能モデル式８３における到着率λａを性能データ５０における到着率λｉとした場合に、処理性能モデル式８３における平均処理時間Ｔｑａが性能データ５０における処理時間Ｔｑｉに近い時間となるように、処理性能モデル式８３における窓口数ｎａと、窓口数ｎｒと、リクエストの到着率λｒと、プロセスの処理時間Ｔｓｒとの少なくとも一部のパラメータについての値８４を計算する。
【００２２】
モデル式生成部３４３は、処理性能モデル式８３のパラメータのうち、値８４が計算されたパラメータを値８４に置き換えて、評価モデル式８５を生成する。
【００２３】
性能評価部３５は、評価モデル生成部３４によって生成された評価モデル式８５のパラメータに、対象システムの計算機リソースデータ６０を設定して、対象システムで対象プログラム４０を動作させた場合の性能を評価する。そして、性能評価部３５は、評価結果７０を出力する。
【００２４】
図４から図１１に基づき、プログラムモデル式８１について説明する。
図４に示すように、ここでは、プログラムモデル記憶部３２が７種類のプログラムモデル式８１を記憶している。
なお、プログラムモデル記憶部３２が記憶するプログラムモデル式８１は、性能を評価したい対象プログラム４０に応じて決定されるものである。したがって、プログラムモデル記憶部３２は、図４に示す一部のプログラムモデル式８１だけを記憶していてもよいし、図４に示すプログラムモデル式８１以外にも他のプログラムモデル式８１を記憶していてもよい。
【００２５】
図５に基づき、図４のモデルａ１について説明する。
モデルａ１は、処理要求が到着するとすぐにプログラムが処理を実行する場合を模擬したモデルである。つまり、待ち時間Ｔｗａを０と仮定できる場合である。
モデルａ１の平均処理時間Ｔｑａ１＝Ｔｓａとなる。
【００２６】
図６に基づき、図４のモデルａ２について説明する。
モデルａ２は、到着率λａでプログラムが処理要求を受け取り１個のキューに蓄積して、１個のプロセスがキューから処理要求を取り出し、逐次実行する場合を模擬したモデルである。
モデルａ２の平均処理時間Ｔｑａ２は、ケンドール記号におけるＭ／Ｍ／１の挙動を示すと仮定できる。Ｍ／Ｍ／１の１つ目のＭは到着間隔の分布がポアソン分布に従うことを意味する。Ｍ／Ｍ／１の２つ目のＭは処理時間の分布がポアソン分布に従うことを意味する。Ｍ／Ｍ／１の１は窓口が１個であることを意味する。
したがって、モデルａ２の平均処理時間Ｔｑａ２＝ｍｍｎ（１，λａ，Ｔｓａ）となる。ここで、ｍｍｎ（ｎ，λａ，Ｔｓａ）は、ケンドールによる待ち行列モデルを数式化したものである。
【００２７】
ｍｍｎ（ｍ，Ｒ，Ｔｓ）は、サービス窓口数ｍ、平均到着率Ｒ、平均プロセス処理時間Ｔｓのときの平均処理時間Ｔｑを意味する。ｍｍｎ（ｍ，Ｒ，Ｔｓ）は以下の式により算出される。
ｍｍｎ（ｍ，Ｒ，Ｔｓ）＝Ｔｗ（ｍ，ｕ，Ｔｓ，ｐｓ）＋Ｔｓ
ｕ＝Ｒ＊Ｔｓ，ｐｓ＝ｕ／ｍ
Ｔｗ（ｍ，ｕ，Ｔｓ，ｐｓ）＝（Ｐ（ｍ，ｕ，ｐｓ）＊Ｔｓ）／（ｍ＊（１−ｐｓ））
Ｐ（ｍ，ｕ，ｐｓ）＝（１−Ｒｖｂ（ｍ，ｕ））／（１−ｐｓ＊Ｒｖｂ（ｍ，ｕ））
Ｒｖｂ（ｍ，ｕ）＝（１−（ｕｍ／ｍ！））／（Σｋ＝０ｍ（ｕｋ／ｍ！））
【００２８】
図７に基づき、図４のモデルａ３について説明する。
モデルａ３は、到着率λａでプログラムが処理要求を受け取り１個のキューに蓄積して、ｎａ個のプロセスがキューから処理要求を取り出し、逐次実行する場合を模擬したモデルである。
モデルａ３の平均処理時間Ｔｑａ３は、ケンドール記号におけるＭ／Ｍ／ｎの挙動を示すと仮定できる。Ｍ／Ｍ／ｎのｎは窓口がｎ個であることを意味する。したがって、モデルａ３の平均処理時間Ｔｑａ３＝ｍｍｎ（ｎａ，λａ，Ｔｓａ）となる。
【００２９】
図８に基づき、図４のモデルａ４について説明する。
モデルａ４は、到着率λａでプログラムが処理要求を受け取りｎａ個のキューに蓄積して、ｎａ個のプロセスが対応するキューから処理要求を取り出し、逐次実行する場合を模擬したモデルである。モデルａ４は、到着率λａがｎａ個に等分されて各キューに蓄積され、各プロセスが対応するキューから処理要求を取り出し、逐次実行する場合を模擬したモデルと言い換えることができる。
モデルａ４の平均処理時間Ｔｑａ４は、ケンドール記号におけるＭ／Ｍ／１の挙動を示すと仮定できる。したがって、モデルａ４の平均処理時間Ｔｑａ４＝ｍｍｎ（１，λａ／ｎａ，Ｔｓａ）となる。
【００３０】
図９に基づき、図４のモデルａ５について説明する。
モデルａ５は、モデルａ３が複数連なった場合を模擬したモデルである。つまり、モデルａ５は、到着率λａでプログラムが処理要求を受け取り１個のキューに蓄積して、ｎａ個のプロセスがキューから処理要求を取り出し、逐次実行する処理が複数連なった場合を模擬したモデルである。
モデルａ５の平均処理時間Ｔｑａ５は、複数のモデルａ３の総和を示すと仮定できる。したがって、モデルａ５の平均処理時間Ｔｑａ５＝ΣｉＴｑａ３＿ｉ＝Σｉｍｍｎ（ｎａ＿ｉ，λａ，Ｔｓａ＿ｉ）となる。また、ｍｍｎ（１，λａ／Σｉｎａ＿ｉ，ΣｉＴｓａ＿ｉ）＞Ｔｑａ５＞ｍｍｎ（Σｉｎａ＿ｉ，λａ，ΣｉＴｓａ＿ｉ）である。
【００３１】
図１０に基づき、図４のモデルａ６について説明する。
モデルａ６は、モデルａ４が複数連なった場合を模擬したモデルである。つまり、モデルａ６は、到着率λａでプログラムが処理要求を受け取りｎａ個のキューに蓄積して、ｎａ個のプロセスが対応するキューから処理要求を取り出し、逐次実行する処理が複数連なった場合を模擬したモデルである。
モデルａ６の平均処理時間Ｔｑａ６は、複数のモデルａ４の総和を示すと仮定できる。したがって、モデルａ６の平均処理時間Ｔｑａ６＝ΣｉＴｑａ４＿ｉ＝Σｉｍｍｎ（１，λａ／ｎａ，Ｔｓａ＿ｉ）となる。
【００３２】
図１１に基づき、図４のモデルａ７について説明する。
モデルａ７は、モデルａ６における各モデルａ４が次のモデルａ４の処理の完了を待つ場合を模擬したモデルである。
モデルａ７の平均処理時間Ｔｑａ７＝ｍｍｎ（１，λａ／ｎａ，Ｔｓａ）＊（ΣｉＴｓａ＿ｉ／Ｔｓａ）となる。ここで、モデルａ７におけるＴｓａ＝ΣｉＴｓａ＿ｉ／ｎａ＿ｉである。
【００３３】
モデルａ７が、モデルａ５における各モデルａ３が次のモデルａ３の処理の完了を待つ場合を模擬する場合には、モデルａ７の平均処理時間Ｔｑａ７＝ｍｍｎ（ｎａ＿ｉ，λａ，Ｔｓａ）＊（ΣｉＴｓａ＿ｉ／Ｔｓａ）となる。
【００３４】
図１２に基づき、リソースモデル式８２について説明する。
図１２に示すように、ここでは、リソースモデル記憶部３３が３種類のリソースモデル式８２を記憶している。
なお、リソースモデル記憶部３３が記憶するリソースモデル式８２は、性能を評価したい対象プログラム４０に応じて決定されるものである。したがって、リソースモデル記憶部３３は、図１２に示す一部のリソースモデル式８２だけを記憶していてもよいし、図１２に示すリソースモデル式８２以外にも他のリソースモデル式８２を記憶していてもよい。
【００３５】
モデルｒ１について説明する。
モデルｒ１は、ＣＰＵの性能特性を模擬したモデルである。
ＣＰＵの場合、プロセスの命令コードを実行するＣＰＵは、ケンドール記号におけるＭ／Ｍ／ｎモデルの挙動を示すと仮定できる。したがって、ＣＰＵのコア数をｎｒとすると、モデルｒ１の平均処理時間Ｔｑｒ１＝ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ）となる。ここで、Ｔｓｃｐｕは、単体処理特性時のＣＰＵの消費時間である。単体処理特性時のＣＰＵの消費時間とは、１つのＣＰＵのコアを使って１つのプロセスを処理する場合の消費時間である。
【００３６】
モデルｒ２について説明する。
モデルｒ２は、ストレージＩ／Ｏの性能特性を模擬したモデルである。
ストレージＩ／Ｏの場合、キューは１つであると考えられ、ストレージＩ／Ｏは、ケンドール記号におけるＭ／Ｍ／１モデルの挙動を示すと仮定できる。したがって、モデルｒ２の平均処理時間Ｔｑｒ２＝ｍｍｎ（１，λｒ，Ｔｓｓｔｒａｇｅ）となる。ここで、Ｔｓｓｔｒａｇｅは、単体処理特性時のストレージＩ／Ｏの消費時間である。単体処理特性時のストレージＩ／Ｏの消費時間とは、１つのストレージＩ／Ｏを使って１つのプロセスを処理する場合の消費時間である。
【００３７】
モデルｒ３について説明する。
モデルｒ３は、ネットワークＩ／Ｏの性能特性を模擬したモデルである。
ネットワークＩ／Ｏの場合、キューは１つであると考えられ、ネットワークＩ／Ｏは、ケンドール記号におけるＭ／Ｍ／１モデルの挙動を示すと仮定できる。したがって、モデルｒ３の平均処理時間Ｔｑｒ３＝ｍｍｎ（１，λｒ，Ｔｓｎｅｔ）となる。ここで、Ｔｓｎｅｔは、単体処理特性時のネットワークＩ／Ｏの消費時間である。単体処理特性時のネットワークＩ／Ｏの消費時間とは、１つのネットワークＩ／Ｏを使って１つのプロセスを処理する場合の消費時間である。
【００３８】
＊＊＊動作の説明＊＊＊
図１３に基づき、実施の形態１に係る性能評価装置１０の動作を説明する。
Ｓ１１の性能データ計測処理では、測定部２０は、評価用計算機２１で対象プログラム４０を動作させ、動作させた結果を示す性能データ５０を生成する。
ここでは、図２に示す性能データ５０が生成されたとする。
【００３９】
Ｓ１２のモデル取得処理では、モデル取得部３１は、利用者からの指示に従い、プログラムモデル記憶部３２から１つのプログラムモデル式８１を取得する。また、モデル取得部３１は、利用者からの指示に従い、リソースモデル記憶部３３から１つ以上のリソースモデル式８２を取得する。
ここでは、プログラムモデル式８１としてモデルａ２のＴｑａ２＝ｍｍｎ（１，λａ，Ｔｓａ）が取得され、リソースモデル式８２としてモデルｒ１のＴｑｒ１＝ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ）が取得されたとする。
【００４０】
Ｓ１３の評価モデル生成処理では、評価モデル生成部３４は、Ｓ１２で取得されたプログラムモデル式８１及びリソースモデル式８２を組み合わせて処理性能モデル式８３を生成する。そして、評価モデル生成部３４は、処理性能モデル式８３の少なくとも一部のパラメータを、Ｓ１２で取得された性能データ５０に基づき計算して、評価モデル式８５を生成する。
【００４１】
図１４に基づき、実施の形態１に係る評価モデル生成処理を説明する。
Ｓ１３１のモデル合成処理では、モデル合成部３４１は、Ｓ１２で取得されたプログラムモデル式８１とリソースモデル式８２とを合成して、処理性能モデル式８３を生成する。
ここでは、Ｔｑａ２＝ｍｍｎ（１，λａ，Ｔｓａ）のＴｓａがＴｑｒ１＝ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ）に置き換えられて、Ｔｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ））が処理性能モデル式８３として生成される。
【００４２】
Ｓ１３２のパラメータ計算処理では、パラメータ計算部３４２は、Ｓ１３１で生成された処理性能モデル式８３の少なくとも一部のパラメータについての値８４を、Ｓ１２で取得された性能データ５０に基づき計算する。
具体的には、パラメータ計算部３４２は、性能データ５０のデータセット５２における各インデックスｉについて、Ｔｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ））の到着率λａを性能データ５０における到着率λｉとした場合に、平均処理時間Ｔｑａが性能データ５０における処理時間Ｔｑｉに近い時間になるように、処理性能モデル式８３が最も近似した関数５４となる値８４を計算する。値８４の計算方法は、既存の任意の方式を用いればよい。
つまり、パラメータ計算部３４２は、図２に示すデータセット５２の到着率λｉ毎の処理時間Ｔｑｉを図１５のように示した特性表５３とした場合に、到着率λｉ毎の処理時間Ｔｑｉに最も近似した関数５４となる値８４を計算する。最も近似したとは、到着率λｉ毎の処理時間Ｔｑｉに対する関数５４で計算される値の最小二乗距離が最も小さくなるという意味である。
ここでは、パラメータλｒ及びＴｓｃｐｕについての値８４が計算され、いずれも０．５と計算されたとする。
【００４３】
なお、性能評価装置１０の利用者が、図１５に示すようなグラフを見ながら、パラメータの値８４を調整して、近似した関数５４を生成することにより値８４を計算してもよい。
【００４４】
Ｓ１３３のモデル式生成処理では、モデル式生成部３４３は、Ｓ１３１で生成された処理性能モデル式８３のパラメータのうち、Ｓ１３２で値８４が計算されたパラメータを計算された値８４に置き換えて、評価モデル式８５を生成する。
ここでは、Ｔｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，λｒ，Ｔｓｃｐｕ））のパラメータλｒ及びＴｓｃｐｕが、いずれも０．５に置き換えられ、Ｔｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，０．５，０．５））が評価モデル式８５として生成される。
【００４５】
Ｓ１４の性能評価処理では、性能評価部３５は、Ｓ１３で生成された評価モデル式８５のパラメータに、対象システムの計算機リソースデータ６０を設定して、対象システムで対象プログラム４０を動作させた場合の性能を評価する。そして、性能評価部３５は、評価結果７０を出力する。
ここでは、評価モデル式８５であるＴｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，０．５，０．５））に、図１６に示す計算機リソースデータ６０が入力される。具体的には、評価モデル式８５におけるサービス窓口数ｎｒに計算機リソースデータ６０におけるＣＰＵのコア数８が入力され、評価モデル式８５における到着率λａに計算機リソースデータ６０に含まれる想定到着率１０００ＴＰＳが入力され、平均処理時間Ｔｑａが計算される。そして、図１７に示すように、計算された平均処理時間Ｔｑａが、目標処理時間０．５ｓｅｃ以内であるか否かを示す評価結果７０が出力される。図１７では、計算された平均処理時間Ｔｑａが、目標処理時間０．５ｓｅｃ以内であるとして、結果はＯＫとなっている。もし、計算された平均処理時間Ｔｑａが、目標処理時間０．５ｓｅｃ以内でなければ、結果はＮＧとなる。
【００４６】
＊＊＊実施の形態１の効果＊＊＊
以上のように、実施の形態１に係る性能評価装置１０では、プログラムモデル式８１とリソースモデル式８２とが組み合わせられた処理性能モデル式８３のパラメータの値８４を、評価用計算機２１で動作させた結果を示す性能データ５０に基づき計算して評価モデル式８５を生成する。そして、評価モデル式８５により、対象システムで対象プログラム４０を動作させた場合の性能評価を行う。
これにより、対象システムを構成するプログラムの特性値を取得することなく、簡便に性能評価を行うことが可能である。
【００４７】
特に、実施の形態１に係る性能評価装置１０では、プログラムの構造を待ち行列モデルにより表したプログラムモデル式８１だけを用いて評価モデル式８５を生成しているわけではない。実施の形態１に係る性能評価装置１０では、対象プログラム４０によるハードウェアリソースの要求構造を待ち行列モデルにより表したリソースモデル式８２を、プログラムモデル式８１に組み込んだ処理性能モデル式８３を用いて、評価モデル式８５を生成している。
これにより、プログラムのキューの配置等のソフトウェア構造に起因する特性だけでなく、ＣＰＵのコア数等のハードウェア構造に起因する特性を、対象システムを構成するプログラムの特性値を取得することなく、性能評価に反映することができる。
【００４８】
プログラムモデル式８１にリソースモデル式８２を組み込んでいるため、評価モデル式８５は重畳した待ち行列モデルとなっている。これにより、様々なプログラムの構造や、同一の計算機で複数のプログラムが並行して動作する場合等の性能評価にも容易に対応可能である。
【００４９】
スマートメータやＩｏＴのような均一の機器のデータを集中して集めるシステムは、ランダムなデータ発生と多量で均一な処理が動作の特徴である。そのため、このようなシステムを対象とする場合には、実施の形態１に係る性能評価装置１０のような待ち行列モデルを用いた性能評価が特に有効である。
【００５０】
なお、上記説明では、Ｓ１４で性能評価部３５は、結果がＯＫであるかＮＧであるかを示す評価結果７０を出力した。
しかし、性能評価部３５は、図１８に示すように、評価モデル式８５におけるサービス窓口数ｎｒに計算機リソースデータ６０におけるＣＰＵのコア数８を設定した場合の、到着率λａと平均処理時間Ｔｑａとの関係をグラフ化して出力してもよい。図１８では、グラフに、目標処理時間と想定到着率とも示している。これにより、利用者は、現在想定している対象システムの計算機リソースデータ６０であれば、到着率λａがいくつなら、目標処理時間をクリアできるか等の検討をすることが可能である。
【００５１】
また、上記説明では、評価用計算機２１が１台だけである場合を例として説明した。しかし、評価用計算機２１が複数台あってもよい。
この場合、Ｓ１４では、パラメータ計算部３４２は、図３に示すような、各評価用計算機２１についてのデータセット５２を用いて値８４を計算する。そして、パラメータ計算部３４２は、各データセット５２における各インデックスｉについて、到着率λａを到着率λｉとした場合に、平均処理時間Ｔｑａを処理時間Ｔｑｉが近い時間になる値８４が計算される。
【００５２】
また、上記説明では、パラメータ計算部３４２は、処理性能モデル式８３のパラメータを近似する値８４、つまり近似値を計算するとした。しかし、パラメータ計算部３４２は、近似値に代えて、ＣＰＵの周波数やメモリの容量等の計算機リソースをパラメータとして含む近似式を計算してもよい。
例えば、パラメータ計算部３４２は、データセット５２毎に近似値を計算する。そして、パラメータ計算部３４２は、データセット５２毎の近似値の差異と、データセット５２に対応する計算機リソースデータ５１の計算機リソースとの差異から、計算機リソースをパラメータとして含む近似式を計算する。
図３の例であれば、評価用計算機２１はＣＰＵの周波数が異なる。そこで、パラメータ計算部３４２は、データセット５２毎のパラメータＴｓｃｐｕの近似値の差異と、データセット５２に対応する計算機リソースデータ５１のＣＰＵの周波数の差異とから、パラメータＴｓｃｐｕの値８４として、ＣＰＵの周波数のパラメータＶｃｌｏｃｋ［ＧＨｚ］を含む近似式を計算する。
例えば、図３の（ａ）のデータセット５２により計算されたパラメータＴｓｃｐｕの値８４が０．５であり、図３の（ｂ）のデータセット５２により計算されたパラメータＴｓｃｐｕの値８４が１．０であったとする。図３の（ａ）のＣＰＵの周波数は２ＧＨｚであり、図３の（ｂ）のＣＰＵの周波数は４ＧＨｚである。そこで、パラメータ計算部３４２は、パラメータＴｓｃｐｕの近似式を０．２５Ｖｃｌｏｃｋと計算してもよい。この場合、Ｓ１３では、Ｔｑａ＝ｍｍｎ（１，λａ，ｍｍｎ（ｎｒ，０．５，０．２５Ｖｃｌｏｃｋ））が評価モデル式８５として生成される。そして、Ｓ１４では、評価モデル式８５における到着率λａに計算機リソースデータ６０における想定到着率１０００ＴＰＳが入力され、評価モデル式８５におけるサービス窓口数ｎｒにＣＰＵのコア数８が入力され、評価モデル式８５におけるＣＰＵの周波数Ｖｃｌｏｃｋに２が入力され、平均処理時間Ｔｑａが計算される。
なお、ここでは、データセット５２の数を２つとした。しかし、多くのデータセット５２を用いることにより、より精度よく、またより多くの計算機リソースをパラメータとして含んだ評価モデル式８５を生成することが可能である。
【００５３】
実施の形態２．
実施の形態１では、性能評価装置１０の利用者の指示に従い取得されたプログラムモデル式８１及びリソースモデル式８２から評価モデル式８５が生成された。
実施の形態２では、利用者の指示によらず、評価モデル式８５を生成する点が実施の形態１と異なる。実施の形態２では、この異なる点を説明する。
【００５４】
＊＊＊構成の説明＊＊＊
図１９に基づき、実施の形態２に係る性能評価装置１０の構成について説明する。
評価モデル生成部３４が、近似度計算部３４４を備える点が、図１に示す性能評価装置１０と異なる。
【００５５】
モデル取得部３１は、プログラムモデル記憶部３２から複数のプログラムモデル式８１を取得し、リソースモデル記憶部３３から複数のリソースモデル式８２を取得する。ここでは、モデル取得部３１は、プログラムモデル記憶部３２から全てのプログラムモデル式８１を取得し、リソースモデル記憶部３３から全てのリソースモデル式８２を取得する。
【００５６】
モデル合成部３４１は、図２０に示すように、モデル取得部３１が取得した各プログラムモデル式８１及び各リソースモデル式８２を組み合わせて全てのパターンの処理性能モデル式８３を生成する。
【００５７】
パラメータ計算部３４２は、図２０に示すように、モデル合成部３４１が生成した各処理性能モデル式８３について、パラメータの値８４を計算する。
【００５８】
近似度計算部３４４は、図２０に示すように、パラメータ計算部３４２が各処理性能モデル式８３について計算した値８４の近似度８６を計算する。
ここでは、近似度計算部３４４は、到着率λｉ毎の処理時間Ｔｑｉに対するパラメータ計算部３４２が計算した関数５４で計算される値の最小二乗距離を近似度８６として計算する。これに限らず、近似度計算部３４４は、パラメータ計算部３４２が計算した関数５４で計算される値と、データセット５２の値との差分の最大値を近似度として計算するなど、他の方法により近似度８６を計算してもよい。
【００５９】
モデル式生成部３４３は、近似度計算部３４４が計算した近似度８６が最も高い処理性能モデル式８３におけるパラメータのうち、値８４が計算されたパラメータを、その処理性能モデルについて計算された値８４に置き換えて、評価モデル式８５を生成する。
【００６０】
＊＊＊動作の説明＊＊＊
図２１に基づき、実施の形態２に係る評価モデル生成処理を説明する。
なお、前提として、Ｓ１２のモデル取得処理では、モデル取得部３１は、プログラムモデル記憶部３２から全てのプログラムモデル式８１を取得し、リソースモデル記憶部３３から全てのリソースモデル式８２を取得する。
【００６１】
Ｓ２３１からＳ２３３の理を全てのパターンの処理性能モデル式８３について実行する。
Ｓ２３１のモデル合成処理では、モデル合成部３４１は、Ｓ２３で取得された各プログラムモデル式８１及び各リソースモデル式８２を組み合わせて、まだ生成されていないパターンの処理性能モデル式８３を生成する。
Ｓ２３２のパラメータ計算処理では、パラメータ計算部３４２は、Ｓ２３１で生成された処理性能モデル式８３についてパラメータの値８４を計算する。
Ｓ２３３の近似度計算処理では、近似度計算部３４４は、Ｓ２３１で生成された処理性能モデル式８３についてＳ２３２で計算された値８４の近似度８６を計算する。
【００６２】
Ｓ２３４のモデル式生成処理では、モデル式生成部３４３は、Ｓ２３３で計算された近似度８６が最も高い処理性能モデル式８３について、その処理性能モデル式８３のパラメータを、その処理性能モデル式８３について計算された値８４に置き換えて、評価モデル式８５を生成する。
【００６３】
＊＊＊実施の形態２の効果＊＊＊
以上のように、実施の形態１に係る性能評価装置１０では、複数の処理性能モデル式８３を生成して、最も近似する関数５４を構成する処理性能モデル式８３から評価モデル式８５を生成する。
これにより、対象プログラム４０の構造が自明でない場合等にも、評価モデル式８５を生成することが可能となる。
【００６４】
なお、上記説明では、モデル取得部３１は、全てのプログラムモデル式８１及び全てのリソースモデル式８２を取得し、モデル合成部３４１は、全てのパターンの処理性能モデル式８３を生成するとした。しかし、これでは評価モデル式８５を生成するための処理時間が長くなる恐れがある。
【００６５】
そこで、図２２に示すように、処理を変更してもよい。
具体的には、１度目のＳ２３１からＳ２３３のループでは、モデル合成部３４１は、全てのパターンの処理性能モデル式８３を生成するのではなく、一部の代表的なパターンの処理性能モデル式８３だけを生成する。Ｓ２３４では、モデル式生成部３４３は、生成した処理性能モデル式８３のうち最も近似度８６が高い処理性能モデル式８３を用いて評価モデル式８５を生成する。
そして、モデル式生成部３４３は、再分析が必要か否かを決定する。ここでは、モデル式生成部３４３は、生成した評価モデル式８５及び近似度８６を利用者に確認させ、利用者の指示に従い再分析が必要か否かを決定する。モデル式生成部３４３は、近似度８６が閾値以上であるか否か等により、再分析が必要か否かを決定してもよい。
【００６６】
再分析が必要であると決定された場合には、処理がＳ２３１からＳ２３３のループの先頭に戻される。２度目以降のループでは、モデル合成部３４１は、直前のＳ２３４で生成された評価モデル式８５の基となった処理性能モデル式８３に近いパターンの処理性能モデル式８３を複数生成する。モデル式生成部３４３は、生成した処理性能モデル式８３のうち最も近似度８６が高い処理性能モデル式８３を用いて評価モデル式８５を生成する。
そして、モデル式生成部３４３は、再分析が必要か否かを決定する。
【００６７】
つまり、まず大まかなパターンで評価モデル式８５を生成し、徐々に詳細なパターンで評価モデル式８５を生成する。これにより、処理時間を短縮しつつ、比較的精度の高い評価モデル式８５を生成することが可能である。
ここでは、１度目のＳ２３１からＳ２３３のループでは、代表的なパターンとして、各プログラムモデル式８１及び各リソースモデル式８２の係数を１に固定した場合のパターンを生成する。２度目のＳ２３１からＳ２３３のループでは、Ｓ２３４で生成された評価モデル式８５の基となった処理性能モデル式８３で用いられた各プログラムモデル式８１及び各リソースモデル式８２の係数を変化させた処理性能モデル式８３を生成する。３度目以降のＳ２３１からＳ２３３のループでは、係数をより細かく変化させた処理性能モデル式８３を生成する。
【００６８】
図２３は、実施の形態１，２に係る性能評価装置１０のハードウェア構成例を示す図である。
性能評価装置１０はコンピュータである。
性能評価装置１０は、プロセッサ９０１、補助記憶装置９０２、メモリ９０３、通信装置９０４、入力インターフェース９０５、ディスプレイインターフェース９０６といったハードウェアを備える。
プロセッサ９０１は、信号線９１０を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
入力インターフェース９０５は、ケーブル９１１により入力装置９０７に接続されている。
ディスプレイインターフェース９０６は、ケーブル９１２によりディスプレイ９０８に接続されている。
【００６９】
プロセッサ９０１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ９０１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
補助記憶装置９０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。
メモリ９０３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置９０４は、データを受信するレシーバー９０４１及びデータを送信するトランスミッター９０４２を含む。通信装置９０４は、例えば、通信チップ又はＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。
入力インターフェース９０５は、入力装置９０７のケーブル９１１が接続されるポートである。入力インターフェース９０５は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）端子である。
ディスプレイインターフェース９０６は、ディスプレイ９０８のケーブル９１２が接続されるポートである。ディスプレイインターフェース９０６は、例えば、ＵＳＢ端子又はＨＤＭＩ（登録商標）（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）端子である。
入力装置９０７は、例えば、マウス、キーボード又はタッチパネルである。
ディスプレイ９０８は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）である。
【００７０】
補助記憶装置９０２には、上述した測定部２０と、モデル取得部３１と、評価モデル生成部３４と、モデル合成部３４１と、パラメータ計算部３４２と、モデル式生成部３４３と、近似度計算部３４４と、性能評価部３５と（以下、測定部２０と、モデル取得部３１と、評価モデル生成部３４と、モデル合成部３４１と、パラメータ計算部３４２と、モデル式生成部３４３と、近似度計算部３４４と、性能評価部３５とをまとめて「部」と表記する）の機能を実現するプログラムが記憶されている。
このプログラムは、メモリ９０３にロードされ、プロセッサ９０１に読み込まれ、プロセッサ９０１によって実行される。
更に、補助記憶装置９０２には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）も記憶されている。
そして、ＯＳの少なくとも一部がメモリ９０３にロードされ、プロセッサ９０１はＯＳを実行しながら、「部」の機能を実現するプログラムを実行する。
図２３では、１つのプロセッサ９０１が図示されているが、性能評価装置１０が複数のプロセッサ９０１を備えていてもよい。そして、複数のプロセッサ９０１が「部」の機能を実現するプログラムを連携して実行してもよい。
また、「部」の処理の結果を示す情報やデータや信号値や変数値とが、メモリ９０３、補助記憶装置９０２、又は、プロセッサ９０１内のレジスタ又はキャッシュメモリにファイルとして記憶される。また、上述したプログラムモデル記憶部３２及びリソースモデル記憶部３３は、メモリ９０３、補助記憶装置９０２、又は、プロセッサ９０１内のレジスタ又はキャッシュメモリとして実現される。
【００７１】
「部」を「サーキットリー」で提供してもよい。また、「部」を「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。「回路」及び「サーキットリー」は、プロセッサ９０１だけでなく、ロジックＩＣ又はＧＡ（Ｇａｔｅ  Ａｒｒａｙ）又はＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）又はＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）といった他の種類の処理回路をも包含する概念である。
【符号の説明】
【００７２】
１０  性能評価装置、２０  測定部、２１  評価用計算機、３０  分析部、３１  モデル取得部、３２  プログラムモデル記憶部、３３  リソースモデル記憶部、３４  評価モデル生成部、３４１  モデル合成部、３４２  パラメータ計算部、３４３  モデル式生成部、３４４  近似度計算部、３５  性能評価部、４０  対象プログラム、５０  性能データ、５１  計算機リソースデータ、５２  データセット、５３  特性表、５４  関数、６０  計算機リソースデータ、７０  評価結果、８１  プログラムモデル式、８２  リソースモデル式、８３  処理性能モデル式、８４  値、８５  評価モデル式、８６  近似度。
【図１】
2016181549.tif 000003
【図２】
2016181549.tif 000004
【図３】
2016181549.tif 000005
【図４】
2016181549.tif 000006
【図５】
2016181549.tif 000007
【図６】
2016181549.tif 000008
【図７】
2016181549.tif 000009
【図８】
2016181549.tif 000010
【図９】
2016181549.tif 000011
【図１０】
2016181549.tif 000012
【図１１】
2016181549.tif 000013
【図１２】
2016181549.tif 000014
【図１３】
2016181549.tif 000015
【図１４】
2016181549.tif 000016
【図１５】
2016181549.tif 000017
【図１６】
2016181549.tif 000018
【図１７】
2016181549.tif 000019
【図１８】
2016181549.tif 000020
【図１９】
2016181549.tif 000021
【図２０】
2016181549.tif 000022
【図２１】
2016181549.tif 000023
【図２２】
2016181549.tif 000024
【図２３】
2016181549.tif 000025
【国際調査報告】
2016181549.tif 000026
2016181549.tif 000027