(57)【要約】    【課題】  各ノードの主記憶装置上にあるデータを通信回線経由で共有するクラスタシステムで発生するクラスタリング・オーバーヘッドを予測することのできるクラスタシステム性能予測装置を提供する。    【解決手段】  通信回線を介して接続される複数のノードの主記憶装置上のデータをノード間で互いに共有するクラスタシステムの性能予測装置であって、主記憶装置内のメモリーブロックを単位としてノード間でなされる単位時間当たりのブロックコピーの回数を算出し、ブロックコピー回数と、ブロックコピー当たりのＣＰＵ負荷の情報に基づき、クラスタシステムで発生するクラスタリング・オーバーヘッドを算出する。【選択図】      図１
2006331135.tif 000002
【特許請求の範囲】
【請求項１】
通信回線を介して接続される複数のノードの主記憶装置上のデータを前記ノード間で互いに共有するクラスタシステムの性能予測装置であって、
前記主記憶装置内のメモリーブロックを単位として前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出し、
前記ブロックコピー回数と、前記ブロックコピー当たりのＣＰＵ負荷の情報に基づき、前記クラスタシステムで発生するクラスタリング・オーバーヘッドを算出することを特徴とするクラスタシステムの性能予測装置。
【請求項２】
算出した前記クラスタリング・オーバーヘッドと前記ノードの数に基づいて、前記クラスタシステムのスケーラビリティを算出することを特徴とする請求項１に記載のクラスタシステムの性能予測装置。
【請求項３】
特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの回数であるウィンドウサイズ毎にブロックコピー回数を算出し、前記ウィンドウサイズ毎の前記ブロックコピー回数である部分ブロックコピー回数に基づき、前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出することを特徴とする請求項１又は請求項２に記載のクラスタシステムの性能予測装置。
【請求項４】
前記特定の種類のアクセスが書込みのアクセスであり、前記特定の種類のアクセスを除くアクセスが読出しのアクセスであることを特徴とする請求項３に記載のクラスタシステムの性能予測装置。
【請求項５】
前記ウィンドウサイズの回数のアクセスが到着するノードの数の期待値である到着ノード数から、前記部分ブロックコピー回数を算出することを特徴とする請求項３又は請求項４に記載のクラスタシステムの性能予測装置。
【請求項６】
前記複数のノードへのアクセスが、前記アクセス回数の全てのノードでの合計が前記ウィンドウサイズに等しい条件下で、それぞれ自然数回なされる事象の出現する確率を算出し、算出した前記事象の出現する確率に基づき、前記到着ノード数を算出することを特徴とする請求項５に記載のクラスタシステムの性能予測装置。
【請求項７】
前記事象の出現する確率を、多項分布又は多次元正規分布を用いて算出することを特徴とする請求項６に記載のクラスタシステムの性能予測装置。
【請求項８】
前記ウィンドウサイズの増加に伴い前記到着ノード数が広義に単調増加する多項式又は指数関数式又は級数式を用いて、前記到着ノード数を算出することを特徴とする請求項５に記載のクラスタシステムの性能予測装置。
【請求項９】
前記ウィンドウサイズの回数のアクセスにより実現される前記ノードへのアクセスシーケンスの出現する確率と、前記アクセスシーケンスによりアクセスを受けるノードの数とに基づき、前記到着ノード数を算出することを特徴とする請求項５に記載のクラスタシステムの性能予測装置。
【請求項１０】
前回から自然数回前迄のノードへのアクセスシーケンスの出現する確率を、前回から前記自然数回に１を加えた回数以上前迄のアクセスシーケンスの出現確率から算出し、前記算出した結果に基づき、前記ウィンドウサイズの回数のアクセスにより実現される前記ノードへのアクセスシーケンスの出現する確率を算出することを特徴とする請求項９に記載のクラスタシステムの性能予測装置。
【請求項１１】
特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの回数であるウィンドウサイズを、前記アクセスに含まれる読出しのアクセスの数と書込みのアクセスの数との和を前記書込みのアクセスの数で除算して算出することを特徴とする請求項１又は請求項２に記載のクラスタシステムの性能予測装置。
【請求項１２】
ウィンドウサイズが前記ウィンドウサイズ以上の整数である場合及びウィンドウサイズが前記ウィンドウサイズ以下の整数である場合について、前記複数のノードへのアクセスが、前記アクセスの回数の合計がウィンドウサイズに等しい条件下で、それぞれ任意回数なされる事象の出現する確率を算出し、前記算出した結果に基づき、前記ウィンドウサイズの回数のアクセスが到着するノードの数の期待値である到着ノード数を算出することを特徴とする請求項１１に記載のクラスタシステムの性能予測装置。
【請求項１３】
前記特定の種類のアクセスが書込みのアクセスであり、前記特定の種類のアクセスを除くアクセスが読出しのアクセス及び取得のアクセスであり、前記取得のアクセスは、過去に前記取得のアクセスのみによるアクセスのなされたノードではブロックの読出しを行い、かつ又過去に前記書込みのアクセス又は前記読出しのアクセスがなされたノードではブロックの読出しを行わないことを特徴とする請求項３に記載のクラスタシステムの性能予測装置。
【請求項１４】
前記ブロックコピーが、前記読出しのアクセスによるブロックコピーと前記取得のアクセスによるブロックコピーであり、前記ＣＰＵ負荷が前記読出しのアクセスのブロックコピーによるＣＰＵ負荷と前記取得のアクセスのブロックコピーによるＣＰＵ負荷であることを特徴とする請求項１３に記載のクラスタシステムの性能予測装置。
【請求項１５】
通信回線を介して接続される複数のノードの主記憶装置上のデータを前記ノード間で互いに共有するクラスタシステムの性能予測方法であって、
前記主記憶装置内のメモリーブロックを単位として前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出し、
前記ブロックコピー回数と、前記ブロックコピー当たりのＣＰＵ負荷の情報に基づき、前記クラスタシステムで発生するクラスタリング・オーバーヘッドを算出すると共に、
算出した前記クラスタリング・オーバーヘッドと前記ノードの数に基づいて、前記クラスタシステムのスケーラビリティを算出することを特徴とする性能予測方法。
【請求項１６】
特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの回数であるウィンドウサイズ毎にブロックコピー回数を算出し、前記ウィンドウサイズ毎の前記ブロックコピー回数である部分ブロックコピー回数に基づき、前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出することを特徴とする請求項１５に記載の性能予測方法。
【請求項１７】
前記特定の種類のアクセスが書込みのアクセスであり、前記特定の種類のアクセスを除くアクセスが読出しのアクセスであることを特徴とする請求項１６に記載の性能予測方法。
【請求項１８】
前記ウィンドウサイズの回数のアクセスが到着するノードの数の期待値である到着ノード数から、前記部分ブロックコピー回数を算出することを特徴とする請求項１６又は請求項１７に記載の性能予測方法。
【請求項１９】
前記複数のノードへのアクセスが、前記アクセス回数の全てのノードでの合計がウィンドウサイズに等しい条件下で、それぞれ自然数回なされる事象の出現する確率を算出し、算出した前記事象の出現する確率に基づき、前記到着ノード数を算出することを特徴とする請求項１８に記載の性能予測方法。
【請求項２０】
コンピュータ処理装置上で実行され、通信回線を介して接続される複数のノードの主記憶装置上のデータを前記ノード間で互いに共有するクラスタシステムの性能を予測するための性能予測プログラムであって、
前記主記憶装置内のメモリーブロックを単位として前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出し、
前記ブロックコピー回数と、前記ブロックコピー当たりのＣＰＵ負荷の情報に基づき、前記クラスタシステムで発生するクラスタリング・オーバーヘッドを算出すると共に、
算出した前記クラスタリング・オーバーヘッドと前記ノードの数に基づいて、前記クラスタシステムのスケーラビリティを算出する機能を持たせることを特徴とする性能予測プログラム。
【請求項２１】
特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの回数であるウィンドウサイズ毎にブロックコピー回数を算出し、前記ウィンドウサイズ毎の前記ブロックコピー回数である部分ブロックコピー回数に基づき、前記ノード間でなされる単位時間当たりのブロックコピーの回数を算出する機能を有することを特徴とする請求項２０に記載の性能予測プログラム。
【請求項２２】
前記特定の種類のアクセスが書込みのアクセスであり、前記特定の種類のアクセスを除くアクセスが読出しのアクセスである機能を有することを特徴とする請求項２１に記載の性能予測プログラム。
【請求項２３】
前記ウィンドウサイズの回数のアクセスが到着するノードの数の期待値である到着ノード数から、前記部分ブロックコピー回数を算出する機能を有することを特徴とする請求項２１又は請求項２２に記載の性能予測プログラム。
【請求項２４】
前記複数のノードへのアクセスが、前記アクセス回数の全てのノードでの合計がウィンドウサイズに等しい条件下で、それぞれ自然数回なされる事象の出現する確率を算出し、算出した前記事象の出現する確率に基づき、前記到着ノード数を算出する機能を有することを特徴とする請求項２３に記載の性能予測プログラム。
【請求項２５】
前記事象の出現する確率を、多項分布又は多次元正規分布を用いて算出する機能を有することを特徴とする請求項２４に記載の性能予測プログラム。
【請求項２６】
前記ウィンドウサイズの回数のアクセスにより実現される前記ノードへのアクセスシーケンスの出現する確率と、前記アクセスシーケンスによりアクセスを受けるノードの数とに基づき、前記到着ノード数を算出する機能を有することを特徴とする請求項２３に記載の性能予測プログラム。
【請求項２７】
特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの回数であるウィンドウサイズを、前記アクセスに含まれる読出しのアクセスの数と書込みのアクセスの数との和を前記書込みのアクセスの数で除算して算出する機能を有することを特徴とする請求項２０に記載の性能予測プログラム。
【請求項２８】
前記特定の種類のアクセスが書込みのアクセスであり、前記特定の種類のアクセスを除くアクセスが読出しのアクセス及び取得のアクセスであり、前記取得のアクセスは、過去に前記取得のアクセスのみによるアクセスのなされたノードではブロックの読出しを行い、かつ又過去に前記書込みのアクセス又は前記読出しのアクセスがなされたノードではブロックの読出しを行わない機能を有することを特徴とする請求項２１に記載の性能予測プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラスタシステムの性能予測装置に関し、特に、各ノードの主記憶装置上にあるデータをネットワーク経由で共有するクラスタシステムで発生するクラスタリング・オーバーヘッドを予測することのできるクラスタシステムの性能予測装置、性能予測方法及び性能予測プログラムに関する。
【背景技術】
【０００２】
近年、Webシステムの普及に伴い、サーバ用途で用いられる計算機システムが増加している。このような計算機システムでは、Webシステムの処理能力を向上させることを目的として、複数の計算機を使用したクラスタシステムが使用される。このため、クラスタシステムの性能設計の重要性が増している。
【０００３】
クラスタシステムは単純に考えると計算機の数に見合った性能向上が実現されるように思われるが、実際には単一ノードのシステムでは発生しないクラスタリング・オーバーヘッドが生じるため、クラスタシステムの性能はクラスタサイズに比例して向上するものではない。ここで、クラスタリング・オーバーヘッドは、ノードを複数にしたことが原因となって発生するオーバーヘッドを表す。以下、スケーラビリティの用語によりクラスタサイズに対する性能増加率を表すこととする。クラスタサイズは、クラスタシステムを構成するノードの数を表す。
【０００４】
クラスタシステムのスケーラビリティが低い場合には、その原因がクラスタリング・オーバーヘッドによるのか又は他の要因によるのかを判定したい、という要求が生じる。なぜなら、クラスタリング・オーバーヘッドが主原因であれば、スケールアウトによる性能向上を狙うよりも、ＣＰＵの高速化等ハードウェア単体の性能強化によるスケールアップを狙うべきであると判断できるからである。このように、クラスタリング・オーバーヘッドの予測は、クラスタシステムの性能設計を行う上で重要となる。
【０００５】
ノードの主記憶上にあるデータをネットワーク経由で共有するクラスタシステムにおいては、データ共有のためのブロックコピーがクラスタリング・オーバーヘッドの主要な原因となっていることがわかっている。
【０００６】
従来の計算機システムでの性能予測の方法として、次のような方法が提案されている。
【０００７】
特許文献１に開示される方法は、計算機システムの性能予測プログラムに関するものである。この性能予測プログラムでは、部品プログラムの性能とこれらの結合情報を入力パラメータとして、部品プログラムの実行時間を追跡するシミュレーションを行うことで計算機システムの性能を予測する。性能予測プログラムは、単一ノードからなるシステム上で、特定のアプリケーションとワークロードを対象とした性能予測を行うものである。
【０００８】
特許文献２の方法は、Webシステムの性能予測方法に関するものである。この性能予測方法では、Webシステムの構成に関する情報であるモデルパターン情報、Webシステムの特性に関する情報、及びWebシステムが提供する機能に関する情報を予め登録した上で、Webシステムが提供する機能名（例えば文書管理）、優先項目（価格、性能）、利用者数に関する情報を入力すると、構成、機能、サーバ機種、価格、性能、サーバ負荷を、性能の異なるサーバ機種毎に出力する。なお、性能予測は、過去の性能情報に基づき行われる。したがって、この方法は過去の性能情報が入手可能なクラスタシステムの性能予測に適用することができる。
【０００９】
特許文献３の方法は、システム・コンポーネント接続モデルとデータの経路を示すワークフローを分割することにより、１つのシステム・コンポーネント接続モデルで多様なワークフローを実現する方法に関するものである。特許文献３の方法では、最初に対象とするシステムのシステム・コンポーネント、ワークロード及びワークフローを入力する。システム・コンポーネントは、マスタ・コンポーネントとスレーブ・コンポーネントにより構成され、マスタ・コンポーネントから発生するデータ量がワークロードとして入力される。
【００１０】
特許文献４の方法は、並列化のための負荷分散量を数値で確認できると共に、並列実行プログラムの並列化チューニングの支援を行うことのできる並列実行プログラムの実行回数解析方法に関するものである。この実行回数解析方法では、解析対象プログラムへプログラムの実行回数を計数するカウント命令を挿入する。カウント命令により測定されるプログラムの実行文の総実行回数を計算し、並列度数を変化させた場合の性能向上率を計算する。次に、これらの結果を用いて、並列度数の変化に対する特定ループの実行文実行回数、ループの平均回転数及び性能向上率の見積り値を表示する。
【００１１】
非特許文献１には、従来のクラスタシステムの性能モデルの一例、LogPモデルが記載されている。LogPモデルは、クラスタシステムのボトルネックの発見や並列アルゴリズムの解析に用いられ、通信遅延の上限(Latency)、１つのメッセージの送信または受信によって消費されるプロセッサ時間(overhead)、メッセージの最小送信（受信）間隔(gap)、プロセッサ数(Processors)の４つを入力パラメータとして性能を予測する。LogPモデルは、例えば高速フーリエ変換アルゴリズムを実行したときのボトルネックの発見や、より効率的な高速フーリエ変換アルゴリズムの設計に用いられる。
【００１２】
非特許文献２には、非特許文献１を拡張したモデルの一例、LogGPSモデルが記載されている。LogGPSモデルは、LogPモデルで考慮している入力パラメータに加え、長いメッセージの送信とその送信中に発生する同期に関する入力パラメータを含む。このように、入力パラメータを追加することにより、非特許文献１よりも高い精度で性能を予測できる。
【００１３】
非特許文献１と非特許文献２に記載の技術は、アルゴリズムから計算量と通信量が算出できるアプリケーションが動作するクラスタシステムに対して適用できる。
【特許文献１】特開２００４−２７２５８２号公報
【特許文献２】特開２００４−４６７３４号公報
【特許文献３】特開２００４−１４９３７号公報
【特許文献４】特開２００４−１０２５９４号公報
【非特許文献１】David Culler, Richard Karp, David Patterson, Abhijit Sahay, Klaus Erik Schauser, Eunice Santos, Ramesh Subramonian, and Thorsten von Eicken. LogP: Towards a Realistic Model of Parallel Computation. In Proceedings of the Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 1--12, May, 1993.
【非特許文献２】伊野文彦、藤本典幸、萩原兼一。LogGPS：メッセージ通信プロトコルの切替えを考慮した高水準通信ライブラリ向けの並列計算モデル。情報処理学会論文誌：ハイパフォーマンスコンピューティングシステム、Vol.42, No.SIG09。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
上述した従来の技術は、いずれも以下に述べるような問題点があった。
【００１５】
特許文献１の方法における性能予測プログラムは、単一ノードからなるシステムに関するものであり、ここで対象とする複数ノードからなるクラスタシステムへ適用できるものではない。
【００１６】
特許文献２の方法は、過去の性能情報が入手可能なクラスタシステムの性能予測に適用できる。しかしながら、本発明の対象とするクラスタリング・オーバーヘッドの予測はできない。
【００１７】
特許文献３の方法は、１つのシステム・コンポーネント接続モデルで多様なワークフローを実現する方法であって、本発明の対象とするクラスタリング・オーバーヘッドを予測する方法ではない。
【００１８】
特許文献４の方法は、並列化のための負荷分散量を数値で確認する方法であるが、本発明の対象とするクラスタリング・オーバーヘッドを予測する方法ではない。
【００１９】
非特許文献１と非特許文献２に記載の技術は、アルゴリズムから計算量と通信量を算出できるアプリケーションが動作するクラスタシステムの性能を予測できる。しかしながら、アルゴリズムから計算量と通信量を算出することのできない、ビジネス向けアプリケーションが動作するクラスタシステムの場合にはクラスタリング・オーバーヘッドを予測することはできない。
【００２０】
本発明の目的は、上記従来技術の欠点を解決し、各ノードの主記憶上にあるデータを通信回線経由で共有するクラスタシステムで発生するクラスタリング・オーバーヘッドを予測することのできるクラスタシステムの性能予測装置、性能予測方法及び性能予測プログラムを提供することにある。
【課題を解決するための手段】
【００２１】
上記目的を達成するための本発明は、通信回線を介して接続される複数のノードの主記憶装置上のデータを前記ノード間で互いに共有するクラスタシステムの性能予測装置であって、前記主記憶装置内のメモリーブロックを単位として前記ノード間でなされるブロックコピーの回数を算出し、単位時間当たりの前記ブロックコピー回数と、前記ブロックコピー当たりのＣＰＵ負荷の情報に基づき、前記ブロックコピーが原因で生じる、前記クラスタシステムのクラスタリング・オーバーヘッドを予測することを特徴とする。
【００２２】
本発明では、主記憶上のデータをノード間で互いに共有するクラスタシステムにおいては、データ共有のためのブロックコピーがクラスタリング・オーバーヘッドの主要な原因となっている点に着目した。
【００２３】
本発明では、最初に、コピーコスト情報、ワークロード特性情報及び負荷分散特性情報をクラスタシステム性能予測装置に対して入力する。
【００２４】
クラスタシステム性能予測装置では、これらの情報からコピーコスト、ワークロード特性テーブル、負荷分散特性テーブルを生成する。
【００２５】
コピーコスト情報は前記ブロックコピーが１回なされる際のＣＰＵ負荷の情報である。
【００２６】
ワークロード特性テーブルは各メモリーブロック集合における各ウィンドウサイズの出現回数の情報を含むテーブルである。ここで、ウィンドウサイズは、特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄の一連のアクセスの集合であるウィンドウにおける、一連のアクセスの出現回数である。
【００２７】
また、負荷分散特性テーブルは、各ノードの部分ブロック集合へのアクセスの到着確率の情報を含むテーブルである。
【００２８】
次に、クラスタシステム性能予測装置は、クラスタシステムのノード数情報とウィンドウサイズ情報と負荷分散特性テーブル情報に基づき、ウィンドウサイズを与えた場合に、１つのウィンドウ中にアクセスが到着するノードの数の期待値である到着ノード数を算出する。
【００２９】
次に、ウィンドウ内のアクセスが書込みのアクセスの後、読出しのアクセスが複数回続くことを想定し、到着ノード数からウィンドウサイズを与えた場合のブロックコピー回数を算出する。
【００３０】
次に、ワークロード特性テーブルとウィンドウサイズを与えた場合のブロックコピー回数から、クラスタシステム全体のブロックコピー回数を算出する。
【００３１】
最後に、クラスタシステム全体のブロックコピー回数とコピーコストから、クラスタリング・オーバーヘッドを算出する。
【発明の効果】
【００３２】
本発明によれば、クラスタシステムで発生するクラスタリング・オーバーヘッドを予測することができる。
【００３３】
その理由は、クラスタシステムのワークロード特性、負荷分散特性及びコピーコストに基づき、クラスタリング・オーバーヘッドの主要因であるブロックコピーにより発生するオーバーヘッドを算出するためである。
【発明を実施するための最良の形態】
【００３４】
以下、本発明を実施するための最良の形態について説明する。
【００３５】
（第１の実施の形態）
以下、本発明の第１の実施の形態について図面を参照して説明する。
【００３６】
図１は、本実施の形態によるクラスタシステムの性能予測装置１０の構成を示すブロック図である。
【００３７】
図１を参照すると、本実施の形態によるクラスタシステムの性能予測装置１０は、入力手段１１０と、コピーコスト生成手段１２０と、ワークロード特性生成手段１３０と、負荷分散特性生成手段１４０と、到着ノード数算出手段１５０と、オーバーヘッド予測手段１６０と、出力手段１７０を備える。
【００３８】
クラスタシステムの性能予測装置１０の各手段を説明する前に、本実施の形態の対象とするクラスタシステム４０について説明する。
【００３９】
図２は、本実施の形態の対象とするクラスタシステム４０の一例を示す図である。
【００４０】
図２を参照すると、本実施の形態の対象とするクラスタシステム４０は、通信回線を介して接続された２つのノードにより構成される。各ノードは、それぞれＣＰＵ（Central Processing Unit）及び主記憶装置を備える。
【００４１】
クラスタシステム４０には、通信回線を介してクライアントが接続されている。クライアントは、クラスタシステム４０に対して情報を書き込むための「write」アクセス（書込みのアクセス）あるいは読み出すための「read」アクセス（読出しのアクセス）を行う。クラスタシステム４０は、空いているノードにクライアントを接続する。
【００４２】
クライアントから「read」アクセスがあり、クライアントの読み出す主記憶装置内の部分ブロック集合が最新でないことをアクセス先のノードで検知すると、別のノードから最新の部分ブロック集合のデータをコピーするブロックコピーが発生する。なお、アクセス先のノードでクライアントの読み出すブロックが最新であることを検知した場合にはブロックコピーは起こらない。部分ブロック集合はクライアントのアクセスするブロックであるが、詳細は後述する。
【００４３】
このように、ノード間では、主記憶装置間で部分ブロック集合単位のブロックコピーがなされることによりＣＰＵが消費され、クラスタリング・オーバーヘッドが発生する。クラスタリング・オーバーヘッドは複数の原因により発生するが、主要な原因はデータ共有のためのブロックコピーにより発生するＣＰＵの負荷であることがわかっている。なお、ノード数は３個以上であっても同様である。
【００４４】
次に、クラスタシステムの性能予測装置１０の各手段を説明する。
【００４５】
入力手段１１０は、性能予測の対象とするクラスタシステム４０の情報を入力する手段であって、クラスタシステムの性能予測装置１０にオーバーヘッド基礎情報２０を入力する機能を有する。オーバーヘッド基礎情報２０には、コピーコスト情報２１０、ワークロード特性情報２２０及び負荷分散特性情報２３０が含まれる。
【００４６】
コピーコスト生成手段１２０は、コピーコスト情報２１０をオーバーヘッド基礎情報２０から読出し、コピーコストテーブル３１を生成する機能を有する。
【００４７】
ここで、コピーコストはブロックコピーが１回発生したときの１つのＣＰＵ負荷である。ＣＰＵ負荷は、例えば単位時間あたりのＣＰＵ実行時間で表す。
【００４８】
ワークロード特性生成手段１３０は、オーバーヘッド基礎情報２０に含まれるワークロード特性情報２２０を読出し、ワークロード特性テーブル３２を生成する機能を有する。
【００４９】
負荷分散特性生成手段１４０は、オーバーヘッド基礎情報２０に含まれる負荷分散特性情報２３０を読出し、負荷分散特性テーブル３３を生成する機能を有する。
【００５０】
到着ノード数算出手段１５０は、負荷分散特性とワークロード特性から、部分ブロック集合へのアクセスが到着するノード数を算出する機能を有する。
【００５１】
ここで、部分ブロック集合とは、１つ以上のメモリーブロックを含むメモリーブロックの集合である。各ノードの主記憶装置には同じＩＤ（識別番号）を持つ部分ブロック集合が配置され、ノード間で共有される。
【００５２】
部分ブロック集合は各ノードの主記憶装置のキャッシュメモリーに設定され、ノード間で同じ情報を保つようにコントロールされる。但し、同じＩＤの部分ブロック集合であっても、クライアントからのアクセスがないなどの理由により、全てのノード間でデータが一致していない場合もある。
【００５３】
オーバーヘッド予測手段１６０は、クラスタシステム４０のクラスタリング・オーバーヘッドを計算する手段であり、到着ノード数からクラスタリング・オーバーヘッドとスケーラビリティを算出する機能を有する。
【００５４】
出力手段１７０は、結果を出力する手段であり、予測したクラスタリング・オーバーヘッドとスケーラビリティを出力する。
【００５５】
クラスタシステムの性能予測装置１０は、データ処理装置、コンピュータなどにより構成することができる。この場合、入力手段１１０としては、キーボード、マウス等を用いることができる。また、出力手段１７０としては、プリンタ、ディスプレイなどを用いることができる。
【００５６】
次に、本実施の形態によるクラスタシステムの性能予測装置１０の利用形態を説明する。
【００５７】
図２を参照すると、本実施の形態によるクラスタシステムの性能予測装置１０は、通信回線を介してクラスタシステム４０のノードに接続されている。クラスタシステムの性能予測装置１０は、ノードからオーバーヘッド基礎情報２０を取得して、クラスタシステム４０の性能予測を行う。
【００５８】
なお、クラスタシステムの性能予測装置１０は必ずしもクラスタシステム４０のノードに接続されている必要はない。クラスタシステムの性能予測装置１０がクラスタシステム４０と接続されていない場合、クラスタシステム４０のクラスタリング・オーバーヘッド基礎情報２０は人手、あるいは記憶媒体によりクラスタシステムの性能予測装置１０に入力する。
【００５９】
また、クラスタシステムの性能予測装置１０はノード内に実装されていてもよい。このような場合、オーバーヘッド基礎情報２０はノードからクラスタシステムの性能予測装置１０へ入力される。
【００６０】
本発明の特徴である、ワークロード特性情報２１０と負荷分散特性情報２２０とコピーコスト情報２３０に基づき、クラスタリング・オーバーヘッドを算出する機能については、コンピュータ装置の内部にそのような機能を実現するプログラムを組み込んだ回路部品を実装して実現することも可能である。しかしながら、本発明の特徴的な機能を実現するためのプログラム（アプリケーション）を記憶媒体に記憶させ、コンピュータ装置で当該プログラムを実行することで、クラスタシステムの性能予測装置１０として機能させることもできる。
【００６１】
図３は、本実施の形態による特性テーブル３０の内容の構成を示すブロック図である。
【００６２】
図３を参照すると、特性テーブル３０は、コピーコストテーブル３１と、ワークロード特性テーブル３２と、負荷分散特性テーブル３３による構成となっている。
【００６３】
コピーコストテーブル３１にはコピーコストが書き込まれる。コピーコストテーブル３１に記入される情報は、コピーコスト１つのみである。
【００６４】
ワークロード特性テーブル３２は、各部分ブロック集合におけるウィンドウの出現回数のテーブルであり、ウィンドウの出現回数はウィンドウサイズ毎に書き込まれる。ここで、ウィンドウとは、クライアントから特定の種類のアクセスがメモリーブロック集合に対してなされてから次に同種のアクセスがなされる迄のアクセスの集合（全てのアクセス）を指す。また、ウィンドウサイズとは、ウィンドウを構成するアクセスの数を表す。ウィンドウサイズの詳細については、図６で説明する。
【００６５】
負荷分散特性テーブル３３は、ノードの各部分ブロック集合へのアクセスの到着確率のテーブルである。
【００６６】
ワークロード特性テーブル３２、負荷分散特性テーブル３３については、図５、図６でそれぞれ詳細に説明する。
【００６７】
次に、本実施の形態の動作について詳細に説明する。
【００６８】
図４は、本実施の形態によるクラスタシステムの性能予測装置１０の動作を説明するためのフローチャートである。以下の説明では、必要に応じて図１の主要な部分を参照する。
【００６９】
図４を参照すると、最初に、入力手段１１０はオーバーヘッド基礎情報２０を入力する（ステップＡ１）。
【００７０】
オーバーヘッド基礎情報２０は、人手により入力する場合と、クラスタシステム４０のノードから通信回線経由でクラスタシステムの性能予測装置１０に入力する場合がある。
【００７１】
次に、コピーコスト生成手段１２０がオーバーヘッド基礎情報２０に含まれるコピーコスト情報２１０から、コピーコストテーブル３１を生成する（ステップＡ２）。
【００７２】
本実施の形態ではブロックコピー１回で、１つのＣＰＵの何パーセントを消費するかがコピーコスト情報２１０として与えられているとする。したがって、コピーコスト生成手段１２０はコピーコスト情報２１０をそのままコピーコストテーブル３１に書き込む。
【００７３】
ワークロード特性生成手段１３０は、オーバーヘッド基礎情報２０に含まれるワークロード特性情報２２０からワークロード特性テーブル３２を生成する（ステップＡ３）。
【００７４】
本実施の形態では、ワークロード特性情報２２０がワークロード特性テーブル３２として与えられているので、ワークロード特性生成手段１３０はワークロード特性情報２２をそのままワークロード特性テーブル３２に書き込む。
【００７５】
負荷分散特性取得手段１４０は、オーバーヘッド基礎情報２０に含まれる負荷分散特性情報２３０から負荷分散特性テーブル３３を生成する（ステップＡ４）。
【００７６】
本実施の形態では、負荷分散特性情報２３０が負荷分散特性テーブル３３として与えられているので、負荷分散特性取得手段１４０は負荷分散特性情報２３０をそのまま負荷分散特性テーブル３３に書き込む。
【００７７】
上述した、ステップＡ１からステップＡ４のステップの内、ステップＡ２、ステップＡ３、ステップＡ４の順序は入れ替えることができる。
【００７８】
図５は、本実施の形態によるワークロード特性テーブル例３２Ａを示す図である。
【００７９】
図５を参照すると、ワークロード特性テーブル例３２Ａでは、各部分ブロック集合でのウィンドウの出現回数をウィンドウサイズ毎に示している。なお、部分ブロック集合は全てのノードに配置されている。
【００８０】
各行に示したＡ、Ｂ、Ｃの文字は各部分ブロック集合のＩＤであり、各列に示した３、４、５、７の数字は各ウィンドウサイズを表す。
【００８１】
図５のワークロード特性テーブル例３２Ａから、例えば、部分ブロック集合Ｂに対するアクセスではサイズ５のウィンドウが８００回出現することがわかる。
【００８２】
図６は、本実施の形態による負荷分散特性テーブル例３３Ａを示す図である。
【００８３】
図６を参照すると、負荷分散特性テーブル例３３Ａでは、Ａ、Ｂ、Ｃのそれぞれの部分ブロック集合毎に、１、２、３、４の各ノードへアクセスが到着する確率が示されている。負荷分散特性テーブル例３３Ａからは、部分ブロック集合Ａへのアクセスは、ノード１に対しては０．１、ノード２に対しては０．３、ノード３に対しては０．２、ノード４に対しては０．４の確率で到着することがわかる。
【００８４】
本実施の形態では、クライアントからノードに対してブロックの内容を書き換える「write」アクセスと最新のブロックの内容を読み出す「read」アクセスの２種類のアクセスがなされることを前提とする。また、ワークロード特性テーブルは、「write」アクセスにより書き込まれたデータが「read」アクセスにより読み出されるシーケンス動作による負荷を表したものとなる。例えば、ウィンドウサイズ４であると、「write, read, read, read, (write) 」というアクセスシーケンスが出現することを意味する。ここで、アクセスシーケンスの末尾の(write)は「write」アクセスであるが、最後の「(write)」アクセスで内容が書き換えられるため、括弧内で示してある。ウィンドウサイズは、「write」アクセスから、次の「write」アクセスの直前の「read」アクセス迄のアクセス回数で表される。
【００８５】
到着ノード数算出手段１５０は、与えられた負荷分散特性テーブル３３に関して、到着ノード数がウィンドウサイズの増加に伴い広義の意味で単調増加するように到着ノード数を算出する（ステップＡ５）。
【００８６】
なお、到着ノード数は各部分ブロック集合毎に算出される。
【００８７】
ここで、広義の意味で単調増加するとは、ウィンドウサイズが増加した場合に、到着ノード数が増加すること又は不変であることを表す。また、到着ノード数は、１つのウィンドウ内でアクセスが到着するノードの数の期待値を表す。
【００８８】
到着ノード数を、ウィンドウサイズに対して広義の意味で単調増加するように算出するのは、ウィンドウサイズが増すとノードへのアクセス回数が増加するため、到着ノード数が増加すること又は不変であることはあっても、到着ノード数が減少することはないという理由によるものである。
【００８９】
例えば、ある負荷分散特性テーブル３３の下で、部分ブロック集合Ａへのアクセスがウィンドウサイズ５で発生したときを考える。到着ノード数算出手段１５０が、この５回のアクセスは３つのノードに到着する（すなわち到着ノード数は３）と算出したら、到着ノード数算出手段１５０はウィンドウサイズが６のときには到着ノード数は３以上と算出する。
【００９０】
クラスタサイズ n とウィンドウサイズ w が与えられたときの、到着ノード数の算出方法の例を説明する。各ノードＩＤ（ノードの識別番号）を、１から n の数で表す。上述したように、到着ノード数は部分ブロック集合毎に算出される。
【００９１】
ノード i へのアクセスが到着する確率を pi （Σ pi ＝１）とする。pi は負荷分散特性テーブル３３から取得できる。
【００９２】
また、ある１つのウィンドウ内でノード i へ到着したアクセスの数を diとする。ここで
ｄ＝（ｄ１，ｄ２，... ，ｄｎ）  ・・・  （式１）
ｐ＝（ｐ１，ｐ２，... ，ｐｎ）  ・・・  （式２）
と書く。
【００９３】
ノードＩＤが１, ２, … n であるそれぞれのノードへアクセスが到着する n 個の事象が出現する確率は、上述のようにそれぞれp1, p2,… pn で与えられる。ウィンドウサイズ w 回のアクセスがなされた際、当該 n 個の事象がそれぞれd1, d2,… dn 回起こる事象の出現確率 m(w, d, p) は、多項分布を用いることにより
【数１】
2006331135.tif 000003
で与えられる。式３でΠは、積を計算する記号である。また、d1, d2,… dnは
ｄ１＋ｄ２＋・・・ｄｎ＝ｗ  ・・・  （式４）
を満たす自然数である。ここで、自然数は０を含む。
【００９４】
次に、到着ノード数の算出を説明する。ここで、到着ノード数は、到着ノード数の期待値を表す。
【００９５】
まずアクセスが到着するノード数（以下ではアクセスが到着するノード数をアクセス到着ノード数と略す）を固定して、到着ノード数の期待値を求め、次に全てのアクセス到着ノード数について到着ノード数の期待値を合計する。以下、アクセス到着ノード数を固定した場合の到着ノード数の期待値を、到着ノード数の部分期待値と記述する。
【００９６】
式４を満たす di のうち、k 個が１以上の自然数である d の集合を D(n, w, k) と記述する。ここで、k はアクセス到着ノード数を表す。
【００９７】
一例であるが、クラスタサイズ n が５の場合、ノード数は５であるが、k が３であると、５個のノードの内、３個のノードにはアクセスが到着するが、２個のノードにはアクセスは到着しない。
【００９８】
まず、到着ノード数の部分期待値を求めるが、この部分期待値は、式３の確率にk を乗算した値を D(n, w, k) の集合について合計することにより算出することができる。
【００９９】
次に全ての k について、到着ノード数の部分期待値を加えるが、その前に k の最大値を決定する。
【０１００】
まず、ウィンドウサイズ w がクラスタサイズ n よりも大きい場合、アクセス到着ノード数 k はクラスタサイズ n （＝ノード数）を越えることはない。また、ウィンドウサイズ w がクラスタサイズ n よりも小さい場合、アクセス到着ノード数 k は、ウィンドウサイズ w （＝アクセス数）を越えることはできない。ウィンドウサイズ w とクラスタサイズ n が等しい場合も同様である。したがって、k の最大値は、min(n, w)であることがわかる。
【０１０１】
以上より、次の式で到着ノード数を算出する。
【数２】
2006331135.tif 000004
a(n, w)は、１ウィンドウ中にアクセスが到着するノードの数の期待値になっている。なお、a(n, w) の値や m(w, d, p) の値は、予め計算して表として持っていてもよい。
【０１０２】
式５以外の到着ノード数 a(n, w)の算出方法の例としては、
ａ(ｎ,ｗ)＝αｎθ＋βｗφ＋γ  ・・・  （式６）
ａ(ｎ,ｗ)＝αlogｎ＋βlogｗ＋γ  ・・・  （式７）
などがある。ここで、α、β、γ、θ、φは実数である。なお、これらの式においても到着ノード数は、ウィンドウサイズの増加に伴い広義の意味で単調増加するように算出される。
【０１０３】
また、a(n, w) を多項分布から算出する代わりに、多次元正規分布を用いる方法がある。
【０１０４】
上述のようにして、クラスタサイズ n とウィンドウサイズ w が与えられたときの、到着ノード数が算出される。
【０１０５】
オーバーヘッド予測手段１６０は、到着ノード数からブロックコピー回数を算出する（ステップＡ６）。
【０１０６】
なお、ブロックコピー回数は単位時間当たりのブロックコピー回数である。また、ステップＡ６で算出されるブロックコピー回数はウィンドウサイズ w を固定した場合のブロックコピー回数である。以下、ウィンドウサイズ w を固定した場合のブロックコピー回数を部分ブロックコピー回数と記述する。
【０１０７】
負荷分散特性テーブル３３とクラスタサイズとウィンドウサイズを指定した場合の部分ブロックコピー回数 b(n, w) の算出方法の例としては、
ｂ(ｎ,ｗ)＝ａ(ｎ,ｗ)−１  ・・・  （式８）
がある。b(n, w) は、「read」アクセスだけが到着したノード数に等しい。式８は、部分ブロック集合が「write」アクセスにより更新された後に、「write」アクセスが到着しなかったノードに初めて「read」アクセスが到着したときにブロックコピーが起こることを想定した算出方法である。
【０１０８】
本実施の形態の最初に述べたように、「write」アクセスではクライアントによる書込みがなされるため、書込みのなされた部分ブロック集合の内容は最新のものではなくなる。そのため、初めて「read」アクセスが到着したときには、ノードでクライアントの読みだす主記憶装置内の部分ブロック集合が最新でないことが検知され、別のノードから最新の部分ブロック集合のデータをコピーするブロックコピーが発生する。
【０１０９】
式８は、例えば、ノード数が５個あり、ウィンドウサイズが３個であった場合、ウィンドウを構成するアクセスは、「write、read、read」となるが、最初の「write」アクセスが到着しなかった４個のノードの内、１つのノードに「read」アクセスが到着し、別のノードに「read」アクセスが到着した場合、a(n, w)は３であるが、b(n, w)は２となることを表している。
【０１１０】
また、この例で、２個の「read」アクセスが到着するノードが同じノードの場合、最初の「read」アクセスでは部分ブロック集合を最新のものとするためのブロックコピーが起こるが、２個めの「read」アクセスではブロックコピーは発生しない。この場合、a(n, w)は２となり、b(n, w)は１となる。
【０１１１】
次に、全てのウィンドウサイズの場合について部分ブロックコピー回数を合計することにより、部分ブロック集合に対して発生するブロックコピー回数を算出する。
【０１１２】
W を出現回数が０でないウィンドウサイズの集合、f (w) をウィンドウサイズ w の出現回数として、
【数３】
2006331135.tif 000005
とする。b(n, W) は、部分ブロック集合に対して発生するブロックコピー回数を表している。
【０１１３】
次に、各部分ブロック集合に対するブロックコピー回数を合計して、全体のブロックコピー回数を算出する。
【０１１４】
特性テーブル３０に出現する各部分ブロック集合をSiとして
ｂ(Ｓｉ)＝ｂ(ｎ,Ｗ)  ・・・  （式１０）
とする。また 、Si∈Sとする。ここで、S は各部分ブロック集合Siの集合である。ここで、ワークロード特性テーブル３２の全てのデータを取得するために、ウィンドウ情報を測定した期間をperiodと記述する。そして、ブロックコピー回数 B(S) を、
【数４】
2006331135.tif 000006
と算出する。ここで、ブロックコピー回数は単位時間当たりのブロックコピー回数である。
【０１１５】
オーバーヘッド予測手段１６０は、コピーコストをcopy 、クラスタリング・オーバーヘッドをoverhead 、スケーラビリティをscalability と記述すると、
【数５】
2006331135.tif 000007
により、ブロックコピー回数からクラスタリング・オーバーヘッドとスケーラビリティを算出する（ステップＡ７）。
【０１１６】
最後に、出力手段１７０はクラスタリング・オーバーヘッドとスケーラビリティを出力する（ステップＡ８）。
【０１１７】
次に、クラスタシステムの性能予測装置１０のハードウェア構成を説明する。
【０１１８】
図７は、本実施の形態によるクラスタシステムの性能予測装置１０のハードウェア構成を示すブロック図である。
【０１１９】
図７を参照すると、クラスタシステム性能予測装置１０は、ＣＰＵ１０１、ＲＡＭ及びＲＯＭで構成される主記憶部１０２、通信回線を介してデータ通信を行う通信部１０３、プリンタ、ディスプレイ等の出力部１０４、キーボード、マウス等の入力部１０５及びハードディスク装置等の補助記憶部１０６を備えている。
【０１２０】
以上述べたように、本実施例によるクラスタシステムの性能予測装置１０は、
通信回線を介して接続される複数のノードの主記憶装置上のデータをノード間で互いに共有するクラスタシステム４０の性能を予測する装置であって、主記憶装置内のメモリーブロックを単位としてノード間でなされる単位時間当たりのブロックコピーの回数を算出し、ブロックコピー回数の情報と、ブロックコピーが１回なされる際のＣＰＵ負荷の情報に基づき、クラスタシステムで発生するクラスタリング・オーバーヘッドを算出するものである。
【０１２１】
（第１の実施の形態の効果）
以上説明した実施の形態例によれば、通信回線経由でデータを共有するクラスタシステム４０で発生するクラスタリング・オーバーヘッドを予測することができる。
【０１２２】
その理由は、クラスタシステム４０のワークロード特性と負荷分散特性とコピーコストから、クラスタリング・オーバーヘッドの主要因であるブロックコピーにより発生するオーバーヘッドを算出するためである。
【０１２３】
また、上述したクラスタシステム４０で発生するスケーラビリティを予測することができる。
【０１２４】
その理由は、クラスタシステムのスケーラビリティの決定要因がクラスタリング・オーバーヘッドであることを仮定して、クラスタリング・オーバーヘッドからスケーラビリティを算出するためである。
【０１２５】
（第２の実施の形態）
以下、本発明の第２の実施の形態について図面を参照して説明する。
【０１２６】
図８は、本実施の形態によるクラスタシステムの性能予測装置１１の構成を示すブロック図である。
【０１２７】
図８を参照すると、本実施の形態によるクラスタシステムの性能予測装置１１の構成は、図１に示した第１の実施の形態によるクラスタシステムの性能予測装置１０の構成と同様である。しかしながら、負荷分散特性生成手段１４１の機能、到着ノード数算出手段１５１の機能は、第１の実施の形態による負荷分散特性生成手段１４０の機能、到着ノード数算出手段１５０の機能とそれぞれ異なるものとなっている。また、オーバーヘッド基礎情報２１に含まれる負荷分散特性情報２３１も、第１の実施の形態によるオーバーヘッド基礎情報２０に含まれる負荷分散特性情報２３０と異なる。
【０１２８】
負荷分散特性生成手段１４１の機能及び到着ノード数算出手段１５１の機能及び負荷分散特性情報２３１については、図１１で説明する。
【０１２９】
図９は、本実施の形態による遷移特性テーブル集合３６の一例を示す図である。本実施の形態では、第１の実施の形態で説明した、図３の負荷分散特性テーブル３３の代わりに、遷移特性テーブル集合３６を使用する。
【０１３０】
遷移特性テーブル集合３６は、遷移特性テーブル３６Ａ、３６Ｂ、…、からなり、部分ブロック集合Ａ、Ｂ、…に関するアクセスの情報は、それぞれ遷移特性テーブル３６Ａ、３６Ｂ、…に書き込まれている。
【０１３１】
図９を参照すると、遷移特性テーブルは便宜上２次元のテーブルで表されている。しかし、一般には遷移特性テーブル（図示しない）は k 次元のノードＩＤ（識別番号）の表である。第１の実施の形態では、k はアクセス到着ノード数を表したが、本実施の形態では、k はノードＩＤの表の次元を表す自然数である。
【０１３２】
最初に、ノードへのアクセスシーケンスが出現する確率を算出する式を説明する。
【０１３３】
アクセスシーケンス(v1, v2, … , vk)の出現確率を q(v1, v2, … vk)で表す。ここで、アクセスシーケンス(v1, v2, … , vk)は、前回アクセスしたノードＩＤがv1であり、前々回アクセスしたノードＩＤがv2であり、k 回前にアクセスしたノードＩＤがvkであるアクセスシーケンスを表す。
【０１３４】
また、viをｉ回前にアクセスしたノードＩＤとし、i はk −１以下の自然数であるとする。
【０１３５】
アクセスシーケンス(v1, v2, … , vi)の出現確率は
【数６】
2006331135.tif 000008
により算出できる。
【０１３６】
式１４は、前回からｉ回前迄のノードへのアクセスシーケンスの出現確率を、前回からｉ＋１回以上前迄のノードへのアクセスシーケンスの出現確率から算出する式である。ｉが k −１の場合、式１４は、前回からk 回前迄のノードへのアクセスシーケンスの出現確率から、前回からk −１回前迄のアクセスシーケンスの出現確率を算出する。
【０１３７】
図１０は、本実施の形態によるクラスタシステムの性能予測装置１１における２次元の遷移特性テーブル例３７を示す図である。
【０１３８】
遷移特性テーブル例３７では、クラスタシステム４０は、４ノードからなることを想定している。各行の左端の１から４のノードＩＤは前回アクセスの発生したノードのＩＤ、また各列の上端の１から４のノードＩＤは今回アクセスの発生するノードのＩＤを表す。
【０１３９】
以下では、アクセスシーケンス(n)で、今回のノードＩＤが n であるアクセスシーケンスの確率を表すことにする。また、アクセスシーケンス(m、n)で、今回のノードＩＤが m で前回のノードＩＤが n であるアクセスシーケンスの出現確率を表すことにする。
【０１４０】
図１０を参照すると、アクセスシーケンス（１）が確率０．２５で、アクセスシーケンス（２）が確率０．１で発生することがわかる。例えば、アクセスシーケンス（１）は、前回のノードＩＤが１である確率であるため、遷移特性テーブル例３７で行の左端が１である行の数値を横に加えることにより算出する。
【０１４１】
また、２つのアクセスからなるシーケンス（４、３）は確率０．１で発生することがわかる。
【０１４２】
２次元の遷移特性テーブルでは、例えば、前回アクセスが到着したノードから今回アクセスが到着するノードがどのノードになるかの確率を求めることのできる負荷分散方法や、ラウンドロビンのような静的な負荷分散方法を記述できる。
【０１４３】
また、k 次元の遷移特性テーブルでは、 ( k −1 ) 回前までのアクセスが到着したノードから今回アクセスが到着するノードがどのノードになるかの確率を求めることのできる負荷分散方法や、ウェイテッドラウンドロビンのような、前回のアクセス到着ノードだけでなく、それ以前のアクセス到着にも依存して静的に次回アクセス到着ノードを決定するような静的な負荷分散方法も記述できる。
【０１４４】
本発明の特徴である、ブロックコピーの発生するノードへのアクセスシーケンスを指定した遷移特性テーブル３６で負荷分散特性を記述してブロックコピー回数を求める機能については、コンピュータ装置の内部にそのような機能を実現するプログラムを組み込んだ回路部品を実装して実現することも可能である。しかしながら、本発明の特徴的な機能を実現するためのプログラム（アプリケーション）を記憶媒体に記憶させ、コンピュータ装置で当該プログラムを実行することで、クラスタシステムの性能予測装置１１として機能させることもできる。
【０１４５】
次に、本実施の形態の動作を説明する。
【０１４６】
図１１は、本実施の形態によるクラスタシステムの性能予測装置１１の動作を説明するためのフローチャートである。
【０１４７】
本実施の形態の動作は、Ｂ１からＢ３のステップ及びＢ６からＢ８のステップは、図４で説明した第１の実施の形態のＡ１からＡ３のステップ及びＡ６からＡ８のステップと同じである。しかし、Ｂ４及びＢ５のステップは、Ａ４及びＡ５のステップと異なる。以下、Ｂ４及びＢ５のステップについて説明する。
【０１４８】
負荷分散特性作成手段１４１は、遷移特性テーブル集合３６を生成する（ステップＢ４）。
【０１４９】
ただし、本実施の形態では、負荷分散特性情報２３１として遷移特性テーブル集合３６が与えられているので、負荷分散特性作成手段１４１は負荷分散特性情報２３１をそのまま遷移特性テーブル集合３６に書き込む。
【０１５０】
到着ノード数算出手段１５１はアクセスシーケンスの発生確率から到着ノード数を算出する（ステップＢ５）。
【０１５１】
ノードＩＤの w 次元空間をDwとすると、w 個のアクセスシーケンスはベクトル v ∈ Dw で表すことができる。ここでベクトル v は w 次元のベクトルであり、アクセスシーケンスを表す。v の i 番目の成分を vi とし、viをｉ回前にアクセスが発生したノードＩＤであるとする。また、
ｑ(ｖ)＝ｑ(ｖ１，ｖ２, ... ，ｖｗ)  ・・・  （式１５）
とする。
【０１５２】
ただし、遷移特性テーブルの次元数 k が w よりも小さい場合には、
ｑ(ｖ)＝ｑ(ｖ1, ... ,ｖk)×ｑ(ｖk+1, ... ,ｖ2k)×ｑ(ｖhk+1, ... ,ｖｗ)  ・・・  (式１６）
となる。ここで h は正又は０の整数である。
【０１５３】
このとき、到着ノード数算出手段１５０は各アクセスシーケンス v とウィンドウサイズ w に対して到着ノード数 a(w) を算出する。ただし、到着ノード数は、w の増加に伴い広義の意味で単調増加することに注意する。
【０１５４】
到着ノード数の算出方法の例を以下の式に示す。以下の式で算出された到着ノード数は、ウィンドウサイズが w の時に１ウィンドウ中にアクセスが到着するノードの数の期待値になっている。
【数７】
2006331135.tif 000009
a(w) は、第１の実施の形態における a(n, w) に相当する。Card(v)はアクセスシーケンス vにおける、ノードＩＤの数を表す。ノードＩＤの数は、v の成分に同じノードが出現した場合には１であると計数し、２つのノードが出現した場合には２であると計数する。
【０１５５】
（第２実施の形態の効果）
以上説明した実施の形態によれば、第１の実施の形態よりもブロックコピー回数を正確に算出できる。
【０１５６】
その理由は、アクセスの発生するノードへのアクセスシーケンスを指定した遷移特性テーブル３６で負荷分散特性を記述するため、多くの負荷分散方法をより正確にかつ詳細に記述できるためである。
【０１５７】
（第３の実施の形態）
以下、本発明の第３の実施の形態について図面を参照して説明する。
【０１５８】
図１２は、本実施の形態によるクラスタシステムの性能予測装置１２の構成を示すブロック図である。
【０１５９】
図１２を参照すると、本実施の形態によるクラスタシステムの性能予測装置１２の構成は、図１に示した第１の実施の形態によるクラスタシステムの性能予測装置１０の構成と同様である。しかしながら、ワークロード特性生成手段１３１の機能、到着ノード数算出手段１５１の機能は、第１の実施の形態によるワークロード特性生成手段１３０、到着ノード数算出手段１５０の機能とそれぞれ異なるものとなっている。また、オーバーヘッド基礎情報２２に含まれるワークロード特性情報２２１は、第１の実施の形態によるオーバーヘッド基礎情報２０に含まれるワークロード特性情報２２０と異なる。
【０１６０】
本実施の形態では、ワークロード特性生成手段１３１は、ワークロード特性情報２２１をワークロード特性テーブル３２へ変換する機能を有する。また、到着ノード数算出手段１５１は、ウィンドウサイズが自然数でない場合でも到着ノード数を計算する機能を有する。
【０１６１】
第１の実施の形態においては、ワークロード特性情報２２０がワークロード特性テーブルで与えられていた。本実施の形態では、ワークロード特性情報２２１は、ワークロード特性テーブル３２を生成するための情報として与えられる。具体的には、ワークロード特性情報２２１は、部分ブロック集合に到着したアクセス種毎のアクセス回数、つまり「read」アクセスの数と「write」アクセスの数で与えられる。ワークロード特性情報２２１のワークロード特性テーブル３２への変換は、ワークロード特性生成手段１３１によりなされる。
【０１６２】
次に、本実施の形態の動作を説明する。
【０１６３】
図１３は、本実施の形態によるクラスタシステムの性能予測装置１２の動作を説明するためのフローチャートである。
【０１６４】
本実施の形態の動作は、Ｃ１、Ｃ２、Ｃ４及びＣ６からＣ８のステップは、図３で説明した第１の実施の形態のＡ１、Ａ２、Ａ４及びＡ６からＡ８のステップと同じである。しかし、Ｃ３及びＣ５のステップは、Ａ３及びＡ５のステップと異なる。以下、Ｃ３及びＣ５のステップについて説明する。
【０１６５】
第１の実施の形態では、ステップＡ３におけるワークロード特性生成手段１３の動作は、ワークロード特性情報２２０をワークロード特性テーブル３２に書き込むだけであった。
【０１６６】
また、ステップＡ５においては、到着ノード数算出手段１５０は自然数のウィンドウサイズからのみ到着ノード数を算出していた。
【０１６７】
本実施の形態では、ステップＣ３において、ワークロード特性生成手段１３１は「read」アクセスの数と「write」アクセスの数からウィンドウサイズとその出現頻度を算出し、ワークロード特性テーブル３２を生成する（ステップＣ３）。
【０１６８】
ステップＣ３においては、ワークロード特性生成手段１３１は、「read」アクセスの数と「write」アクセス数との和を「write」アクセスの数で割った値をウィンドウサイズとし、当該ウィンドウサイズの出現頻度を「write」アクセスの数として、ワークロード特性テーブル３２に書き込む。この算出方法は、全ての「write」アクセスが等間隔に到着することを仮定した場合に特に正確に算出できる。
【０１６９】
また、ステップＣ５においては、自然数でない正の実数のウィンドウサイズ w から到着ノード数を算出できるようにするために、到着ノード数算出手段１６０はウィンドウサイズが、
【数８】
2006331135.tif 000010
及び
【数９】
2006331135.tif 000011
であるときの到着ノード数から w に対する到着ノード数を算出する（ステップＣ５）。
【０１７０】
ここで、
【数１０】
2006331135.tif 000012
は、それぞれ w 以下の最大の整数、w 以上の最小の整数を表す記号である。
【０１７１】
ステップＣ５においては、例えば、到着ノード数算出手段１５１は次の式で正の実数のウィンドウサイズに対して到着ノード数を算出する。
【数１１】
2006331135.tif 000013
上記の式は、
【数１２】
2006331135.tif 000014
と
【数１３】
2006331135.tif 000015
の間で線形補間を行っているが、他の一般に知られた補間方法を用いてもよい。なお、式１８及び式１９で h の記号が使用されているが、第２の実施の形態における式１６に記載された h とは、別の量を表している。
【０１７２】
次のＣ６のステップ以降は、第１の実施の形態のＡ６以降と同様であり、線形補間により算出した到着ノード数を用いて、クラスタリング・オーバーヘッド及びスケーラビリティを算出できる。
【０１７３】
本発明の特徴である、「read」アクセスの数と「write」アクセスの数から求めたウィンドウサイズ w が整数でない場合でも、ウィンドウサイズが w 以下の最大の整数であるときの到着ノード数と、w 以上の最小の整数であるときの到着ノード数から、 w に対する到着ノード数を補間により算出する機能については、コンピュータ装置の内部にそのような機能を実現するプログラムを組み込んだ回路部品を実装して実現することも可能である。しかしながら、本発明の特徴的な機能を実現するためのプログラム（アプリケーション）を記憶媒体に記憶させ、コンピュータ装置で当該プログラムを実行することで、クラスタシステムの性能予測装置１２として機能させることもできる。
【０１７４】
（第３の実施の形態の効果）
以上説明した実施の形態によれば、ワークロード特性情報２２１が「read」アクセスの数と「write」アクセスの数で与えられる場合でも、クラスタシステム４０のクラスタリング・オーバーヘッド及びスケーラビリティを予測できる。
【０１７５】
その理由は、「read」アクセスの数と「write」アクセスの数とから求めたウィンドウサイズ w が整数でない場合でも、ウィンドウサイズが w 以下の最大の整数であるときの到着ノード数とw 以上の最小の整数であるときの到着ノード数から、 w に対する到着ノード数を算出するためである。
【０１７６】
（第４の実施の形態）
以下、本発明の第４の実施の形態について図面を参照して説明する。
【０１７７】
上述した第１の実施の形態、第２の実施の形態及び第３の実施の形態においては、クライアントからのアクセス種は「read」と「write」の２種類であった。しかし、本実施の形態においては、アクセス種として「read」と「write」と「get」の３種類がある場合の、クラスタリング・オーバーヘッド及びスケーラビリティの予測について説明する。
【０１７８】
本実施の形態で説明する「get」アクセス（取得のアクセス）では、「read」アクセスと同様にブロックの読出しを行い、最新のブロックを持たないブロックに到着したときは、ブロックコピーを起こす。「write」アクセスしたノード又は「read」アクセスしたノードへクライアントからアクセスした場合と異なり、「get」アクセスしたノードへアクセスしても、ノードでは現在の部分ブロック集合が最新であることの情報は得られない。
【０１７９】
このため、過去に「get」アクセスのみが到着したノードに「get」アクセスが到着した場合に、ブロックコピーが発生する。このようになる理由は、「get」アクセスしたノードでは最新であるかどうかの情報が得られないため、「get」アクセスでは最新のブロックを持たないブロックに到着したと判定し、ブロックコピーを起こすためである。一方、過去に「write」又は「read」アクセスが発生したノードへ「get」アクセスが到着しても、ブロックコピーは生じない。上述の説明で、過去の記述は、ブロックコピーが発生するかどうかを判定しようとするノードについて、判定時刻の含まれる１つの「write」アクセスのウィンドウ内で時間を遡ることを意味する。
【０１８０】
図１４は、本実施の形態によるクラスタシステムの性能予測装置１３の構成を示すブロック図である。
【０１８１】
図１４を参照すると、本実施の形態によるクラスタシステムの性能予測装置１３の構成は、図１に示した第１の実施の形態によるクラスタシステムの性能予測装置１０の構成と同様である。しかしながら、コピーコスト生成手段１２１の機能、ワークロード特性生成手段１３２の機能は、第１の実施の形態によるコピーコスト生成手段１２０の機能、ワークロード特性生成手段１３０の機能とそれぞれ異なるものとなっている。また、オーバーヘッド基礎情報２３に含まれるコピーコスト情報２１１、ワークロード特性情報２２２は、第１の実施の形態によるオーバーヘッド基礎情報２０に含まれるコピーコスト情報２１０、ワークロード特性情報２２０とそれぞれ異なる。
【０１８２】
コピーコスト生成手段１２１の機能、ワークロード特性生成手段１３２の機能、コピーコスト情報２１１及びワークロード特性情報２２２については、図１６で説明する。
【０１８３】
図１５は、本実施の形態による特性テーブル３５の内容の構成を示すブロック図である。
【０１８４】
図１５を参照すると、本実施の形態による特性テーブル３５は、コピーコストテーブル３１とワークロード特性テーブル３２と負荷分散特性テーブル３３とコピーコストテーブル（ＧＥＴ）３８とワークロード特性テーブル（ＧＥＴ）３９による構成となっている。なお、ワークロード特性テーブル３２及び負荷分散特性テーブル３３については構成の詳細を図示していないが、これらのテーブルの構成は、図３に示した構成と同様である。
【０１８５】
本実施の形態による特性テーブル３５では、第１の実施の形態の特性テーブル３０に対して、コピーコストテーブル（ＧＥＴ）３８及びワークロード特性テーブル（ＧＥＴ）３９が追加されている。
【０１８６】
コピーコストテーブル（ＧＥＴ）３８に書き込まれるコピーコスト（ＧＥＴ）は、「get」アクセスによるブロックコピーが１回発生したときに１つのＣＰＵが消費される割合を表す。ＣＰＵが消費される割合は、第１の実施の形態と同じく、例えば単位時間あたりのＣＰＵ実行時間で表す。
【０１８７】
ワークロード特性テーブル（ＧＥＴ）３９は、ワークロード特性テーブル３２と同様、部分ブロック集合ＩＤを各行に、「read」アクセスに関する「write」アクセスのウィンドウサイズを各列に配置したテーブルである。
【０１８８】
本実施の形態では、「read」アクセスに関する「write」アクセスのウィンドウサイズとは、例えば「write, read, read, read, (write) 」のようなアクセスシーケンスのウィンドウサイズを表すこととする。なお、アクセスシーケンスの間に「get」アクセスを挟むこともあるが、その場合は当該ウィンドウサイズには「get」アクセスの数を含まないものとする。
【０１８９】
ワークロード特性テーブル（ＧＥＴ）３９の ウィンドウサイズ（write & read）と書かれた区画（レコード）には、「get」アクセスに関する、「write」アクセス又は「read」アクセスのウィンドウサイズが記録される。ここで、「get」アクセスに関する、「write」アクセス又は「read」アクセスのウィンドウサイズとは、アクセスシーケンスの間に「get」アクセスを挟む「read」アクセスに関する「write」アクセスのウィンドウにおいて、「get」アクセスに関する「write」アクセスのウィンドウサイズ又は「get」アクセスに関する「read」アクセスのウィンドウサイズを表す。ここで、「get」アクセスに関する「write」アクセスのウィンドウサイズとは、例えば「write, get, get,(read) 」のようなアクセスシーケンスのウィンドウサイズを表すこととする。
【０１９０】
例えば、「write, get, get, read, get, get, read, get, get, read, get, get, (write) 」 というアクセスシーケンスでは、「read」アクセスに関する「write」アクセスのウィンドウサイズが４であり、「get」アクセスに関する、「write」アクセス又は「read」アクセスのウィンドウサイズが３である。
【０１９１】
上述のシーケンスが発生した部分、ワークロード特性テーブル（ＧＥＴ）３９では、該当する部分ブロック集合ＩＤの行とウィンドウサイズ（write）が４と書かれた列との交差する区画には３と書かれる。
【０１９２】
上記のアクセスシーケンスでは、「get」アクセスに関する「write」アクセスのウィンドウサイズと、「read」アクセスのウィンドウサイズは共に３で一致している。しかしながら、「get」アクセスに関するウィンドウサイズが、「write」アクセスのウィンドウと「read」アクセスのウィンドウで一致しない場合には、なんらかの１つの代表値を「get」アクセスに関する、「write」アクセス及び「read」アクセスのウィンドウサイズとして使用する。後述する式２０で計算する w'は、このような代表値の例である。
【０１９３】
本発明の特徴である、「read」アクセスのブロックコピー回数及び「get」アクセスのブロックコピー回数からクラスタリング・オーバーヘッドを計算する機能については、コンピュータ装置の内部にそのような機能を実現するプログラムを組み込んだ回路部品を実装して実現することも可能である。しかしながら、本発明の特徴的な機能を実現するためのプログラム（アプリケーション）を記憶媒体に記憶させ、コンピュータ装置で当該プログラムを実行することで、クラスタシステムの性能予測装置１３として機能させることもできる。
【０１９４】
次に、本実施の形態の動作を説明する。
【０１９５】
図１６は、本実施の形態によるクラスタシステムの性能予測装置１３の動作を説明するためのフローチャートである。以下の説明では、必要に応じて図１４の主要な部分を参照する。
【０１９６】
図１６を参照すると、本実施の形態のフローチャートは、図３に示した第１の実施の形態のフローチャートに、ステップＤ３、Ｄ５、Ｄ８、Ｄ１０、Ｄ１２を加えたものである。これらのステップは、「get」アクセスによるブロックコピー回数を算出するためのステップである。
【０１９７】
最初に、入力手段１１０はオーバーヘッド基礎情報２３を入力する（ステップＤ１）。
【０１９８】
本実施の形態による、オーバーヘッド基礎情報２３のコピーコスト情報２１１には、「read」アクセスによるブロックコピーによって生じるコピーコストと「get」アクセスによるブロックコピーによって生じるコピーコストに関する情報が含まれる。
【０１９９】
また、ワークロード特性情報２２２には、「read」アクセスに関するワークロード特性に加えて、部分ブロック集合毎の「get」アクセスの数と、「write」アクセスと「read」アクセスの数の和が与えられているとする。以下では、部分ブロック集合毎の「get」アクセスの数を g で表し、また「write」アクセスと「read」アクセスの数の和を wr で表す。
【０２００】
次に、コピーコスト生成手段１２１がオーバーヘッド基礎情報２３に含まれるコピーコスト情報２１１から、コピーコストテーブル３１を生成する（ステップＤ２）。ステップＤ２は、図３のステップＡ２に対応する。
【０２０１】
次に、コピーコスト生成手段１２１がオーバーヘッド基礎情報２３に含まれるコピーコスト情報２１１から、コピーコストテーブル（ＧＥＴ）３８を生成する（ステップＤ３）。
【０２０２】
本実施の形態では、「get」アクセスのブロックコピー１回で発生するコピーコストが、コピーコスト情報２１１にコピーコスト（ＧＥＴ）として含まれている。したがって、コピーコスト生成手段１２１はコピーコスト情報２１１から、コピーコスト（ＧＥＴ）をコピーコストテーブル（ＧＥＴ）３８に書き込む。
【０２０３】
次に、ワークロード特性生成手段１３２は、オーバーヘッド基礎情報２３に含まれるワークロード特性情報２２２から、ワークロード特性テーブル３２を生成する（ステップＤ４）。
【０２０４】
ステップＤ４は、図３のステップＡ３に対応する。
【０２０５】
次に、ワークロード特性生成手段１３２は、部分ブロック集合毎に、「get」アクセスに関する、「write」アクセス及び「read」アクセスに関するウィンドウサイズ w'
ｗ′＝（ｇ＋ｗｒ）／ｗｒ  ・・・  （式２０）
をワークロード特性テーブル（ＧＥＴ）３９の対象とする部分ブロック集合の行の全てのレコードに書き込む（ステップＤ５）。
【０２０６】
負荷分散特性生成手段１４０は、オーバーヘッド基礎情報２３に含まれる負荷分散特性情報２３０から負荷分散特性テーブル３３を生成する（ステップＤ６）。
【０２０７】
ステップＤ６は、図３のステップＡ４に対応する。
【０２０８】
到着ノード数算出手段１５０は、与えられた負荷分散特性テーブル３３に関して、到着ノード数がウィンドウサイズに対して（広義の意味で）単調増加するように「read」アクセスの到着ノード数を算出する（ステップＤ７）。
【０２０９】
ステップＤ７は、図３のステップＡ５に対応する。
【０２１０】
到着ノード数算出手段１５０は、ワークロード特性テーブル２２とワークロード特性テーブル（ＧＥＴ）３９から、「read」アクセスに関する「write」アクセスのウィンドウ内における、「get」アクセスの到着ノード数を算出する。但し、「read」アクセスの到着ノード数の場合とは異なり、「get」アクセスの到着ノード数は、１つのウィンドウ内で、過去に一度も「write」アクセスまたは「read」アクセスが到着したことがないノードへ到着した「get」アクセスの数であるとして到着ノード数を算出する（ステップＤ８）。
【０２１１】
「get」アクセスの到着ノード数は、クラスタサイズ n と、「read」アクセスに関する「write」アクセスのウィンドウサイズ w 、「get」アクセスに関する「write」アクセス又は「read」アクセスのウィンドウサイズ g(w) から算出する。以下では、「get」アクセスに関する「write」アクセス又は「read」アクセスのウィンドウサイズを g(w) で表す。
【０２１２】
g(w) は、ワークロード特性テーブル（ＧＥＴ）３９から求められる。そして、与えられた負荷分散特性テーブル３３に対して、「get」アクセスの到着ノード数 a'(n, w) を w, g(w) に関して単調に増加するように算出する。
【０２１３】
「write」アクセスのウィンドウサイズ w が与えられたときの、「get」アクセスの到着ノード数 a'(n, w) の算出方法の例を以下の式に示す。
【数１４】
2006331135.tif 000016
オーバーヘッド予測手段１６０は、「read」アクセスの到着ノード数からブロックコピー回数を算出する（ステップＤ９）。
【０２１４】
ステップＤ９は図３のステップＡ６に対応する。
【０２１５】
オーバーヘッド予測手段１６０は、「get」アクセスの到着ノード数からブロックコピー回数（ＧＥＴ）を算出する（ステップＤ１０）。
【０２１６】
W を出現回数が０でない「write」アクセスのウィンドウサイズの集合、f (w) を「write」アクセスのウィンドウサイズ w の出現回数として、
【数１５】
2006331135.tif 000017
とする。B'(n,W) は、部分ブロック集合に対して発生する「get」アクセスによるブロックコピー回数を表している。
【０２１７】
ここで、特性テーブル３５に出現する各部分ブロック集合をSi として 
ｂ′(Ｓｉ）＝ｂ′(Ｅ，Ｗ）  ・・・  （式２３）
とする。また 、Si ∈ S とする。そして、「get」アクセスによって発生するブロックコピー回数 B'(S) を、
【数１６】
2006331135.tif 000018
と算出する。ここで、ブロックコピー回数 B'(S)は単位時間当たりのブロックコピー回数である。
【０２１８】
次に、オーバーヘッド予測手段１６０は、「read」アクセスによって発生するブロックコピー回数からクラスタリング・オーバーヘッドを算出する（ステップＤ１１）。
【０２１９】
ステップＤ１１は、図３のステップＡ７に対応する。
【０２２０】
「get」アクセスによるコピーコスト（ＧＥＴ）を copy(get) 、「get」アクセスによるクラスタリング・オーバーヘッドをoverhead(get) 、スケーラビリティをscalability と表すことにすると、オーバーヘッド予測手段１６０は、
【数１７】
2006331135.tif 000019
を用いて、「get」アクセスによるクラスタリング・オーバーヘッドと、スケーラビリティを算出する（ステップＤ１２）。
【０２２１】
最後に、出力手段１７０は、「read」アクセスによるクラスタリング・オーバーヘッド、「get」アクセスによるクラスタリング・オーバーヘッド及びスケーラビリティを出力する（ステップＤ１３）。
【０２２２】
（第４の実施の形態の効果）
以上説明した実施の形態によれば、「write」アクセス及び「read」アクセスに加えて「get」アクセスがあるクラスタシステム４０の場合に対しても、クラスタリング・オーバーヘッド及びスケーラビリティを計算できる。
【０２２３】
その理由は、「read」アクセスのブロックコピー回数及び「get」アクセスのブロックコピー回数からクラスタリング・オーバーヘッドを計算するためである。
【０２２４】
本発明のクラスタシステムの性能予測装置１０、１１、１２、１３は、その動作をハードウェア的に実現することは勿論として、上記した各手段を実行する性能予測プログラム（アプリケーション）３００をコンピュータ処理装置であるクラスタシステムの性能予測装置１０、１１、１２、１３で実行することにより、ソフトウェア的に実現することができる。この性能予測プログラム３００は、磁気ディスク、半導体メモリその他の記録媒体に格納され、その記録媒体からクラスタシステムの性能予測装置１０、１１、１２、１３にロードされ、その動作を制御することにより、上述した各機能を実現する。
【０２２５】
以上好ましい複数の実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【０２２６】
【図１】本発明の第１の実施の形態によるクラスタシステムの性能予測装置の構成を示すブロック図である。
【図２】本発明の第１の実施の形態の対象とするクラスタシステムの一例を示す図である。
【図３】本発明の第１の実施の形態による特性テーブルの内容の構成を示すブロック図である。
【図４】本発明の第１の実施の形態によるクラスタシステムの性能予測装置の動作を説明するためのフローチャートである。
【図５】本発明の第１の実施の形態によるワークロード特性テーブル例を示す図である。
【図６】本発明の第１の実施の形態による負荷分散特性テーブル例を示す図である。
【図７】本発明の第１の実施の形態によるクラスタシステムの性能予測装置のハードウェア構成を示すブロック図である。
【図８】本発明の第２の実施の形態によるクラスタシステムの性能予測装置の構成を示すブロック図である。
【図９】本発明の第２の実施の形態による遷移特性テーブル集合の一例を示す図である。
【図１０】本発明の第２の実施の形態によるクラスタシステムの性能予測装置における２次元の遷移特性テーブル例を示す図である。
【図１１】本発明の第２の実施の形態による性能予測システムの動作を説明するためのフローチャートである。
【図１２】本発明の第３の実施の形態によるクラスタシステムの性能予測装置の構成を示すブロック図である。
【図１３】本発明の第３の実施の形態によるクラスタシステムの性能予測装置の動作を説明するためのフローチャートである。
【図１４】本発明の第４の実施の形態によるクラスタシステムの性能予測装置の構成を示すブロック図である。
【図１５】本発明の第４の実施の形態による特性テーブルの内容の構成を示すブロック図である。
【図１６】本発明の第４の実施の形態によるクラスタシステムの性能予測装置の動作を説明するためのフローチャートである。
【符号の説明】
【０２２７】
１０、１１、１２、１３：クラスタシステムの性能予測装置
２０、２１、２２、２３：オーバーヘッド基礎情報
３０、３５：特性テーブル
３１：コピーコストテーブル
３２：ワークロード特性テーブル
３２Ａ：ワークロード特性テーブル例
３３：負荷分散特性テーブル
３３Ａ：負荷分散特性テーブル例
３６：遷移特性テーブル集合
３６Ａ：遷移特性テーブル
３６Ｂ：遷移特性テーブル
３７：遷移特性テーブル例
３８：コピーコストテーブル（ＧＥＴ）
３９：ワークロード特性テーブル（ＧＥＴ）
４０：クラスタシステム
１０１：ＣＰＵ
１０２：主記憶部
１０３：通信部
１０４：出力部
１０５：入力部
１０６：補助記憶部
１１０：入力手段
１２０、１２１：コピーコスト生成手段
１３０、１３１、１３２：ワークロード特性生成手段
１４０、１４１：負荷分散特性生成手段
１５０、１５１：到着ノード数算出手段
１６０：オーバーヘッド予測手段
１７０：出力手段
２１０、２１１：コピーコスト情報
２２０、２２１、２２２：ワークロード特性情報
２３０、２３１：負荷分散特性情報
３００：性能予測プログラム
【図１】
2006331135.tif 000020
【図２】
2006331135.tif 000021
【図３】
2006331135.tif 000022
【図４】
2006331135.tif 000023
【図５】
2006331135.tif 000024
【図６】
2006331135.tif 000025
【図７】
2006331135.tif 000026
【図８】
2006331135.tif 000027
【図９】
2006331135.tif 000028
【図１０】
2006331135.tif 000029
【図１１】
2006331135.tif 000030
【図１２】
2006331135.tif 000031
【図１３】
2006331135.tif 000032
【図１４】
2006331135.tif 000033
【図１５】
2006331135.tif 000034
【図１６】
2006331135.tif 000035