(57)【要約】【課題】対象装置の性能モデルのパラメータ同定のための集計区間データの精度を一定に保ちながら、一定時間内で多くの集計区間データを生成する。【解決手段】集計区間計算部５は、集計区間ｉの開始時刻を設定し、計測データ中から当該開始時刻から一定時間内のリソース利用率情報を取得する。処理時間計算部４は、リソース利用率情報と無負荷時処理時間とを利用してリソース利処理時間情報を推定する。集計区間計算部５は、処理時間情報Ｒと許容誤差率とを利用し、集計区間ｉの時間を計算し、集計区間ｉの終了時刻を計算する。集計区間計算部５は、をデータ生成部６に送信する。データ生成部６は、集計区間ｉの開始時刻、終了時刻およびその間の計測データをもとに、集計区間ｉの開始時刻と終了時刻の間のリソース利用時間および処理の種類毎の発生量を集計することで集計区間データを生成する。【選択図】      図１
2009140358.tif 000002
【特許請求の範囲】
【請求項１】
対象装置が実行する各処理による各リソースの利用率の計測値および前記対象装置が特定のリソースを利用して当該リソースが他のリソースと競合しない状態で実行する各処理の処理時間情報を基に、前記対象装置が実行する各処理の処理時間を推定する処理時間推定手段と、
前記処理時間推定手段により推定した処理時間をもとに、前記対象装置の性能モデルのパラメータ同定のための集計区間の時間を当該区間において発生する各処理の処理時間の総和のうち当該区間外となる時間が許容条件を満たすように計算する集計区間計算手段と、
前記各リソースの利用率の計測値を基に、前記集計区間計算手段により計算した時間内の各リソースの利用率を集計する集計手段と
を備えることを特徴とする性能演算装置。
【請求項２】
対象装置が実行する各処理の処理時間の計測値を取得する取得手段と、
前記取得手段により取得した処理時間を基に、前記対象装置の性能モデルのパラメータ同定のための集計区間の時間を当該区間において発生する各処理の処理時間の総和のうち当該区間外となる時間が許容条件を満たすように計算する集計区間計算手段と、
前記対象装置が実行する各処理による各リソースの利用率の計測値を基に、前記集計区間計算手段により計算した時間内の各リソースの利用率を集計する集計手段と
を備えることを特徴とする性能演算装置。
【請求項３】
前記集計手段は、
前記対象装置が実行する各処理の処理量の計測値を基に、前記集計区間計算手段により計算した集計区間の時間内の各処理の発生量をさらに集計する
ことを特徴とする請求項１または２に記載の性能演算装置。
【請求項４】
前記集計手段は、
前記集計区間計算手段により計算した集計区間時間内の各処理の発生量が基準値を超えない場合に、当該時間内の各リソースの利用率を集計する
ことを特徴とする請求項１に記載の性能演算装置。
【請求項５】
コンピュータを、
対象装置が実行する各処理による各リソースの利用率の計測値および前記対象装置が特定のリソースを利用して当該リソースが他のリソースと競合しない状態で実行する各処理の処理時間情報を基に、前記対象装置が実行する各処理の処理時間を推定する処理時間推定手段、
前記処理時間推定手段により推定した処理時間をもとに、前記対象装置の性能モデルのパラメータ同定のための集計区間の時間を当該区間において発生する各処理の処理時間の総和のうち当該区間外となる時間が許容条件を満たすように計算する集計区間計算手段、および
前記各リソースの利用率の計測値を基に、前記集計区間計算手段により計算した時間内の各リソースの利用率を集計する集計手段
として機能させるようにしたコンピュータ読み取り可能な性能演算処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばインターネットシステム、イントラネットシステムなどの計算機システムの性能演算装置および性能演算処理プログラムに関する。
【背景技術】
【０００２】
従来、計算機システムでは、オペレータの習熟やユーザ数の増加などによる処理量の増加、データ量の増加やそれに伴うキャッシュミス率の増加に伴い、性能が徐々に劣化していく傾向がある。そこで、例えば特許文献１や特許文献２に開示されるように、システムの性能を監視する装置が用いられる。
【特許文献１】特開２００７−２６３０３号公報
【特許文献２】特開２００５−１５７９３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
システムの性能問題を未然に防止するには、システムの余裕度と処理量を監視し、性能劣化の予兆を捉えて、事前に対応することが必要である。
【０００４】
処理の種類毎に、その処理が一回実行されるときのリソース利用量が推定できていれば、処理量がピーク時の各処理の実行される比率に合わせて、リソース利用率を見積もることができる。定期的にこのリソース利用率の見積りを行うことにより、性能が劣化する前にリソース増強などの対策を実施し、性能劣化を事前に防止できる。
【０００５】
ところで、運用中の計算機システムでは、運用を停止して、一つの処理が実行されるときのリソース利用量を計測することは難しい。そこで、運用中に計測できるデータを用いて、一つの処理が実行されるときのリソース利用量を推定する必要がある。運用中のシステムでは、複数種類の処理が同時に実行されており、一定時間内に実行された種類毎の処理数とリソース利用率が計測できる。
【０００６】
一つの処理が実行されるときのリソース利用量が常に一定値であれば、連立方程式を解くことにより、運用中に計測できるデータから処理毎のリソース利用量を計算することができる。しかし、実際には計測誤差や処理が持つパラメータの違いなどによりリソース利用量が揺らいでいるために、連立方程式では解くことが出来ないという問題がある。
【０００７】
そこで、処理の種類毎に、その処理が一回実行される時のリソース利用量を例えば正規分布のような確率分布で表現し、その平均値と標準偏差値をパラメータとして、運用中の計算機システムで計測できる、処理の種類毎の発生数とリソース利用率を基にパラメータ同定する方法が考えられる。
【０００８】
このパラメータ、すなわち、各種類の処理が一回実行される時のリソース利用量の確率分布がうまく同定できれば、処理量がピーク時の各処理の実行される比率に合わせて、リソース利用率の確率分布を見積もることができるようになる。
【０００９】
処理の種類毎の発生数とリソース利用率は予め決められた一定時間間隔で計測される。この一定時間間隔の計測データを１つあるいは複数をまとめたものを集計区間データとして、パラメータ同定計算に利用する。
【００１０】
パラメータ同定精度を高めるためには、集計区間内に発生した処理の種類毎の発生量とそれらの処理によって利用されたリソース利用時間が正確に集計される必要がある。また、これまでのパラメータ同定実験の結果、多くの集計区間データを利用することがパラメータ同定精度を高めるためには不可欠であることが分かっており、一定期間計測された計測データから精度の良い多くの集計区間データを生成する必要がある。
【００１１】
単に集計区間を短時間で区切ると、発生した処理がリソースを利用している途中で区間が区切られてしまい、集計区間データの精度が低下する問題がある。逆に集計区間を長時間で区切ると、発生した処理がリソースを利用している途中で区切られる割合は小さくなり集計区間データの精度は高くなるが、一定期間の計測データ内で生成できる集計区間データ数は小さくなってしまうことから、適当な長さで分割する必要がある。
【００１２】
また、対象システムの実装されている計算機のリソース利用率が高いと待ち時間が発生するために、各処理の処理時間が長くなってしまい、リソース利用率が低い場合と同じ時間で集計区間が区切られると、集計区間データの精度が悪くなってしまう。
【００１３】
そこで、本発明の目的は、対象装置の性能モデルのパラメータ同定のための集計区間データの精度を一定に保ちながら、一定時間内で多くの集計区間データを生成することが可能になる性能演算装置および性能演算処理プログラムを提供することにある。
【課題を解決するための手段】
【００１４】
すなわち、本発明に係わる性能演算装置は、対象装置が実行する各処理による各リソースの利用率の計測値および対象装置が特定のリソースを利用して当該リソースが他のリソースと競合しない状態で実行する各処理の処理時間情報を基に、対象装置が実行する各処理の処理時間を推定し、この推定した処理時間をもとに、対象装置の性能モデルのパラメータ同定のための集計区間の時間を当該区間において発生する各処理の処理時間の総和のうち当該区間外となる時間が許容条件を満たすように計算し、計算した時間内の各リソースの利用率を集計することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、対象装置の性能モデルのパラメータ同定のための集計区間データの精度を一定に保ちながら、一定時間内で多くの集計区間データを生成することができる。
【発明を実施するための最良の形態】
【００１６】
以下図面により本発明の実施形態について説明する。  
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。  
図１は、本発明の第１の実施形態にしたがった性能演算装置の構成の一例を示すブロック図である。  
図２は、本発明の第１の実施形態にしたがった性能演算装置が取り扱う各種データの入出力関係の一例を示す図である。  
本発明の第１の実施形態にしたがった性能演算装置は、対象システムが実装されている計算機の運用時のリソース利用率と無負荷時の処理時間から推定される各処理の処理時間を推定する場合の集計区間データを生成する機能を有する。
【００１７】
図１に示すように、第１の実施形態にしたがった性能演算装置は、計測データ入力部１、無負荷時処理時間入力部２、許容誤差率入力部３、処理時間計算部４、集計区間計算部５、データ生成部６、集計区間データ出力部７、記憶装置８、キーボードやマウスといった入力装置９およびディスプレイ装置といった表示装置１０を備え、それぞれがバス１１を介して接続される。
【００１８】
記憶装置８は、例えばハードディスクドライブや不揮発性メモリ装置などのハードウェアで構成された記憶媒体であり、計測データ入力部１、無負荷時処理時間入力部２、許容誤差率入力部３、処理時間計算部４、集計区間計算部５、データ生成部６、集計区間データ出力部７による動作のための制御プログラムを記憶する他、計測データ記憶部２１、処理時間記憶部２２、誤差率記憶部２３および集計区間データ記憶部２４を有する。計測データ入力部１、無負荷時処理時間入力部２、許容誤差率入力部３、処理時間計算部４、集計区間計算部５、データ生成部６、集計区間データ出力部７は記憶装置８に記憶された制御プログラムを読み出すことにより処理を実行する。
【００１９】
計測データ入力部１は、計測ツールプログラムによって計測された、対象システムが実装されている計算機のＣＰＵ、ディスクなどのリソースの利用率、および処理種類別の処理量といった性能データを外部から受信し、このデータを集計区間計算部５に送信する。
【００２０】
無負荷時処理時間入力部２は、各処理の無負荷時処理時間、すなわち、対象システムが実装されている計算機のリソースが他のプロセスと競合しない状態で計測された各処理の処理時間を外部から受信し、これを処理時間計算部４に送信する。  
許容誤差率入力部３は、生成対象の集計区間データの許容誤差率を外部から受信し、これを集計区間計算部５に送信する。
【００２１】
処理時間計算部４は、無負荷時処理時間入力部２から各処理の無負荷時処理時間を受信して記憶装置８の処理時間記憶部２２に保持し、対象システムが実装されている計算機のリソース利用率を集計区間計算部５から受信し、この受信したリソース利用率をもとに各処理の処理時間を計算し、この計算した処理時間を集計区間計算部５に送信する。
【００２２】
集計区間計算部５は、計測データ入力部１から計測データを受信して記憶装置８の計測データ記憶部２１に保持し、この保持した計測データの初期時刻を集計区間の開始時刻として記憶装置８に保持し、この開始時刻における、対象システムが実装されている計算機のリソース利用率を処理時間計算部４に送信する。
【００２３】
また、集計区間計算部５は、許容誤差率入力部３から許容誤差率を受信して記憶装置８の誤差率記憶部２３に保持し、処理時間計算部４から各処理の処理時間を受信し、処理時間計算部４から受信した処理時間および許容誤差率入力部３から受信した許容誤差率を基に集計区間の時間を計算する。
【００２４】
また、集計区間計算部５は、前述したように記憶装置８に保持していた集計区間の開始時刻に、前述したように計算した集計区間の時間を加算することで集計区間終了時刻を求め、この終了時刻までの計測データを保持しているかを確認する。
【００２５】
そして、集計区間計算部５は、前述した計測データを保持している場合には、集計区間の開始時刻、終了時刻とその間の計測データをデータ生成部６に送信し、終了時刻を次の集計区間の開始時刻として記憶装置８に保持し、この開始時刻から一定時間内のリソース利用率を処理時間計算部４に送信する。
【００２６】
データ生成部６は、集計区間計算部５から集計区間の開始時刻、終了時刻とその間の計測データを受信すると、その間のリソース利用時間と処理量を集計し、集計区間データとして集計区間データ出力部７に送信する。  
集計区間データ出力部７は、データ生成部６から集計区間データを受信し、表示装置１０に出力する。
【００２７】
次に、以上のように構成された性能演算装置による集計区間データ生成にかかる動作を説明する。  
図３は、本発明の第１の実施形態にしたがった性能演算装置の処理動作の一例を示すフローチャートである。  
まず、計測データ入力部１は、外部から計測データを入力して、これを集計区間計算部５に送信する。集計区間計算部５は受信した計測データを記憶装置８の計測データ記憶部２１に保持する（ステップＳ１）。
【００２８】
無負荷時処理時間入力部２は、外部から無負荷時処理時間を入力して、これを処理時間計算部４に送信する。処理時間計算部４は、無負荷時処理時間入力部２から受信した無負荷時処理時間を記憶装置８の処理時間記憶部２２に保持する（ステップＳ２）。
【００２９】
許容誤差率入力部３は、外部から集計区間データの許容誤差率を入力して、これを集計区間計算部５に送信する。集計区間計算部５は、許容誤差率入力部３から受信した許容誤差率を記憶装置８の誤差率記憶部２３に保持する（ステップＳ３）。
【００３０】
集計区間計算部５は、初期設定として、集計区間データの番号を表す変数ｉを１に設定する（ステップＳ４）。  
集計区間計算部５は、ステップＳ１の処理で取得した計測データの初期時刻Ｔ０を集計区間ｉの開始時刻Ｔｓｉに設定し（ステップＳ５）、計測データ中から当該開始時刻から一定時間内のリソース利用率情報Ｕ（Ｔｓｉ）を取得し、これを処理時間計算部４に送信する。
【００３１】
処理時間計算部４は、集計区間計算部５からリソース利用率情報Ｕ（Ｔｓｉ）を受信すると、許容誤差率入力部３からの無負荷時処理時間を利用してリソース利用率情報がＵ（Ｔｓｉ）の時の処理時間情報Ｒ（Ｔｓｉ）を推定し（ステップＳ６）、これを集計区間計算部５に送信する。
【００３２】
集計区間計算部５は、処理時間計算部４から処理時間情報Ｒ（Ｔｓｉ）を受信すると、記憶装置８の誤差率記憶部２３に保持している許容誤差率を利用し、集計区間ｉの時間Ｔｂｉを計算し、集計区間ｉの終了時刻Ｔｅｉを以下の式（１）にしたがって計算する（ステップＳ７）。
【００３３】
Ｔｅｉ＝Ｔｓｉ＋Ｔｂｉ  ・・・式（１）
この式（１）は、集計区間ｉの開始時刻Ｔｓｉより時間Ｔｂｉだけ後の時刻が終了時刻Ｔｅｉとなることを意味する。
【００３４】
集計区間計算部５は、この集計区間ｉの終了時刻Ｔｅｉと計測データの最終時刻Ｔｆを比較し、集計区間ｉの終了時刻Ｔｅｉが計測データの最終時刻Ｔｆより後であれば（ステップＳ８のＹＥＳ）処理を終了する。
【００３５】
一方、集計区間計算部５は、集計区間ｉの終了時刻Ｔｅｉが計測データの最終時刻Ｔｆより前であれば（ステップＳ８のＮＯ）、集計区間ｉの開始時刻Ｔｓｉと終了時刻Ｔｅｉとその間の計測データをデータ生成部６に送信する。
【００３６】
データ生成部６は、集計区間計算部５から受信した計測データから、集計区間ｉの開始時刻Ｔｓｉと終了時刻Ｔｅｉ間のリソース利用時間、処理の種類毎の発生量を集計することで集計区間データを生成し（ステップＳ９）、これを集計区間データ出力部７に送信する。  
集計区間データ出力部７は、データ生成部６から受信した集計区間データを表示装置１０に表示させる（ステップＳ１０）。
【００３７】
すると、集計区間計算部５は、集計区間データの番号ｉに１を加算して更新する（ステップＳ１１）。  
集計区間計算部５は、集計区間ｉ−１の終了時刻Ｔｅｉ−１を集計区間ｉの開始時刻Ｔｓｉに設定し（ステップＳ１２）、ステップＳ６の処理に戻る。
【００３８】
以上のように、本発明の第１の実施形態にしたがった性能演算装置は、予め計測された対象システムの各処理の無負荷時の処理時間と、対象システムが実装された計算機のリソース利用率とから、そのリソース利用率時の各処理の処理時間を推定し、推定された各処理の処理時間と外部から入力された許容誤差率を使って集計区間データを決定する。よって、集計区間データの精度を一定に保ちながら、一定時間内で多くの集計区間データを生成でき、性能モデルのパラメータ同定の精度を高く維持することができる。
【００３９】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。なお、本実施形態に係る性能演算装置の構成は図１に示したものと基本的にほぼ同様であるので同一部分の説明は省略する。  
この第２の実施形態にしたがった性能演算装置は、対象システムの運用時の処理時間が計測されている場合に集計区間データを生成する機能を有する。  
図４は、本発明の第２の実施形態にしたがった性能演算装置の構成の一例を示すブロック図である。  
図５は、本発明の第２の実施形態にしたがった性能演算装置が取り扱う各種データの入出力関係の一例を示す図である。  
図４に示すように、本発明の第２の実施形態にしたがった性能演算装置は、本発明の第１の実施形態にしたがった性能演算装置と比較して、無負荷時処理時間入力部２、処理時間計算部４を備えていない一方で、処理時間入力部３１をさらに備える。  
処理時間入力部３１は、対象システムの運用時の各処理の処理時間を外部から受信し、集計区間計算部５に送信する。  
集計区間計算部５は、計測データ入力部１から計測データを受信して記憶装置８の計測データ記憶部２１に保持し、処理時間入力部３１から運用時の各処理の処理時間を受信して記憶装置８の処理時間記憶部２２に保持し、許容誤差率入力部３から許容誤差率を受信して記憶装置８の誤差率記憶部２３に保持する。
【００４０】
また、集計区間計算部５は、保持した計測データの初期時刻を集計区間の開始時刻として記憶装置８に保持し、その開始時刻における各処理の処理時間を検索し、この処理時間と許容誤差率とを基に集計区間の時間を計算する。
【００４１】
また、集計区間計算部５は、記憶装置８に保持していた集計区間の開始時刻に計算済みの集計区間の時間を加算して集計区間終了時刻を求め、その終了時刻までの計測データが記憶装置８に保持されているかを確認し、保持している場合には、集計区間の開始時刻、終了時刻とその間の計測データをデータ生成部６に送信し、終了時刻を次の集計区間の開始時刻として保持し、その時のリソース利用率を処理時間計算部４に送信する。
【００４２】
次に、以上のように構成された性能演算装置による集計区間データ生成にかかる動作を説明する。  
図６は、本発明の第２の実施形態にしたがった性能演算装置の処理動作の一例を示すフローチャートである。  
まず、第１の実施形態と同様に、計測データ入力部１は、外部から計測データを入力して、これを集計区間計算部５に送信する。集計区間計算部５は受信した計測データを記憶装置８の計測データ記憶部２１に保持する（ステップＳ２１）。
【００４３】
処理時間入力部３１は、外部から運用時の各処理の処理時間を入力すると、これを集計区間計算部５に送信する。集計区間計算部５は処理時間入力部３１から受信した処理時間の情報を記憶装置８の処理時間記憶部２２に保持する（ステップＳ２２）。  
以後、前述した第１の実施形態で説明したステップＳ３からＳ５までの処理がなされる（ステップＳ２３〜Ｓ２５）。
【００４４】
そして、集計区間計算部５は、集計区間ｉの開始時刻Ｔｓｉの処理時間情報Ｒ（Ｔｓｉ）を検索し、この検索した処理時間および保持している許容誤差率を利用し、集計区間ｉの時間Ｔｂｉを計算され、集計区間ｉの終了時刻Ｔｅｉを前述した式（１）にしたがって計算する（ステップＳ２６）。  
以後は、前述した第１の実施形態で説明したステップＳ８からＳ１２までの処理がなされる（ステップＳ２７〜Ｓ３１）。
【００４５】
以上のように、本発明の第２の実施形態にしたがった性能演算装置は、対象システムの運用時の各処理の処理時間、および外部から入力された許容誤差率を使って集計区間データを決定することにより、集計区間データの精度を一定に保ちながら、一定時間内で多くの集計区間データを生成でき、性能モデルのパラメータ同定の精度を高く維持することができる。
【００４６】
以下、各実施形態の実施例について説明する。
【実施例１】
【００４７】
まず実施例１を説明する。この実施例１は前述した第１の実施形態の実施例であり、性能モデルのパラメータ同定のための集計区間データ生成方法について説明するものである。
【００４８】
本実施例で説明する対象システムはＷｅｂサーバ、アプリケーションサーバ、データベースサーバのようなサーバ群とクライアントから構成される。この対象システムは、これらのサーバ群やクライアントから以下のような情報を計測データとして計測し、計測データ入力部１に入力する。
【００４９】
計測データは、リソース利用率や処理量情報である。リソース利用率は、サーバマシンのＣＰＵやディスクなどのリソースの利用率であり、例えば１０秒間といった一定時間間隔で計測される。サーバ群は、例えばマイクロソフト社のシステム監視プログラムパフォーマンスモニタ（perfmon.exe）のようなプログラムツールにより計測、ログ出力ができる。
【００５０】
処理量情報は、Ｗｅｂサーバやアプリケーションサーバのログ機能により得られる利用履歴である。利用履歴には以下の二種類があげられる。これらはいずれも一定時間毎のシステムに与えられた処理量を示すものである。
【００５１】
第１の利用履歴は、アクセスログのように、クライアントからの要求に応じて起動された処理の種別および発生時刻が記録されたものである。第２の利用履歴は、一定間隔で、その区間における処理毎の発生数が記録されたものである。
【００５２】
図７は、実施例１における計測データの一例を表形式で示す図である。  
図７に示した計測データは、各処理の処理量、各リソースの利用率が午前０時から２４時まで１０秒間隔で計測されたものである。  
以下では計測データとして、初期時刻Ｔ０から最終時刻Ｔｆまで、一定時間ΔＴ間隔でサーバ計算機のリソース利用率、各処理の処理量のデータが得られるとして説明する。
【００５３】
第１の実施形態でも説明したように、計測データ入力部１に入力された計測データは集計区間計算部５に送信され、集計区間計算部５で保持される。集計区間計算部５は、集計区間の番号を表す変数ｉに初期値「１」を設定する。そして、集計区間計算部５は、取得した計測データの初期時刻Ｔ０を集計区間ｉの開始時刻Ｔｓｉに設定し、その時刻のリソース利用率情報Ｕ（Ｔｓｉ）を処理時間計算部４に送信する。
【００５４】
リソース利用率情報Ｕ（Ｔｓｉ）は以下の式（２）で示される。
【００５５】
Ｕ（Ｔｓｉ）＝{Ｕ１（Ｔｓｉ），Ｕ２（Ｔｓｉ），…，ＵＫ（Ｔｓｉ）}  ・・・式（２）
また、開始時刻Ｔｓｉから一定時間ΔＴの間のリソースｋ（ｋ＝１，２，…，Ｋ；Ｋはリソース数を表す）の利用率はＵｋ（Ｔｓｉ）と表される。
【００５６】
処理時間計算部４は、集計区間計算部５から受信したリソース利用率情報Ｕ（Ｔｓｉ）と、無負荷時処理時間入力部２から受信した無負荷時処理時間情報Ｒ０を利用して、リソース利用率情報がＵ（Ｔｓｉ）の場合の各処理の処理時間情報Ｒ（Ｔｓｉ）を推定する。
【００５７】
無負荷時処理時間情報Ｒ０は以下の式（３）で示される。
【数１】
2009140358.tif 000003
【００５８】
また、各実施例では、以下の式（４）が成り立つとする。
【数２】
2009140358.tif 000004
【００５９】
式（４）におけるＲｊｋ０は、無負荷状態で処理ｊ（ｊ＝１，２，…，Ｊ）がリソースｋ（ｋ＝１，２，…，Ｋ）を利用して実行されるのに要する時間である。また、式（３）におけるＪは処理の種類数である。
【００６０】
処理時間情報の推定方法の一例として、推定式を以下の式（５）および式（６）に示す。  
Ｒ（Ｔｓｉ）＝{Ｒ１（Ｔｓｉ），Ｒ２（Ｔｓｉ），…，ＲＪ（Ｔｓｉ）}  ・・・式（５）
【数３】
2009140358.tif 000005
【００６１】
式（６）におけるＲｊ（Ｔｓｉ）は処理ｊの開始時刻Ｔｓｉから一定時間ΔＴ内に開始する処理の処理時間である。これらの式は待ち行列理論のリトルの公式を各リソースについて適用し、その加算で処理ｊの開始時刻Ｔｓｉから一定時間ΔＴ内に開始する処理の処理時間を計算した近似式である。
【００６２】
開始時刻Ｔｓｉから一定時間ΔＴ内に開始する処理の処理時間を並べたベクトルＲ（Ｔｓｉ）を、ここでは開始時刻Ｔｓｉから一定時間ΔＴ内に開始する処理の処理時間情報と呼ぶ。
【００６３】
処理時間計算部４は、計算された処理時間情報Ｒ（Ｔｓｉ）を集計区間計算部５に送信する。  
集計区間計算部５は、処理時間計算部４から処理時間情報Ｒ（Ｔｓｉ）を受信すると、記憶装置８の誤差率記憶部２３に保持している許容誤差率ρを利用し、集計区間ｉの時間と集計区間ｉの終了時刻を計算する。
【００６４】
集計区間時間の計算式は、以下の式（７）および前述した式（１）で示される。
【数４】
2009140358.tif 000006
【００６５】
式（７）の右辺は、式（５）の右辺である{Ｒ１（Ｔｓｉ），Ｒ２（Ｔｓｉ），…，ＲＪ（Ｔｓｉ）}の最大値を２ρで割った値である。  
この例では各処理の中で最も処理時間が大きい処理に合わせて集計区間の時間を計算しているが、各処理の処理時間の平均値から集計区間の時間を求めてもよい。  
式（７）の導出方法については、後述の許容誤差率と集計区間の時間どの関係で説明する。
【００６６】
集計区間計算部５は、この集計区間ｉの終了時刻Ｔｅｉと計測データの最終時刻Ｔｆを比較し、集計区間ｉの終了時刻Ｔｅｉが計測データの最終時刻Ｔｆより後であれば集計区間データ生成を終了する。
【００６７】
集計区間計算部５は、集計区間ｉの終了時刻Ｔｅｉが計測データの最終時刻Ｔｆより前であれば、集計区間ｉの開始時刻Ｔｓｉと終了時刻Ｔｅｉとその間の計測データをデータ生成部６に送信する。
【００６８】
データ生成部６は、受信した計測データから、以下の式（８）、式（９）、式（１０）にしたがって、集計区間ｉの開始時刻Ｔｓｉと終了時刻Ｔｅｉ間のリソース利用時間、各処理の処理量を集計する。
【数５】
2009140358.tif 000007
【数６】
2009140358.tif 000008
【数７】
2009140358.tif 000009
【００６９】
式（８）の左辺は、集計区間ｉの集計区間データであり、式（９）の左辺は集計区間ｉにおけるリソースｋの利用時間であり、式（１０）の左辺は集計区間ｉにおける処理ｊの処理量である。
【００７０】
データ生成部６は、集計区間データＳｉを集計区間データ出力部７に送信する。集計区間データ出力部７は、この集計区間データを表示装置１０に出力する。  
そして、集計区間計算部５は、集計区間データの番号ｉを１加算して更新し、集計区間ｉ−１の終了時刻Ｔｅｉ−１を集計区間ｉの開始時刻Ｔｓｉに設定する。  
以後、リソース利用率情報Ｒ（Ｔｓｉ）が処理時間計算部４に送信されるところから処理が繰り返され、集計区間データが順次生成される。
【００７１】
図８は、実施例１における集計区間データの一例を表形式で示す図である。  
図８に示した集計区間データは、集計区間番号と集計区間の開始時刻、終了時刻、各リソースのリソース利用時間（秒）、各処理の処理量を示す。
【００７２】
次に、許容誤差率ρと集計区間の時間Ｔｂｉとの関係について説明する。  
説明を簡単にするために、各処理の処理時間が等しい、つまり以下の式（１１）が成り立つとする。
【００７３】
Ｒｊ（ｔ）＝Ｒ（ｊ＝１，２，…，Ｊ）  ・・・式（１１）
図９は、集計区間と処理時間の関係の一例を示す図である。  
図９に示した例では、集計区間の時間Ｔｂｉが処理時間Ｒの３倍である。ここでは、集計区間を処理の処理時間間隔で区切った区間をサブ区間とし、図のように集計区間ｉのサブ区間をサブ区間Ａ，Ｂ，Ｃと呼称する。
【００７４】
図９中の矢印は処理を表し、矢印の左端が処理の発生時刻、右端が処理の終了時刻とする。図９から分かるように、サブ区間Ａ、Ｂで発生した処理は、集計区間ｉ内で終了する。一方、図９において斜線で区別したサブ区間Ｃで発生した処理は、図９に示すように、当該終了時刻が集計区間ｉの終了時刻より後であり、言い換えると処理の一部が集計区間ｉの範囲からはみ出している。
【００７５】
処理が一様に発生する場合、サブ区間Ｃで発生する処理では平均すると処理時間の１／２が集計区間ｉからはみ出る。従って、集計区間ｉで発生する全処理のリソース利用時間のうち集計区間ｉからはみ出す割合、つまり誤差率は１／３×１／２＝１／６になる。同様に、集計区間の時間が処理時間のｎ倍の場合には誤差率は１／２ｎになる。
【００７６】
許容誤差率ρが与えられた場合、許容誤差率を満たすための集計区間の時間Ｔｂｉと処理時間Ｒとの関係は以下の式（１２），式（１３）で示される。  
ρ≧１／２ｎ＝Ｒ／２Ｔｂｉ  ・・・式（１２）
Ｔｂｉ≧Ｒ／２ρ  ・・・式（１３）
すなわち、集計区間の時間Ｔｂｉは処理時間Ｒの１／２ρ倍以上にしなければならないことが分かる。この説明では説明を簡単にするために各処理の処理時間Ｒを一定値にしていたが、本実施例では、集計区間計算部５は、式（７）に示すように、各処理の処理時間が異なる場合に、これらの処理時間のうち最大の処理時間を利用して集計区間を計算する。
【００７７】
次に、リソース利用率と集計区間の時間との関係を説明する。  
図１０は、処理時間と集計区間誤差率との関係の第１の例を示す図である。  
図１０に示した例は、図９に示した例と同様に、集計区間の時間が処理時間の３倍に設定した例である。
【００７８】
この例では、サブ区間Ｃに描かれている矢印はサブ区間Ｃで発生する処理の平均開始時刻と平均終了時刻を表す。また、図１０において斜線で区別したサブ区間Ｃで発生した処理の処理時間の１／２が集計区間ｉをはみ出す。よって、集計区間ｉで計測されるリソース利用量の誤差率は１／３×１／２＝１／６になる。
【００７９】
次に多くの処理が発生し、リソース利用率が高くなった場合を考える。  
図１１は、処理時間と集計区間誤差率との関係の第２の例を示す図である。  
この例は、リソース利用率が高いために、各処理の処理時間がaの処理時間の２倍になった例である。この場合は、図１１において斜線で区別したサブ区間Ｂ、Ｃで発生した処理の処理時間が集計区間ｉをはみ出す。矢印はサブ区間Ｂ、Ｃで発生する処理の平均開始時刻と平均終了時刻を表す。
【００８０】
サブ区間Ｂ、Ｃで発生した処理の処理時間の１／２が集計区間ｉをはみ出す。従って、集計区間ｉで計測されるリソース利用量の誤差率は２／３×１／２＝１／３になる。このように、リソース利用率が高くなると各処理の処理時間が大きくなり、このために集計区間データの誤差率が大きくなってしまうことが分かる。
【００８１】
図１２は、処理時間と集計区間誤差率との関係の第３の例を示す図である。  
この例は、リソース利用率が高いために各処理の処理時間がaの処理時間の２倍になった場合に、集計区間の時間も処理時間に合わせて２倍にした例である。この場合、図１２において斜線で区別したサブ区間Ｃで発生した処理の処理時間が集計区間ｉをはみ出す。矢印はサブ区間Ｃで発生する処理の平均開始時刻と平均終了時刻を表す。
【００８２】
サブ区間ｃで発生した処理の処理時間の１／２が集計区間ｉをはみ出す。よって、集計区間ｉで計測されるリソース利用量の誤差率は１／３×１／２＝１／６になり、図１０に示した例で求められた誤差率と等しくなる。このように、リソース利用率の変化によって各処理の処理時間が変動する場合に、その処理時間に合わせて集計区間の時間を調整することにより、集計区間データの誤差率を一定に保持できることが分かる。
【００８３】
一般的には各処理の処理時間を直接計測することは難しいので、本実施例ではリソース利用率と無負荷時の各処理の処理時間から運用時の処理時間を推定し、集計区間の時間を決定している。
【００８４】
本実施例では、処理時間計算部４は、集計区間ｉの開始時刻のリソース利用率情報Ｕ（Ｔｓｉ）と、無負荷時処理時間入力部２から受信した無負荷時処理時間情報Ｒ０を利用して、各処理の処理時間を推定しているが、リソース利用率の変化が大きい場合には、開始時刻だけでなく、開始時刻から複数時点のリソース利用率の平均値を利用して、各処理の処理時間を推定することもできる。
【００８５】
また、本実施例では、無負荷時処理時間情報として、各処理のリソース毎の利用時間が計測できるとして、各処理の処理時間の推定方法を説明しているが、リソース毎ではなく、リソース全体の処理時間が計測される場合も考えられる。その場合には、各処理のリソース全体の処理時間とリソースの中で最も高いリソース利用率を利用して、各処理の処理時間を推定することができる。または、処理時間の大半を占めるリソースが存在する場合には、そのリソースの利用率を利用して各処理の処理時間を推定することができる。
【００８６】
また、データ生成部６は、集計区間のリソース利用時間と処理量を集計した結果の処理量と、予め設定された値とを比較し、処理量が設定された値を超えている場合に、その集計区間データを破棄し、集計区間データ出力部７には送信しないようにしてもよい。この処理を行なうことにより、パラメータ同定精度の低下の原因になる集計区間データを排除して、集計区間データを生成することができる。
【実施例２】
【００８７】
次に、実施例２を説明する。この実施例２は前述した第２の実施形態の実施例であり、性能モデルのパラメータ同定のための集計区間データ生成方法について説明するものである。また、実施例１と同様の処理の詳細な説明は省略する。本実施例で説明する対象システムは実施例１と同様なので説明を省略する。
【００８８】
以下、実施例１と同様に、計測データとして初期時刻Ｔ０から最終時刻Ｔｆまでの一定時間ΔＴ間隔でサーバ計算機のリソース利用率および各処理の処理量のデータが得られるとする。
【００８９】
計測データ入力部１に入力された計測データは集計区間計算部５に送信され、記憶装置８の計測データ記憶部２１に保持される。また、処理時間入力部３１に入力された処理時間データは集計区間計算部５に送信され、記憶装置８の処理時間記憶部２２に保持される。
【００９０】
図１３は、実施例２における処理時間データの一例を示す図である。  
図１３に示した例では、計測区間の開始時刻と終了時刻、その間に発生した処理の処理時間平均値が処理の種類別に示される。
【００９１】
前述した実施形態で説明したように、集計区間計算部５は、集計区間の番号を表す変数ｉに初期値「１」を設定する。  
集計区間計算部５は、取得した計測データの初期時刻Ｔ０を集計区間ｉの開始時刻Ｔｓｉに設定し、その時刻の処理時間情報Ｒ（Ｔｓｉ）＝{Ｒ１（Ｔｓｉ），Ｒ２（Ｔｓｉ），…，ＲＪ（Ｔｓｉ）}を検索し、この検索した処理時間と保持している許容誤差率ρとを利用し、集計区間ｉの時間Ｔｂｉを計算し、集計区間ｉの終了時刻Ｔｅｉ＝Ｔｓｉ＋Ｔｂｉを計算する。この計算方法は実施例１と同様なので詳細な説明を省略する。以後の処理は実施例１と同様である。
【００９２】
なお、この発明は前記実施形態そのままに限定されるものではなく実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を省略してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【００９３】
【図１】本発明の第１の実施形態にしたがった性能演算装置の構成の一例を示すブロック図。
【図２】本発明の第１の実施形態にしたがった性能演算装置が取り扱う各種データの入出力関係の一例を示す図。
【図３】本発明の第１の実施形態にしたがった性能演算装置の処理動作の一例を示すフローチャート。
【図４】本発明の第２の実施形態にしたがった性能演算装置の構成の一例を示すブロック図。
【図５】本発明の第２の実施形態にしたがった性能演算装置が取り扱う各種データの入出力関係の一例を示す図。
【図６】本発明の第２の実施形態にしたがった性能演算装置の処理動作の一例を示すフローチャート。
【図７】実施例１における計測データの一例を表形式で示す図。
【図８】実施例１における集計区間データの一例を表形式で示す図。
【図９】集計区間と処理時間の関係の一例を示す図。
【図１０】処理時間と集計区間誤差率との関係の第１の例を示す図。
【図１１】処理時間と集計区間誤差率との関係の第２の例を示す図。
【図１２】処理時間と集計区間誤差率との関係の第３の例を示す図。
【図１３】実施例２における処理時間データの一例を示す図。
【符号の説明】
【００９４】
１…計測データ入力部、２…無負荷時処理時間入力部、３…許容誤差率入力部、４…処理時間計算部、５…集計区間計算部、６…データ生成部、７…集計区間データ生成部、８…記憶装置、９…入力装置、１０…表示装置、１１…バス、２１…計測データ記憶部、２２…処理時間記憶部、２３…誤差率記憶部、２４…集計区間データ記憶部、３１…処理時間入力部。
【図１】
2009140358.tif 000010
【図２】
2009140358.tif 000011
【図３】
2009140358.tif 000012
【図４】
2009140358.tif 000013
【図５】
2009140358.tif 000014
【図６】
2009140358.tif 000015
【図７】
2009140358.tif 000016
【図８】
2009140358.tif 000017
【図９】
2009140358.tif 000018
【図１０】
2009140358.tif 000019
【図１１】
2009140358.tif 000020
【図１２】
2009140358.tif 000021
【図１３】
2009140358.tif 000022