(57)【要約】  性能評価装置（２００）において、分布記録部（２３０）は、サーバ（１００）を動作させたときの、サーバ（１００）における各リクエスト（６００）に応じた処理の開始からの処理時間の確率分布を算出する。パターン記録部（２２０）は、サーバ（１００）を動作させたときの、サーバ（１００）におけるリクエスト（６００）の到着パターンである第１パターンとは異なる到着パターンである第２パターンを記録する。評価部（２４０）は、分布記録部（２３０）により算出された処理時間の確率分布と、パターン記録部（２２０）により記録された第２パターンとから、サーバ（１００）における各リクエスト（６００）の到着からの応答時間の確率分布を算出する。
2019175985.tif 000002
【特許請求の範囲】
【請求項１】
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録部と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録部と、
前記分布記録部により記録された確率分布と、前記パターン記録部により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する評価部と
を備える性能評価装置。
【請求項２】
前記パターン記録部は、前記第１パターンを算出し、算出結果を補正することで前記第２パターンを決定する請求項１に記載の性能評価装置。
【請求項３】
前記パターン記録部は、前記サーバにおける各リクエストの到着時刻を示すデータから、前記サーバにおけるリクエストの到着時間間隔の確率分布を前記第１パターンとして算出する請求項２に記載の性能評価装置。
【請求項４】
前記パターン記録部は、前記到着時間間隔の確率分布から、特性が異なる確率分布を前記第２パターンとして算出する請求項３に記載の性能評価装置。
【請求項５】
前記パターン記録部は、入力インタフェースを介して前記第２パターンの入力を受け付ける請求項１に記載の性能評価装置。
【請求項６】
前記評価部は、待ち行列モデルを用いて、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの待ち時間の確率分布を算出し、前記処理時間の確率分布と、前記待ち時間の確率分布とから、前記応答時間の確率分布を算出する請求項１から５のいずれか１項に記載の性能評価装置。
【請求項７】
前記分布記録部は、前記サーバにおける前記処理時間の測定結果から、前記処理時間の確率分布を算出する請求項１から６のいずれか１項に記載の性能評価装置。
【請求項８】
前記分布記録部は、前記サーバのリソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記処理時間の平均を算出し、前記処理時間の平均から、前記処理時間の確率分布のパラメータを決定する請求項１から６のいずれか１項に記載の性能評価装置。
【請求項９】
前記分布記録部は、待ち行列モデルを用いて、前記サーバの複数リソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記サーバのリソースごとの前記処理時間の平均を算出し、算出した平均の合計から、前記処理時間の確率分布のパラメータを決定する請求項８に記載の性能評価装置。
【請求項１０】
前記応答時間の確率分布から算出される、前記サーバの性能の指標値を出力する出力部をさらに備える請求項１から９のいずれか１項に記載の性能評価装置。
【請求項１１】
サーバが、リクエストを繰り返し受信して処理を実行し、
性能評価装置が、前記サーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録し、
前記性能評価装置が、前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録し、
前記性能評価装置が、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する性能評価方法。
【請求項１２】
コンピュータに、
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録手順と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録手順と、
前記分布記録手順により記録された確率分布と、前記パターン記録手順により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する評価手順と
を実行させる性能評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、性能評価装置、性能評価方法および性能評価プログラムに関するものである。
【背景技術】
【０００２】
特許文献１に記載の技術では、運用時のサーバに対するアクセスパターンが記録される。その後、アクセス頻度が増加するように、記録されたアクセスパターンに基づく負荷が再生され、それと同時に測定される応答時間が、要求される応答時間を超えたときのアクセス頻度が、サーバの限界性能値として記録される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３１８４５４号公報
【特許文献２】特開２０１７−２２４２２６号公報
【非特許文献】
【０００４】
【非特許文献１】Ｗｉｎｆｒｉｅｄ  Ｋ．  Ｇｒａｓｓｍａｎｎ  ａｎｄ  Ｊｏｔｉ  Ｌ．  Ｊａｉｎ，  “Ｎｕｍｅｒｉｃａｌ  Ｓｏｌｕｔｉｏｎｓ  ｏｆ  ｔｈｅ  Ｗａｉｔｉｎｇ  Ｔｉｍｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  ａｎｄ  Ｉｄｌｅ  Ｔｉｍｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  ｏｆ  ｔｈｅ  Ａｒｉｔｈｍｅｔｉｃ  ＧＩ／Ｇ／１  Ｑｕｅｕｅ”，  Ｏｐｅｒａｔｉｏｎｓ  Ｒｅｓｅａｒｃｈ，  Ｖｏｌ．  ３７，  Ｎｏ．  １，  １９８９
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般に、単位時間当たりのリクエストの平均到着率が等しい場合でも、リクエストの到着パターンによって、リクエストに対する応答時間は変化する。そのため、評価対象の情報システムが性能要件を満たしているかどうかを確認する性能試験では、試験精度の向上のために、到着パターンの影響を考慮する必要がある。【０００６】
特許文献１に記載の技術のように、運用時の到着パターンに基づく負荷を再生する方法を用いた場合、性能試験の実施時にリクエストの到着パターンを再現しなければならず、試験効率が悪い。再現できないリクエストの到着パターンについては、性能試験を実施することもできない。【０００７】
本発明は、性能試験の精度および効率の両方を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様に係る性能評価装置は、
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録部と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録部と、
前記分布記録部により記録された確率分布と、前記パターン記録部により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する評価部と
を備える。
【発明の効果】
【０００９】
本発明では、サーバを動作させたときの処理時間の確率分布と、サーバを動作させたときのリクエストの到着パターンとは異なる到着パターンとから、応答時間の確率分布が算出される。そのため、到着パターンを再現せずに、その到着パターンの影響を考慮した性能試験を実施することができる。よって、本発明によれば、性能試験の精度および効率の両方が向上する。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係るシステムの全体構成を示すブロック図。
【図２】実施の形態１に係るサーバおよび性能評価装置のハードウェア構成を示すブロック図。
【図３】実施の形態１に係るサーバおよび性能評価装置の機能構成を示すブロック図。
【図４】実施の形態１に係るサーバおよび性能評価装置の動作を示すフローチャート。
【図５】図４のステップＳ１２０の詳細な動作を示すフローチャート。
【図６】到着時刻データの例を示す図。
【図７】到着パターンデータの例を示す図。
【図８】図４のステップＳ１５０の詳細な動作を示すフローチャート。
【図９】処理時間データの例を示す図。
【図１０】処理時間分布データの例を示す図。
【図１１】図４のステップＳ１７０の詳細な動作を示すフローチャート。
【図１２】図４のステップＳ１９０の詳細な動作を示すフローチャート。
【図１３】実施の形態２に係るサーバおよび性能評価装置の機能構成を示すブロック図。
【図１４】実施の形態２に係るサーバおよび性能評価装置の動作を示すフローチャート。
【図１５】図１４のステップＳ２５０の詳細な動作を示すフローチャート。
【図１６】処理時間データの例を示す図。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。なお、本発明は、以下に説明する実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。例えば、以下に説明する実施の形態のうち、２つ以上の実施の形態が組み合わせられて実施されても構わない。あるいは、以下に説明する実施の形態のうち、１つの実施の形態または２つ以上の実施の形態の組み合わせが部分的に実施されても構わない。
【００１２】
実施の形態１．
本実施の形態について、図１から図１２を用いて説明する。
【００１３】
＊＊＊構成の説明＊＊＊
図１を参照して、本実施の形態に係るシステムの全体構成を説明する。
【００１４】
サーバ１００は、性能試験の対象、すなわち、評価対象となるコンピュータである。サーバ１００は、実行部１１０と、測定部１２０とを備える。
【００１５】
実行部１１０は、性能試験の対象となる処理を実行する要素である。測定部１２０は、性能評価装置２００からの実行命令を受け、実行部１１０の特性を測定する要素である。
【００１６】
性能評価装置２００は、性能試験を実施するコンピュータである。性能評価装置２００は、入力装置３００および出力装置４００と接続される。
【００１７】
入力装置３００は、ユーザによる入力を受け付け、性能評価装置２００に伝達する装置である。出力装置４００は、性能評価装置２００から受け取ったデータをユーザへ出力する装置である。
【００１８】
性能評価装置２００は、測定部１２０に実行命令を出し、測定部１２０から到着時刻データ５００を受け取る。性能評価装置２００は、実行部１１０へリクエスト６００を送信し、測定部１２０から処理時間データ７００を受け取る。性能評価装置２００は、受け取ったデータをもとに算出した結果を、出力装置４００へ伝達する。
【００１９】
サーバ１００および性能評価装置２００は、仮想計算機で代用することも可能である。
【００２０】
サーバ１００は、実行部１１０が複数ある場合、複数のコンピュータで構成されてもよい。その場合、各コンピュータが実行部１１０および測定部１２０を備える。
【００２１】
性能評価装置２００は、サーバ１００と同一のコンピュータとすることも可能であるが、実行部１１０の処理性能に影響を及ぼさないために、別のコンピュータとすることが望ましい。
【００２２】
入力装置３００および出力装置４００は、必須の構成要素ではないが、本実施の形態の効果を高めるために有用である。
【００２３】
図２および図３を参照して、サーバ１００の構成を説明する。
【００２４】
サーバ１００は、プロセッサ１０１を備えるとともに、メモリ１０２、補助記憶装置１０３およびネットワークインタフェース１０４といった他のハードウェアを備える。プロセッサ１０１は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００２５】
サーバ１００は、機能要素として、実行部１１０と、測定部１２０とを備える。測定部１２０は、第１測定部１２１と、第２測定部１２２とを備える。実行部１１０および測定部１２０の機能は、ソフトウェアにより実現される。
【００２６】
プロセッサ１０１は、サーバプログラムを実行する装置である。サーバプログラムは、実行部１１０および測定部１２０の機能を実現するプログラムである。プロセッサ１０１は、例えば、ＣＰＵである。「ＣＰＵ」は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略語である。
【００２７】
メモリ１０２および補助記憶装置１０３は、サーバプログラムを記憶する装置である。メモリ１０２は、例えば、ＲＡＭ、フラッシュメモリまたはこれらの組み合わせである。「ＲＡＭ」は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略語である。補助記憶装置１０３は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。「ＨＤＤ」は、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略語である。なお、補助記憶装置１０３は、外部ディスクで代用することも可能である。その場合、外部ディスクは、ネットワークインタフェース１０４によってサーバ１００と接続される。
【００２８】
ネットワークインタフェース１０４は、サーバプログラムに入力されるデータを受信するレシーバと、サーバプログラムから出力されるデータを送信するトランスミッタとを含む。ネットワークインタフェース１０４は、例えば、通信チップまたはＮＩＣである。「ＮＩＣ」は、Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄの略語である。
【００２９】
サーバプログラムは、補助記憶装置１０３からメモリ１０２にロードされ、プロセッサ１０１によって実行される。
【００３０】
サーバ１００は、プロセッサ１０１を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、サーバプログラムの実行を分担する。それぞれのプロセッサは、例えば、ＣＰＵである。
【００３１】
サーバプログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ１０２、補助記憶装置１０３、または、プロセッサ１０１内のレジスタまたはキャッシュメモリに記憶される。そのようなデータとしては、到着時刻データ５００、リクエスト６００および処理時間データ７００がある。
【００３２】
サーバプログラムは、実行部１１０および測定部１２０により行われる手順をそれぞれ実行手順および測定手順としてコンピュータに実行させるプログラムである。サーバプログラムは、コンピュータ読取可能な媒体に記録されて提供されてもよいし、記録媒体に格納されて提供されてもよいし、プログラムプロダクトとして提供されてもよい。
【００３３】
サーバ１００は、１台のコンピュータで構成されていてもよいし、複数台のコンピュータで構成されていてもよい。サーバ１００が複数台のコンピュータで構成されている場合、実行部１１０は、少なくとも１台のコンピュータに備えられていればよいが、測定部１２０は、各コンピュータに備えられる。
【００３４】
図２および図３を参照して、性能評価装置２００の構成を説明する。
【００３５】
性能評価装置２００は、プロセッサ２０１を備えるとともに、メモリ２０２、補助記憶装置２０３、ネットワークインタフェース２０４、入力インタフェース２０５および出力インタフェース２０６といった他のハードウェアを備える。プロセッサ２０１は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００３６】
性能評価装置２００は、機能要素として、入力部２１０と、パターン記録部２２０と、分布記録部２３０と、評価部２４０と、出力部２５０とを備える。パターン記録部２２０は、算出部２２１と、補正部２２３とを備える。分布記録部２３０は、送信部２３１と、算出部２３２とを備える。評価部２４０は、第１算出部２４１と、第２算出部２４３とを備える。入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能は、ソフトウェアにより実現される。
【００３７】
プロセッサ２０１は、性能評価プログラムを実行する装置である。性能評価プログラムは、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能を実現するプログラムである。プロセッサ２０１は、例えば、ＣＰＵである。
【００３８】
メモリ２０２および補助記憶装置２０３は、性能評価プログラムを記憶する装置である。メモリ２０２は、例えば、ＲＡＭ、フラッシュメモリまたはこれらの組み合わせである。補助記憶装置２０３は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。なお、補助記憶装置２０３は、外部ディスクで代用することも可能である。その場合、外部ディスクは、ネットワークインタフェース２０４によって性能評価装置２００と接続される。
【００３９】
ネットワークインタフェース２０４は、性能評価プログラムに入力されるデータを受信するレシーバと、性能評価プログラムから出力されるデータを送信するトランスミッタとを含む。ネットワークインタフェース２０４は、例えば、通信チップまたはＮＩＣである。
【００４０】
入力インタフェース２０５は、入力装置３００と接続されるインタフェースである。入力インタフェース２０５は、例えば、ＵＳＢポートである。「ＵＳＢ」は、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略語である。入力装置３００は、性能評価プログラムへのデータの入力のためにユーザにより操作される。入力装置３００は、例えば、マウス、キーボード、タッチパネル、または、これらのうちいくつか、もしくは、すべての組み合わせである。
【００４１】
出力インタフェース２０６は、出力装置４００と接続されるインタフェースである。出力インタフェース２０６は、例えば、ＵＳＢポートである。出力装置４００は、性能評価プログラムから出力されるデータをユーザに提示する。出力装置４００は、例えば、ＬＣＤ等のディスプレイ、プリンタまたはこれらの組み合わせである。「ＬＣＤ」は、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙの略語である。
【００４２】
性能評価プログラムは、補助記憶装置２０３からメモリ２０２にロードされ、プロセッサ２０１によって実行される。
【００４３】
性能評価装置２００は、プロセッサ２０１を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、性能評価プログラムの実行を分担する。それぞれのプロセッサは、例えば、ＣＰＵである。
【００４４】
性能評価プログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ２０２、補助記憶装置２０３、または、プロセッサ２０１内のレジスタまたはキャッシュメモリに記憶される。そのようなデータとしては、到着時刻データ５００、リクエスト６００および処理時間データ７００のほかに、到着パターンデータ２２２、処理時間分布データ２３３、応答時間分布データ２４２、性能特性値２４４および性能要件データ２６０がある。
【００４５】
性能評価プログラムは、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０により行われる手順をそれぞれ入力手順、パターン記録手順、分布記録手順、評価手順および出力手順としてコンピュータに実行させるプログラムである。性能評価プログラムは、コンピュータ読取可能な媒体に記録されて提供されてもよいし、記録媒体に格納されて提供されてもよいし、プログラムプロダクトとして提供されてもよい。
【００４６】
性能評価装置２００は、１台のコンピュータで構成されていてもよいし、複数台のコンピュータで構成されていてもよい。性能評価装置２００が複数台のコンピュータで構成されている場合は、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能が、各コンピュータに分散されて実現されてもよい。
【００４７】
サーバ１００と性能評価装置２００は、それぞれのネットワークインタフェース１０４，２０４によって接続される。
【００４８】
＊＊＊動作の説明＊＊＊
主に図４を参照して、本実施の形態に係るサーバ１００および性能評価装置２００の動作を説明する。サーバ１００および性能評価装置２００の動作は、本実施の形態に係る性能評価方法に相当する。
【００４９】
ステップＳ１１０では、入力装置３００から性能評価装置２００に対して、到着パターンの記録に関する実行命令があるかの確認が行われる。
【００５０】
ステップＳ１２０では、性能評価装置２００のパターン記録部２２０が、サーバ１００の実行部１１０が運用時に受けるリクエスト６００の到着パターンを確率分布として記録する。
【００５１】
具体的には、パターン記録部２２０は、リクエスト６００を繰り返し受信して処理を実行するサーバ１００を動作させたときの、サーバ１００におけるリクエスト６００の到着パターンである第１パターンとは異なる到着パターンである第２パターンを到着パターンデータ２２２としてメモリ２０２に記録する。
【００５２】
第２パターンを決定する方法としては、任意の方法が用いられてよいが、本実施の形態では、第１パターンを算出し、算出結果を補正することで第２パターンを決定する方法が用いられる。
【００５３】
本実施の形態では、パターン記録部２２０は、サーバ１００における各リクエスト６００の到着時刻を示すデータから、サーバ１００におけるリクエスト６００の到着時間間隔の確率分布を第１パターンとして算出する。そして、パターン記録部２２０は、算出した到着時間間隔の確率分布から、平均または分散等の特性が異なる確率分布を第２パターンとして算出する。
【００５４】
第２パターンを決定する方法として、本実施の形態では、入力インタフェース２０５を介して第２パターンの入力を受け付ける方法も選択的に用いられる。
【００５５】
サーバ１００における各リクエスト６００の到着時刻を示すデータとしては、到着時刻データ５００が次のように用いられる。
【００５６】
測定部１２０の第１測定部１２１は、入力部２１０から実行命令を受け、実行部１１０にリクエスト６００が到着した時刻を測定し、測定結果を到着時刻データ５００として送信する。パターン記録部２２０の算出部２２１は、第１測定部１２１から到着時刻データ５００を受け取り、受け取ったデータをもとに到着パターンを算出し、到着パターンデータ２２２としてメモリ２０２に格納する。パターン記録部２２０の補正部２２３は、入力部２１０から受け取った情報をもとに到着パターンデータ２２２を補正するか、あるいは、入力部２１０から受け取った情報を到着パターンデータ２２２としてメモリ２０２に格納する。なお、入力部２１０は、入力装置３００を介してユーザから入力された情報を、測定部１２０内の要素、パターン記録部２２０内の要素、分布記録部２３０内の要素、および、評価部２４０内の要素に振り分けて伝達する。
【００５７】
ステップＳ１３０では、入力装置３００から性能評価装置２００に対して、処理時間分布の記録に関する実行命令があるかの確認が行われる。
【００５８】
ステップＳ１４０では、性能評価装置２００がすでにサーバ１００の実行部１１０の処理時間を測定した結果を保存しているかどうかの確認が行われる。すでに結果が保存されている場合は、ステップＳ１５０がスキップされる。
【００５９】
ステップＳ１５０では、性能評価装置２００の分布記録部２３０が、サーバ１００の実行部１１０が処理を実行するのに要する時間の確率分布を算出し、記録する。
【００６０】
具体的には、分布記録部２３０は、リクエスト６００を繰り返し受信して処理を実行するサーバ１００を動作させたときの、サーバ１００における各リクエスト６００に応じた処理の開始からの処理時間の確率分布を算出する。そして、分布記録部２３０は、算出した処理時間の確率分布を処理時間分布データ２３３としてメモリ２０２に記録する。
【００６１】
処理時間の確率分布を算出する方法としては、任意の方法が用いられてよいが、本実施の形態では、サーバ１００における処理時間の測定結果から、処理時間の確率分布を算出する方法が用いられる。
【００６２】
サーバ１００における処理時間の測定結果を示すデータとしては、次のように処理時間データ７００が用いられる。
【００６３】
分布記録部２３０の送信部２３１は、入力部２１０から実行命令を受け、実行部１１０へリクエスト６００を送信する。実行部１１０は、リクエスト６００を受信する度に、性能試験の対象となる処理を実行する。測定部１２０の第２測定部１２２は、入力部２１０から実行命令を受け、実行部１１０で処理を実行するのに要した時間を測定し、測定結果を処理時間データ７００として送信する。あるいは、第２測定部１２２は、入力部２１０から実行命令を受け、処理の開始時刻および終了時刻等、実行部１１０で処理を実行するのに要した時間を算出するための情報を取得し、取得した情報を処理時間データ７００として送信する。分布記録部２３０の算出部２３２は、第２測定部１２２から処理時間データ７００を受け取り、受け取ったデータをもとに処理時間分布を算出し、処理時間分布データ２３３としてメモリ２０２に格納する。
【００６４】
ステップＳ１６０では、入力装置３００から性能評価装置２００に対して、応答時間分布および性能特性値２４４の算出に関する実行命令があるかの確認が行われる。
【００６５】
ステップＳ１７０では、性能評価装置２００の評価部２４０が、ステップＳ１２０で保存されたリクエスト６００の到着パターンと、ステップＳ１５０で保存された処理時間分布とから、処理時間に待ち時間を加えた応答時間の分布と、応答時間の特性を表す性能特性値２４４とを算出し、算出結果を保存する。
【００６６】
具体的には、評価部２４０は、分布記録部２３０により記録された処理時間の確率分布と、パターン記録部２２０により記録された第２パターンとから、サーバ１００における各リクエスト６００の到着からの応答時間の確率分布を算出する。そして、評価部２４０は、算出した応答時間の確率分布を応答時間分布データ２４２としてメモリ２０２に記録する。
【００６７】
応答時間の確率分布を算出する方法としては、任意の方法が用いられてよいが、本実施の形態では、サーバ１００における各リクエスト６００の到着からの待ち時間の確率分布を算出し、処理時間の確率分布と、待ち時間の確率分布とから、応答時間の確率分布を算出する方法が用いられる。待ち時間は、待ち行列モデルを用いて、処理時間の確率分布と、第２パターンとから算出される。
【００６８】
本実施の形態では、評価部２４０は、さらに、算出した応答時間の確率分布から、サーバ１００の性能の指標値を算出する。そして、評価部２４０は、算出した指標値を性能特性値２４４としてメモリ２０２に記録する。
【００６９】
より具体的には、評価部２４０の第１算出部２４１は、入力部２１０から実行命令を受け取り、到着パターンデータ２２２および処理時間分布データ２３３を読み込み、読み込んだデータをもとに実行部１１０の応答時間分布を算出し、応答時間分布データ２４２としてメモリ２０２に格納する。評価部２４０の第２算出部２４３は、応答時間分布データ２４２を読み込み、読み込んだデータをもとに応答時間の平均または最大値等の性能特性値２４４を算出し、メモリ２０２に格納する。
【００７０】
ステップＳ１８０では、入力装置３００から性能評価装置２００に対して、ステップＳ１２０で保存されたリクエスト６００の到着パターン以外の到着パターンに対する性能試験結果出力の実行命令が出ているかどうかの確認が行われる。そのような実行命令が出ている場合は、ステップＳ１１０以降が繰り返される。
【００７１】
ステップＳ１９０では、性能評価装置２００の出力部２５０が、ステップＳ１７０で保存された応答時間分布および性能特性値２４４に加え、それらをもとに判断した性能試験結果のうち、必要な項目を出力する。
【００７２】
このように、本実施の形態では、出力部２５０は、応答時間の確率分布から算出される、サーバ１００の性能の指標値を出力する。
【００７３】
具体的には、出力部２５０は、応答時間分布データ２４２と、性能特性値２４４と、応答時間分布データ２４２および性能特性値２４４と性能要件データ２６０とをもとに判断される性能試験の結果とを、出力装置４００で出力できる形式に変換し、出力装置４００を介してユーザに提示する。
【００７４】
なお、第１測定部１２１は、入力装置３００を通して入力された到着パターンが到着パターンデータ２２２としてメモリ２０２に格納される場合、省略可能である。
【００７５】
図５を参照して、図４のステップＳ１２０の詳細な動作を説明する。
【００７６】
ステップＳ１２１では、入力部２１０が、実行部１１０が運用時に受けるリクエスト６００の到着パターンが測定可能であるかどうかを判断する。測定可能でない場合は、ステップＳ１２２からステップＳ１２５がスキップされる。
【００７７】
ステップＳ１２２では、第１測定部１２１が、実行部１１０が運用時に受けるリクエスト６００の到着時刻を測定し、測定結果を到着時刻データ５００に追加する。到着時刻データ５００は、実行部１１０が運用時に受け取ったリクエスト６００の到着時刻を、図６に示すような形式で表すデータである。
【００７８】
ステップＳ１２３では、第１測定部１２１が、到着時刻データ５００が到着パターンである到着時間間隔の確率分布を算出するために十分であるかどうかを確認する。十分でない場合は、ステップＳ１２２が繰り返される。
【００７９】
ステップＳ１２４では、第１測定部１２１が、到着時刻データ５００を算出部２２１に送信する。
【００８０】
ステップＳ１２５では、算出部２２１が、到着時刻データ５００に記載されている時刻を読み込み、直前の時刻との差を算出し、その差を到着時間間隔として、到着時間間隔の確率分布を離散的に算出する。そして、算出部２２１が、算出結果を到着パターンデータ２２２としてメモリ２０２に格納する。この算出結果は第１パターンに相当する。到着パターンデータ２２２は、到着時間間隔の離散的な確率分布を、図７に示すような形式で表すデータである。到着パターンが複数存在する場合、到着パターンごとに、図７に示すような形式のデータがメモリ２０２に格納される。
【００８１】
ステップＳ１２６では、入力部２１０が、入力装置３００から受け取った入力から、到着パターンの補正または入力が必要であるかどうかを判断する。補正が必要である場合は、入力部２１０が、入力装置３００から受け取った入力を変換して補正部２２３へ伝達する。補正または入力が必要である場合、すなわち、ユーザより到着パターンの補正が指示されるか、または、ユーザより到着パターンが入力された場合は、ステップＳ１２７が次のステップとなる。それ以外の場合は、ステップＳ１２０の動作が終了する。
【００８２】
ステップＳ１２７では、補正部２２３が、入力部２１０から受け取った情報をもとに、到着パターンデータ２２２を補正するか、到着パターンデータ２２２にデータを追加するかを判断する。補正の場合は、ステップＳ１２８が次のステップとなる。追加の場合は、ステップＳ１２９が次のステップとなる。
【００８３】
ステップＳ１２８では、補正部２２３が、入力部２１０から受け取った情報に従って、到着パターンデータ２２２を補正する。
【００８４】
補正としては、任意の補正が行われてよいが、本実施の形態では、到着時間間隔の確率分布の平均を増加させる補正が行われる。具体例として、離散幅が１であり、平均を２増加させる場合、以下の処理が実行される。
ステップ１：到着時間間隔が０または１に対応する確率を０とする。
ステップ２：ｎ＝２とする。
ステップ３：到着時間間隔がｎに対応する確率を、元の到着時間間隔がｎ−２に対応する確率とする。
ステップ４：ｎを１増加させる。
ステップ５：ｎ−２が元の到着時間間隔の最大値となるまで、ステップ３およびステップ４を繰り返す。
【００８５】
他の補正として、分散を増加させる補正が行われてもよい。どのような補正を行うにしても、到着時間間隔の値は０以上という制限があるため、負の値を付与する補正は避ける。補正後の到着時間間隔の確率分布は第２パターンに相当する。
【００８６】
ステップＳ１２９では、補正部２２３が、入力部２１０から受け取った情報を到着パターンデータ２２２に追加する。
【００８７】
図８を参照して、図４のステップＳ１５０の詳細な動作を説明する。
【００８８】
ステップＳ１５１では、送信部２３１が、実行部１１０に、リクエスト６００を送信する。
【００８９】
ステップＳ１５２では、第２測定部１２２が、実行部１１０が１件のリクエスト６００を処理するのに要する時間を測定し、処理時間として処理時間データ７００に追加する。処理時間データ７００は、実行部１１０が１件のリクエスト６００を処理するのに要する時間を、図９に示すような形式で表すデータである。
【００９０】
ステップＳ１５３では、第２測定部１２２が、処理時間データ７００が処理時間の確率分布を算出するために十分であるかどうかを確認する。十分でない場合は、ステップＳ１５１以降が繰り返される。
【００９１】
ステップＳ１５４では、第２測定部１２２が、処理時間データ７００を算出部２３２に送信する。
【００９２】
ステップＳ１５５では、算出部２３２が、処理時間データ７００から処理時間の確率分布を離散的に算出する。そして、算出部２３２が、算出結果を処理時間分布データ２３３としてメモリ２０２に格納する。処理時間分布データ２３３は、実行部１１０が１件のリクエスト６００を処理するのに要する処理時間の離散的な確率分布を、図１０に示すような形式で表すデータである。
【００９３】
図１１を参照して、図４のステップＳ１７０の詳細な動作を説明する。
【００９４】
ステップＳ１７１では、第１算出部２４１が、到着パターンデータ２２２と、処理時間分布データ２３３とを読み込む。
【００９５】
ステップＳ１７２では、第１算出部２４１が、読み込んだデータを用いて応答時間分布を算出し、算出結果を応答時間分布データ２４２としてメモリ２０２に格納する。図示していないが、応答時間分布データ２４２は、実行部１１０が１件のリクエスト６００を受けてから応答するまでに要する応答時間の離散的な確率分布を、処理時間分布データ２３３と同様の形式で表すデータである。
【００９６】
応答時間分布の算出は、任意の方法で行われてよいが、本実施の形態では、以下の方法で行われる。
ステップ１：実行部１１０の挙動を、ケンドールの記法でいうところのＧ／Ｇ／１とみなして、Ｗｉｅｎｅｒ−Ｈｏｐｆ法およびＬｉｎｄｌｅｙの方程式を用いて、待ち時間の分布を算出する。待ち時間の分布の算出方法としては、例えば、非特許文献１に記載の方法がある。
ステップ２：応答時間が処理時間と待ち時間との和であることを利用して、確率変数の合成積により、応答時間の分布を算出する。
【００９７】
ステップＳ１７３では、第２算出部２４３が、応答時間分布データ２４２を読み込む。
【００９８】
ステップＳ１７４では、第２算出部２４３が、読み込んだデータを用いて、性能特性値２４４として、応答時間の平均または最大値等の性能要件に記載のある数値を算出する。そして、第２算出部２４３が、算出結果をメモリ２０２に格納する。
【００９９】
図１２を参照して、図４のステップＳ１９０の詳細な動作を説明する。
【０１００】
ステップＳ１９１では、出力部２５０が、性能特性値２４４と、あらかじめメモリ２０２に格納された性能要件データ２６０を読み込む。性能要件データ２６０は、性能要件を示すデータである。
【０１０１】
ステップＳ１９２では、出力部２５０が、性能特性値２４４と性能要件データ２６０とを用いて、性能試験結果を判断する。
【０１０２】
ステップＳ１９３では、出力部２５０が、性能特性値２４４と性能試験結果とを出力装置４００が出力可能な形式に変換し、変換結果を出力装置４００に伝達する。そして、出力装置４００が、出力部２５０から受け取った情報を出力する。
【０１０３】
＊＊＊実施の形態の効果の説明＊＊＊
本実施の形態では、サーバ１００を動作させたときの処理時間の確率分布と、サーバ１００を動作させたときのリクエスト６００の到着パターンとは異なる到着パターンとから、応答時間の確率分布が算出される。そのため、到着パターンを再現せずに、その到着パターンの影響を考慮した性能試験を実施することができる。よって、本実施の形態によれば、性能試験の精度および効率の両方が向上する。
【０１０４】
本実施の形態では、実行部１１０に任意の到着パターンでリクエスト６００を送信して測定した処理時間の情報と、到着パターンデータ２２２に記録された特定の到着パターンの情報とから、リクエスト６００を当該特定の到着パターンで発生させることなく、当該特定の到着パターンにおける性能特性値２４４が算出される。よって、当該特定の到着パターンの影響を考慮した性能試験結果を効率良く得ることができる。
【０１０５】
性能要件で挙げられた到着パターンが非常に密である等、限られたリソースで発生可能な範囲を逸脱する場合、または、事前に到着パターンが記録できない場合、従来の方法では性能試験の実施が不可能であるが、本実施の形態によって性能試験の実施が可能となる。
【０１０６】
性能要件が多数あり、多数の到着パターンにおける応答時間を確かめる場合、従来の方法では何回も測定が必要となるが、本発明によって１回の測定で十分となる。
【０１０７】
本実施の形態によれば、応答時間の平均値を算出するだけでなく、性能試験で必要な応答時間の最大値またはパーセンタイル値等の分布特性を算出および出力することができる。
【０１０８】
＊＊＊他の構成＊＊＊
本実施の形態では、性能評価装置２００の入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能がソフトウェアにより実現されるが、別の変形例として、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能の一部が専用のハードウェアにより実現され、残りがソフトウェアにより実現されてもよい。
【０１０９】
専用のハードウェアは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＦＰＧＡ、ＡＳＩＣ、または、これらのうちいくつか、もしくは、すべての組み合わせである。「ＩＣ」は、Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。「ＧＡ」は、Ｇａｔｅ  Ａｒｒａｙの略語である。「ＦＰＧＡ」は、Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略語である。「ＡＳＩＣ」は、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。
【０１１０】
プロセッサ２０１および専用のハードウェアは、いずれも処理回路である。すなわち、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の機能がソフトウェアにより実現されるか、ソフトウェアとハードウェアとの組み合わせにより実現されるかに関わらず、入力部２１０、パターン記録部２２０、分布記録部２３０、評価部２４０および出力部２５０の動作は、処理回路により行われる。
【０１１１】
実施の形態２．
本実施の形態について、主に実施の形態１との差異を、図１３から図１６を用いて説明する。
【０１１２】
＊＊＊構成の説明＊＊＊
本実施の形態に係るシステムの全体構成については、実施の形態１のものと同じであるため、説明を省略する。
【０１１３】
サーバ１００の構成については、実施の形態１のものと同じであるため、説明を省略する。
【０１１４】
図１３を参照して、本実施の形態に係る性能評価装置２００の構成を説明する。
【０１１５】
性能評価装置２００の構成についても、実施の形態１のものとほとんど同じであるが、本実施の形態では、メモリ２０２、補助記憶装置２０３、または、プロセッサ２０１内のレジスタまたはキャッシュメモリに記憶されるデータとして、処理時間パターンデータ２３４がある。
【０１１６】
＊＊＊動作の説明＊＊＊
主に図１４を参照して、本実施の形態に係るサーバ１００および性能評価装置２００の動作を説明する。サーバ１００および性能評価装置２００の動作は、本実施の形態に係る性能評価方法に相当する。
【０１１７】
実施の形態１では、実行部１１０がリクエスト６００の処理に要する時間、すなわち、処理時間が測定される。本実施の形態では、処理時間が測定される代わりに、実行部１１０のリソース消費率が測定され、測定結果から、特許文献２に記載の技術を活用して処理時間が算出される。
【０１１８】
特許文献２には、リクエストの到着過程がポアソン過程であるとみなして簡易に性能を予測する方法が示されている。本実施の形態では、使用する数式を変更することで、特許文献２に記載の技術を、リクエストの到着パターンが任意のパターンである場合に対応可能にする。
【０１１９】
ステップＳ２１０からステップＳ２４０の動作については、実施の形態１におけるステップＳ１１０からステップＳ１４０の動作と同じであるため、説明を省略する。
【０１２０】
ステップＳ２５０では、性能評価装置２００の分布記録部２３０が、サーバ１００の実行部１１０のリソース使用率とリクエスト到着率とから、処理時間の平均値を算出し、算出した処理時間の平均値と事前に格納された処理時間パターンデータ２３４とから、処理時間分布を算出し、記録する。
【０１２１】
具体的には、分布記録部２３０は、サーバ１００のリソースの使用率と、サーバ１００におけるリクエスト６００の到着率とから、処理時間の平均を算出し、処理時間の平均から、処理時間の確率分布のパラメータを決定する。そして、分布記録部２３０は、決定したパラメータを用いて処理時間の確率分布を算出し、算出した処理時間の確率分布を処理時間分布データ２３３としてメモリ２０２に記録する。
【０１２２】
処理時間の平均を算出する方法としては、待ち行列モデルを用いて、サーバ１００の複数リソースの使用率と、サーバ１００におけるリクエスト６００の到着率とから、サーバ１００のリソースごとの処理時間の平均を算出し、算出した平均を合計する方法が用いられる。
【０１２３】
処理時間の平均の合計から、処理時間の確率分布のパラメータを決定する際には、次のように処理時間パターンデータ２３４が用いられる。
【０１２４】
分布記録部２３０の送信部２３１は、入力部２１０から実行命令を受け、実行部１１０へリクエスト６００を送信する。実行部１１０は、リクエスト６００を受信する度に、性能試験の対象となる処理を実行する。測定部１２０の第２測定部１２２は、入力部２１０から実行命令を受け、実行部１１０のリソース使用率およびリクエスト到着率を測定し、測定結果を処理時間データ７００として送信する。本実施の形態では、リソース使用率としては、単位時間当たりのＣＰＵ使用率およびＩ／Ｏ使用率が測定される。リクエスト到着率としては、単位時間当たりのリクエスト到着件数が測定される。分布記録部２３０の算出部２３２は、第２測定部１２２から処理時間データ７００を受け取り、受け取ったデータと、処理時間パターンデータ２３４とをもとに処理時間分布を算出し、処理時間分布データ２３３としてメモリ２０２に格納する。なお、本実施の形態では、処理時間の確率分布のパラメータは１つであり、具体的には、処理時間の平均であるが、処理時間の確率分布のパラメータは２つ以上あってもよい。その場合、確率分布の関数とパラメータ間の関係式とを合わせて、処理時間パターンデータ２３４で定義する。例えば、正規分布の場合、パラメータは平均と分散との２つである。その場合、処理時間パターンデータ２３４は、正規分布の関数および分散＝平均×ａ等の関係式を定義するデータとなる。
【０１２５】
ステップＳ２６０からステップＳ２９０の動作については、実施の形態１におけるステップＳ１６０からステップＳ１９０の動作と同じであるため、説明を省略する。
【０１２６】
図１５を参照して、図１４のステップＳ２５０の詳細な動作を説明する。
【０１２７】
ステップＳ２５１では、送信部２３１が、実行部１１０に、リクエスト６００を送信する。
【０１２８】
ステップＳ２５２では、第２測定部１２２が、実行部１１０のリソース使用率とリクエスト到着率とを測定し、測定結果を処理時間データ７００に追加する。リソース使用率は、単位時間当たりにリソースが使用された割合である。リクエスト到着率は、単位時間当たりに到着したリクエスト６００の件数である。処理時間データ７００は、実行部１１０のリソース使用率とリクエスト到着率とを、図１６に示すような形式で表すデータである。
【０１２９】
ステップＳ２５３では、第２測定部１２２が、処理時間データ７００が処理１件当たりのリソース使用量の平均を算出するために十分であるかどうかを確認する。十分でない場合は、ステップＳ２５１以降が繰り返される。
【０１３０】
ステップＳ２５４では、第２測定部１２２が、処理時間データ７００を算出部２３２に送信する。
【０１３１】
ステップＳ２５５では、算出部２３２が、処理時間データ７００を用いて、リソースごとに、処理１件当たりにリソースが平均で使用される時間である平均リソース使用時間を算出する。リクエスト６００の到着率をλ、ＣＰＵのコア数をｎ、ＣＰＵ消費率をＵｃｐｕ、平均ＣＰＵ使用時間をＴｃｐｕ、Ｉ／Ｏ消費率をＵｉｏ、平均Ｉ／Ｏ使用時間をＴｉｏとすると、平均ＣＰＵ使用時間Ｔｃｐｕおよび平均Ｉ／Ｏ使用時間Ｔｉｏは次式によって求められる。
Ｔｃｐｕ＝ｎ×Ｕｃｐｕ／λ
Ｔｉｏ＝Ｕｉｏ／λ
なお、ＣＰＵのコア数ｎは、算出部２３２が既知情報として保持しているものとする。
【０１３２】
ステップＳ２５６では、算出部２３２が、ステップＳ２５５で算出した平均リソース使用時間を用いて、それぞれのリソースにおける仮想的な応答時間の平均値を算出する。具体的には、算出部２３２が、ＣＰＵ処理をケンドールの記法でいうところのＭ／Ｍ／ｃモデル、Ｉ／Ｏ処理をＭ／Ｍ／１モデルとみなし、それぞれのリソースにおける仮想的な応答時間の平均値を算出する。本来の処理は、細かいＣＰＵ処理とＩ／Ｏ処理とがいくつもあわさって実行されるが、便宜的に、リクエスト単位で、細かいＣＰＵ処理をまとめて１つのＣＰＵ処理、細かいＩ／Ｏ処理をまとめて１つのＩ／Ｏ処理と近似したときの応答時間が、仮想的な応答時間である。それぞれのリソースにおける仮想的な応答時間の平均値は、リソースごとの処理時間の平均に相当する。ＣＰＵ処理の仮想的な平均応答時間ＴＲｃｐｕは次式で求められる。
ＴＲｃｐｕ＝（（Ｔｃｐｕ×（λ×Ｔｃｐｕ）ｎ）／（（ｎ−１）！×（ｎ−λ×Ｔｃｐｕ）２））×Ｐ＋Ｔｃｐｕ
【数１】
2019175985.tif 000003
Ｉ／Ｏ処理の仮想的な平均応答時間ＴＲｉｏは次式で求められる。
ＴＲｉｏ＝Ｔｉｏ／（１−λ×Ｔｉｏ）
【０１３３】
ステップＳ２５７では、算出部２３２が、処理時間の平均値Ｔを算出する。処理時間の平均値Ｔは、先に求めたＣＰＵ処理の仮想的な平均応答時間ＴＲｃｐｕと、Ｉ／Ｏ処理の仮想的な平均応答時間ＴＲｉｏとを用いて、次式で求められる。
Ｔ＝ＴＲｃｐｕ＋ＴＲｉｏ
【０１３４】
ステップＳ２５８では、算出部２３２が、事前に格納された処理時間パターンデータ２３４を読み込む。処理時間パターンデータ２３４は、指数分布等の、処理１件当たりの処理時間の分布の形状を表すデータである。
【０１３５】
ステップＳ２５９では、算出部２３２が、処理時間の平均値と、読み込んだ処理時間パターンデータ２３４に定義されている処理時間パターンとから、処理時間分布を離散的に算出する。そして、算出部２３２が、算出結果を処理時間分布データ２３３としてメモリ２０２に格納する。
【０１３６】
＊＊＊実施の形態の効果の説明＊＊＊
本実施の形態では、実行部１１０のリソース使用率とリクエスト到着率とを測定し、測定結果から処理時間を推定することで、実行部１１０がリクエスト６００の処理に要する時間を測定する必要がなくなる。
【符号の説明】
【０１３７】
１００  サーバ、１０１  プロセッサ、１０２  メモリ、１０３  補助記憶装置、１０４  ネットワークインタフェース、１１０  実行部、１２０  測定部、１２１  第１測定部、１２２  第２測定部、２００  性能評価装置、２０１  プロセッサ、２０２  メモリ、２０３  補助記憶装置、２０４  ネットワークインタフェース、２０５  入力インタフェース、２０６  出力インタフェース、２１０  入力部、２２０  パターン記録部、２２１  算出部、２２２  到着パターンデータ、２２３  補正部、２３０  分布記録部、２３１  送信部、２３２  算出部、２３３  処理時間分布データ、２３４  処理時間パターンデータ、２４０  評価部、２４１  第１算出部、２４２  応答時間分布データ、２４３  第２算出部、２４４  性能特性値、２５０  出力部、２６０  性能要件データ、３００  入力装置、４００  出力装置、５００  到着時刻データ、６００  リクエスト、７００  処理時間データ。
【図１】
2019175985.tif 000004
【図２】
2019175985.tif 000005
【図３】
2019175985.tif 000006
【図４】
2019175985.tif 000007
【図５】
2019175985.tif 000008
【図６】
2019175985.tif 000009
【図７】
2019175985.tif 000010
【図８】
2019175985.tif 000011
【図９】
2019175985.tif 000012
【図１０】
2019175985.tif 000013
【図１１】
2019175985.tif 000014
【図１２】
2019175985.tif 000015
【図１３】
2019175985.tif 000016
【図１４】
2019175985.tif 000017
【図１５】
2019175985.tif 000018
【図１６】
2019175985.tif 000019
【手続補正書】
【提出日】平成30年8月6日(2018.8.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録部と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録部と、
前記分布記録部により記録された確率分布と、前記パターン記録部により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出し、前記応答時間の確率分布に基づいて、応答時間の特性を表す性能特性値を算出する評価部と
前記評価部により算出された性能特性値と予め記録された性能要件とから、前記第２パターンにおけるサーバの性能試験の結果を判断して出力する出力部と
を備える性能評価装置。
【請求項２】
前記パターン記録部は、前記第１パターンを算出し、算出結果を補正することで前記第２パターンを決定する請求項１に記載の性能評価装置。
【請求項３】
前記パターン記録部は、前記サーバにおける各リクエストの到着時刻を示すデータから、前記サーバにおけるリクエストの到着時間間隔の確率分布を前記第１パターンとして算出する請求項２に記載の性能評価装置。
【請求項４】
前記パターン記録部は、前記到着時間間隔の確率分布から、特性が異なる確率分布を前記第２パターンとして算出する請求項３に記載の性能評価装置。
【請求項５】
前記パターン記録部は、入力インタフェースを介して前記第２パターンの入力を受け付ける請求項１に記載の性能評価装置。
【請求項６】
前記評価部は、待ち行列モデルを用いて、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの待ち時間の確率分布を算出し、前記処理時間の確率分布と、前記待ち時間の確率分布とから、前記応答時間の確率分布を算出する請求項１から５のいずれか１項に記載の性能評価装置。
【請求項７】
前記分布記録部は、前記サーバにおける前記処理時間の測定結果から、前記処理時間の確率分布を算出する請求項１から６のいずれか１項に記載の性能評価装置。
【請求項８】
前記分布記録部は、前記サーバのリソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記処理時間の平均を算出し、前記処理時間の平均から、前記処理時間の確率分布のパラメータを決定する請求項１から６のいずれか１項に記載の性能評価装置。
【請求項９】
前記分布記録部は、待ち行列モデルを用いて、前記サーバの複数リソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記サーバのリソースごとの前記処理時間の平均を算出し、算出した平均の合計から、前記処理時間の確率分布のパラメータを決定する請求項８に記載の性能評価装置。
【請求項１０】
前記応答時間の確率分布から算出される、前記サーバの性能の指標値を出力する出力部をさらに備える請求項１から９のいずれか１項に記載の性能評価装置。
【請求項１１】
サーバが、リクエストを繰り返し受信して処理を実行し、
性能評価装置が、前記サーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録し、
前記性能評価装置が、前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録し、
前記性能評価装置が、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出し、前記応答時間の確率分布に基づいて、応答時間の特性を表す性能特性値を算出し、
前記性能評価装置が、前記性能特性値と予め記録された性能要件とから、前記第２パターンにおけるサーバの性能試験の結果を判断して出力する性能評価方法。
【請求項１２】
コンピュータに、
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録手順と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録手順と、
前記分布記録手順により記録された確率分布と、前記パターン記録手順により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出し、前記応答時間の確率分布に基づいて、応答時間の特性を表す性能特性値を算出する評価手順と、
前記評価手順により算出された性能特性値と予め記録された性能要件とから、前記第２パターンにおけるサーバの性能試験の結果を判断して出力する出力手順と
を実行させる性能評価プログラム。
【手続補正書】
【提出日】平成30年12月27日(2018.12.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録部と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録部と、
前記分布記録部により記録された確率分布と、前記パターン記録部により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する評価部と
を備え、
前記パターン記録部は、前記サーバにおける各リクエストの到着時刻を示すデータから、前記サーバにおけるリクエストの到着時間間隔の確率分布を前記第１パターンとして算出し、前記到着時間間隔の確率分布から分散が異なる確率分布を前記第２パターンとして算出する性能評価装置。
【請求項２】
前記パターン記録部は、入力インタフェースを介して前記第２パターンの入力を受け付ける請求項１に記載の性能評価装置。
【請求項３】
前記評価部は、待ち行列モデルを用いて、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの待ち時間の確率分布を算出し、前記処理時間の確率分布と、前記待ち時間の確率分布とから、前記応答時間の確率分布を算出する請求項１又は２に記載の性能評価装置。
【請求項４】
前記分布記録部は、前記サーバにおける前記処理時間の測定結果から、前記処理時間の確率分布を算出する請求項１から３のいずれか１項に記載の性能評価装置。
【請求項５】
前記分布記録部は、前記サーバのリソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記処理時間の平均を算出し、前記処理時間の平均から、前記処理時間の確率分布のパラメータを決定する請求項１から４のいずれか１項に記載の性能評価装置。
【請求項６】
前記分布記録部は、待ち行列モデルを用いて、前記サーバの複数リソースの使用率と、前記サーバにおけるリクエストの到着率とから、前記サーバのリソースごとの前記処理時間の平均を算出し、算出した平均の合計から、前記処理時間の確率分布のパラメータを決定する請求項５に記載の性能評価装置。
【請求項７】
前記応答時間の確率分布から算出される、前記サーバの性能の指標値を出力する出力部をさらに備える請求項１から６のいずれか１項に記載の性能評価装置。
【請求項８】
サーバが、リクエストを繰り返し受信して処理を実行し、
性能評価装置が、前記サーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録し、
前記性能評価装置が、前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録し、
前記性能評価装置が、前記処理時間の確率分布と、前記第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出し、
前記性能評価装置は、前記サーバにおける各リクエストの到着時刻を示すデータから、前記サーバにおけるリクエストの到着時間間隔の確率分布を前記第１パターンとして算出し、前記到着時間間隔の確率分布から分散が異なる確率分布を前記第２パターンとして算出する性能評価方法。
【請求項９】
コンピュータに、
リクエストを繰り返し受信して処理を実行するサーバを動作させたときの、前記サーバにおける各リクエストに応じた処理の開始からの処理時間の確率分布を算出し、前記処理時間の確率分布をメモリに記録する分布記録手順と、
前記サーバを動作させたときの、前記サーバにおけるリクエストの到着パターンである第１パターンとは異なる到着パターンである第２パターンを前記メモリに記録するパターン記録手順と、
前記分布記録手順により記録された確率分布と、前記パターン記録手順により記録された第２パターンとから、前記サーバにおける各リクエストの到着からの応答時間の確率分布を算出する評価手順と
を実行させ、
前記パターン記録手順は、前記サーバにおける各リクエストの到着時刻を示すデータから、前記サーバにおけるリクエストの到着時間間隔の確率分布を前記第１パターンとして算出し、前記到着時間間隔の確率分布から分散が異なる確率分布を前記第２パターンとして算出する性能評価プログラム。
【国際調査報告】
2019175985.tif 000020
2019175985.tif 000021
2019175985.tif 000022
2019175985.tif 000023