(57)【特許請求の範囲】
【請求項１】
１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムであって、
前記物理サーバの各々は、
前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定する前記物理サーバ側測定器と、
前記物理サーバ側測定器に、前記物理サーバごとのキャッシュ活性度を測定させる物理サーバ側制御部と、を備え、
前記測定サーバは、
前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として測定する前記測定サーバ側測定器と、
前記測定サーバ側測定器に、前記対象仮想マシンのキャッシュ利用容量を測定させる測定サーバ側制御部と、を備え、
前記管理サーバは、
前記測定サーバから取得した、前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出し、
前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出する管理サーバ側制御部と、を備える、
ことを特徴とするキャッシュ管理システム。
【請求項２】
１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムにおける評価方法であって、
前記測定サーバに配置されている測定サーバ側測定器が、前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる前記測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバごとのキャッシュ活性度として測定するステップと、
前記物理サーバに配置されている物理サーバ側測定器の各々が、前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる前記物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定するステップと、
前記測定サーバ側測定器が、前記対象仮想マシンのキャッシュ利用容量を測定するステップと、
前記管理サーバが、前記測定サーバから取得した、前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出するステップと、
前記管理サーバが、前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出するステップと、を実行する、
ことを特徴とする評価方法。
【請求項３】
１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムの管理サーバであって、
前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として記憶する管理サーバ側記憶部と、
前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として、前記物理サーバの各々から取得し、
前記対象仮想マシンのキャッシュ利用容量を、前記測定サーバから取得し、
前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出し、
前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出する管理サーバ側制御部と、を備える、
ことを特徴とする管理サーバ。
【請求項４】
１または複数の仮想マシンが配置されている複数の物理サーバであって、
前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定する前記測定器を備え、
前記測定器は、
前記物理サーバの前記メインメモリに所定の前記ランダムアクセス頻度でアクセスするキャッシュ負荷装置部と、
前記物理サーバに配置されている前記仮想マシンおよび前記測定器自身のキャッシュ利用容量を測定するキャッシュ利用容量測定部と、
前記物理サーバごとの前記キャッシュ活性度を出力する出力部と、を備える、
ことを特徴とする物理サーバ。
【請求項５】
評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバであって、
前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として測定する測定器を備え、
前記測定器は、
前記測定サーバの前記メインメモリに所定の前記ランダムアクセス頻度でアクセスするキャッシュ負荷装置部と、
前記対象仮想マシンのキャッシュ利用容量を測定するキャッシュ利用容量測定部と、
前記測定した、前記対象仮想マシンのキャッシュ利用容量を出力する出力部と、を備える、
ことを特徴とする測定サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎用プラットフォーム上に配置する仮想マシン間のキャッシュ競合に対処する技術に関する。
【背景技術】
【０００２】
サーバ仮想化技術の発展に伴い、物理サーバを統合し、汎用プラットフォーム上で複数の仮想マシン（ＶＭ：Virtual Machine）を動作させることが行われている。現在ＣＰＵ（Central Processing Unit）で主流となっているマルチコア構成では、低次のキャッシュを複数のコアが共有するアーキテクチャを持つことが一般的である。
【０００３】
汎用プラットフォームのノード上で仮想マシンを単体で動かしたときには、図８（ａ）に示したように、その仮想マシン（図８（ａ）では、「ＶＭ１」）が共有キャッシュ（図８においては「３次キャッシュメモリ」）を占有した状態となる。これに対し、同じノード上で複数の仮想マシンが稼働している場合、図８（ｂ）に示すように、自身の仮想マシン（「ＶＭ１」）以外の他の仮想マシン（「ＶＭ２」「ＶＭ３」「ＶＭ４」）によって共有キャッシュ（３次キャッシュメモリ）のデータが置き換えられ、キャッシュミスが相対的に増加する。ここで、キャッシュミスとは、命令処理に必要なデータがキャッシュメモリに存在せず、キャッシュメモリからデータを読み込むことができないことをいう。キャッシュミスを起こしたコアは、キャッシュメモリより数倍アクセス時間のかかるメインメモリまで参照にいかなければならず、その結果として性能低下を引き起こす。これを複数仮想マシン間のキャッシュ競合と呼ぶ。
【０００４】
複数の仮想マシンが物理サーバの同じキャッシュを利用すれば、仮想マシンの各々が利用するキャッシュの容量、つまりキャッシュ利用容量は、単体の仮想マシンが利用する場合と比較して減少する。キャッシュ利用容量が減少することは、キャッシュミス数の増加を招くため、アプリケーションによっては６０％程度の性能低下が起こり得る（例えば、非特許文献１参照）。
【０００５】
非特許文献２には、最終レベルキャッシュのキャッシュ利用容量（どの仮想マシンがどれだけのキャッシュ（空間）を利用しているか）をモニタリングするハードウェア機能（Cache Monitoring Technology）の技術について開示されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Intel's Cache Monitoring Technology: Use Models and Data  ［online］、［平成28年3月14日検索］、インターネット<ＵＲＬ:https://software.intel.com/en-us/blogs/2014/12/11/intels-cache-monitoring-technology-use-models-and-data>
【非特許文献２】Benefits of Intel Cache Monitoring Technology in the Intel Xeon Processor E5 v3 Family  ［online］、［平成28年3月14日検索］、インターネット<ＵＲＬ:https://software.intel.com/en-us/blogs/2014/06/18/benefit-of-cache-monitoring>（Intelは登録商標。Xeonは登録商標。）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
新たな仮想マシンを物理サーバ上に配置（デプロイ）する際、インフラ運用者は、この新たな仮想マシンが物理サーバのキャッシュをどの程度利用することができるかを事前に知りたい場合がある。しかし、非特許文献２の技術では、配置しようとする仮想マシンがどの程度のキャッシュ空間を利用することができるかを評価することはできない。例えば、図８（ａ）のように単体の仮想マシンが動作しているキャッシュと、図８（ｂ）のように複数の仮想マシンが動作しているキャッシュのそれぞれに新たな仮想マシンを配置する場合（キャッシュの総容量は、図８（ａ）と（ｂ）とで同じ）、図８（ｂ）の場合の方が明らかに、新たな仮想マシンのキャッシュ利用容量が小さくなるが、非特許文献２ではその点を評価することができない。
【０００８】
このような事情に鑑みて、本発明は、物理サーバに配置しようとする新たな仮想マシンの、物理サーバに配置したときの性能を的確に評価することを課題とする。
【課題を解決するための手段】
【０００９】
前記した課題を解決するため、請求項１に記載の発明は、１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムであって、前記物理サーバの各々は、前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定する前記物理サーバ側測定器と、前記物理サーバ側測定器に、前記物理サーバごとのキャッシュ活性度を測定させる物理サーバ側制御部と、を備え、前記測定サーバは、前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として測定する前記測定サーバ側測定器と、前記測定サーバ側測定器に、前記対象仮想マシンのキャッシュ利用容量を測定させる測定サーバ側制御部と、を備え、前記管理サーバは、前記測定サーバから取得した、前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出し、前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出する管理サーバ側制御部と、を備える、ことを特徴とするキャッシュ管理システムである。
【００１０】
また、請求項２に記載の発明は、１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムにおける評価方法であって、前記測定サーバに配置されている測定サーバ側測定器が、前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる前記測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバごとのキャッシュ活性度として測定するステップと、前記物理サーバに配置されている物理サーバ側測定器の各々が、前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる前記物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定するステップと、前記測定サーバ側測定器が、前記対象仮想マシンのキャッシュ利用容量を測定するステップと、前記管理サーバが、前記測定サーバから取得した、前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出するステップと、前記管理サーバが、前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出するステップと、を実行する、ことを特徴とする評価方法である。
【００１１】
また、請求項３に記載の発明は、１または複数の仮想マシンが配置されている複数の物理サーバと、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバと、管理サーバと、を備えるキャッシュ管理システムの管理サーバであって、前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として記憶する管理サーバ側記憶部と、前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる物理サーバ側測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として、前記物理サーバの各々から取得し、前記対象仮想マシンのキャッシュ利用容量を、前記測定サーバから取得し、前記測定サーバのキャッシュ活性度を用いて、前記測定サーバから取得した、前記対象仮想マシンのキャッシュ利用容量から前記対象仮想マシンのランダムアクセス頻度を算出し、前記物理サーバの各々から取得した、前記物理サーバごとのキャッシュ活性度を用いて、前記算出した、前記対象仮想マシンのランダムアクセス頻度から、前記物理サーバの各々に配置される場合の前記対象仮想マシンのキャッシュ利用容量を算出する管理サーバ側制御部と、を備える、ことを特徴とする管理サーバである。
【００１２】
また、請求項４に記載の発明は、１または複数の仮想マシンが配置されている複数の物理サーバであって、前記物理サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定器自身のキャッシュ利用容量の推移を、前記物理サーバごとのキャッシュ活性度として測定する前記測定器を備え、前記測定器は、前記物理サーバの前記メインメモリに所定の前記ランダムアクセス頻度でアクセスするキャッシュ負荷装置部と、前記物理サーバに配置されている前記仮想マシンおよび前記測定器自身のキャッシュ利用容量を測定するキャッシュ利用容量測定部と、前記物理サーバごとの前記キャッシュ活性度を出力する出力部と、を備える、ことを特徴とする物理サーバである。
【００１３】
また、請求項５に記載の発明は、評価対象となる仮想マシンを示す対象仮想マシンが配置されている測定サーバであって、前記測定サーバのメインメモリへのランダムアクセス頻度を変化させて得られる測定サーバ側測定器自身のキャッシュ利用容量の推移を、前記測定サーバのキャッシュ活性度として測定する測定器を備え、前記測定器は、前記測定サーバの前記メインメモリに所定の前記ランダムアクセス頻度でアクセスするキャッシュ負荷装置部と、前記対象仮想マシンのキャッシュ利用容量を測定するキャッシュ利用容量測定部と、前記測定した、前記対象仮想マシンのキャッシュ利用容量を出力する出力部と、を備える、ことを特徴とする測定サーバである。
【００１４】
請求項１〜３に記載の発明よれば、キャッシュ活性度という新たな指標を導入することで、すでに１または複数の仮想マシンが配置されている物理サーバに新たな仮想マシンを配置する際にその新たな仮想マシンがどの程度のキャッシュ容量を利用することができるかを明らかにすることができる。
したがって、物理サーバに配置しようとする新たな仮想マシンの、物理サーバに配置したときの性能を的確に評価することができる。
また、請求項４，５に記載の発明よれば、物理サーバの各々に配置される場合の新たな仮想マシンのキャッシュ利用容量を算出するのに必要となる情報を求めることができる。
【発明の効果】
【００１５】
本発明によれば、物理サーバに配置しようとする新たな仮想マシンの、物理サーバに配置したときの性能を的確に評価することができる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態のキャッシュ管理システムの例の全体構成図である。
【図２】（ａ）ＣＥＭの機能構成図の例であり、（ｂ）がキャッシュ活性度を示すグラフの例である。
【図３】管理サーバの機能構成図の例である。
【図４】キャッシュ管理システムが実行する処理の手順０の説明図である。
【図５】キャッシュ管理システムが実行する処理の手順１の説明図である。
【図６】キャッシュ管理システムが実行する処理の手順２の説明図である。
【図７】キャッシュ管理システムが実行する処理の手順３の説明図である。
【図８】汎用プラットフォーム上で複数の仮想マシンを動作させた場合のキャッシュ競合を説明するための図であり、（ａ）は、単体の仮想マシンが動作した場合、（ｂ）は、複数の仮想マシンが動作した場合である。
【発明を実施するための形態】
【００１７】
本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１８】
≪全体構成≫
図１に示すように、本実施形態のキャッシュ管理システムは、管理サーバ１０と、仮想マシンに関する測定の場となる測定環境下にある測定サーバ２０と、所定のサービスを提供する場となるサーバ環境下にある複数の物理サーバＡ（３０−１），Ｂ（３０−２），・・・を備える。物理サーバＡ（３０−１），Ｂ（３０−２），・・・は、物理サーバ３０と総称する場合がある。
【００１９】
管理サーバ１０は、測定サーバ２０および物理サーバ３０から所定の情報を収集することで測定サーバ２０および物理サーバ３０を監視する。
測定サーバ２０は、１または複数の仮想マシンが配置される測定用の物理サーバである。測定サーバ２０には、後記する評価対象となるＶＭ４０（対象仮想マシン）、および、後記するＣＥＭ５０（キャッシュ容量確保用測定器：測定サーバ側測定器：測定器）が配置されている。
物理サーバ３０は、１または複数の仮想マシンが配置されるサービス提供用の物理サーバである。物理サーバＡ（３０−１）には、ＶＭ４１およびＣＥＭ５１（物理サーバ側測定器：測定器）が配置されている。物理サーバＢ（３０−２）には、ＶＭ４２，４３およびＣＥＭ５２（物理サーバ側測定器：測定器）が配置されている。ＣＥＭ５１，５２は、ＣＥＭ５０と同等の機能を有する。
【００２０】
≪ＣＥＭ≫
図２（ａ）に示すように、例えばＣＥＭ５０は、キャッシュ負荷装置部５０ａと、キャッシュ容量測定部５０ｂと、入出力部５０ｃ（出力部）と、を有する。
【００２１】
キャッシュ負荷装置部５０ａは、ＣＥＭ５０自身が配置されている物理サーバのメインメモリに所定のランダムアクセス頻度（ＲＦ：ｆ［／ｓ］）でランダムアクセスする。ランダムアクセス頻度は可変であり、入出力部５０ｃを介して管理サーバ１０から設定することができる。
【００２２】
キャッシュ容量測定部５０ｂは、ＣＥＭ５０自身が配置されている物理サーバ上で動作中のプロセスのキャッシュ利用容量（ｓ［ＭＢ］）を測定する。動作中プロセスには、物理サーバに配置されている１または複数の仮想マシンおよびＣＥＭ５０自身を含む。測定されたキャッシュ利用容量は、入出力部５０ｃを介して管理サーバ１０に通知される。
【００２３】
入出力部５０ｃは、管理サーバ１０とのインターフェイスとして機能する。入出力部５０ｃは、キャッシュ負荷装置部５０ａによるランダムアクセスのランダムアクセス頻度を変化させて得られる、キャッシュ容量測定部５０ｂが測定したキャッシュ利用容量の推移を、物理サーバのキャッシュ活性度（ＣＡ：Cache Activity）として出力する。物理サーバのキャッシュ活性度は、例えば、図２（ｂ）に示すグラフとして表現される。
【００２４】
≪管理サーバ≫
図３に示すように、管理サーバ１０は、制御部１１（管理サーバ側制御部）と、通信部１２と、記憶部１３（管理サーバ側記憶部）を備えている。
【００２５】
通信部１２は、通信接続される、測定サーバ２０および物理サーバ３０と所定の情報の入出力を行う。また、通信部１２は、通信回線を介して情報の送受信を行う不図示の通信インターフェイスと、キーボード等の入力手段やモニタ等の出力手段（いずれも不図示）との間で入出力を行う入出力インターフェイスとから構成される。
【００２６】
記憶部１３は、ハードディスクやフラッシュメモリ、ＲＡＭ（Random Access Memory）等の記憶手段からなり、キャッシュ活性度情報１３ａおよび測定サーバ情報１３ｂなどを記憶する。
キャッシュ活性度情報１３ａは、物理サーバ３０ごとのキャッシュ活性度を示す情報であり、物理サーバ３０から収集される。
測定サーバ情報１３ｂは、測定サーバ２０のキャッシュ活性度を示す情報であり、測定サーバ２０から収集される。
【００２７】
制御部１１は、管理サーバ１０全体の制御を司り、キャッシュ活性度情報収集部１１ａと、ランダムアクセス頻度算出部１１ｂと、可用キャッシュ容量算出部１１ｃとを備える。また、この制御部１１は、例えば、記憶部１３に格納されたプログラムを不図示のＣＰＵがＲＡＭに展開し実行することで実現される。
【００２８】
キャッシュ活性度情報収集部１１ａは、物理サーバ３０のＣＥＭの各々から、物理サーバ３０自身のキャッシュ活性度を収集する。
ランダムアクセス頻度算出部１１ｂは、測定サーバ情報１３ｂに示された測定サーバ２０のキャッシュ活性度を用いて、測定サーバ２０から取得した、ＶＭ４０のキャッシュ利用容量からＶＭ４０のランダムアクセス頻度を算出する。
可用キャッシュ容量算出部１１ｃは、物理サーバ３０の各々から取得した、キャッシュ活性度情報１３ａが示す物理サーバ３０ごとのキャッシュ活性度を用いて、ランダムアクセス頻度算出部１１ｂが算出した、ＶＭ４０のランダムアクセス頻度から、物理サーバ３０の各々に配置される場合のＶＭ４０のキャッシュ利用容量を可用キャッシュ容量として算出する。
【００２９】
なお、測定サーバ２０は、管理サーバ１０と同様に、制御部（測定サーバ側制御部）と、通信部と、記憶部とを備える。
また、各物理サーバ３０は、管理サーバ１０と同様に、制御部（物理サーバ側制御部）と、通信部と、記憶部とを備える。
【００３０】
≪処理≫
次に、本実施形態のキャッシュ管理システムが実行する処理について説明する。この処理は、手順０〜手順３に分けることができ、以下、手順ごとに説明する。
【００３１】
（手順０）
図４に示すように、まず、ステップＡ１にて、測定サーバ２０に配置されているＣＥＭ５０は、管理サーバ１０によって設定されたランダムアクセス頻度ｆ０で常時稼働し、測定サーバ２０のメインメモリにランダムアクセスを行う。
【００３２】
続いて、ステップＡ２にて、測定サーバ２０に配置されているＣＥＭ５３（ＣＥＭ５０と同等の機能を有する）は、ＣＥＭ５０がランダムアクセス頻度ｆ０で稼働している状況下で、測定サーバ２０のキャッシュ活性度を測定する。具体的には、ＣＥＭ５３は、測定サーバ２０のメインメモリへのランダムアクセス頻度を変化させて得られるＣＥＭ５３自身のキャッシュ利用容量の推移を、測定サーバ２０のキャッシュ活性度として測定する。また、測定サーバ２０は、測定した、測定サーバ２０のキャッシュ活性度を管理サーバ１０へ通知する。
【００３３】
続いて、ステップＡ３にて、管理サーバ１０は、測定サーバ２０から通知された、測定サーバ２０のキャッシュ活性度を測定サーバ情報１３ｂとして保存する。
手順０によれば、管理サーバ１０にてＶＭ４０のランダムアクセス頻度を算出する準備を整えることができる。
手順０の後、手順１を行う。
【００３４】
（手順１）
図５に示すように、まず、ステップＢ１にて、物理サーバＡ（３０−１）に配置されているＣＥＭ５１は、ＣＥＭ５１自身のキャッシュ利用容量を、物理サーバＡ（３０−１）のキャッシュ活性度として測定する。具体的には、ＣＥＭ５１は、物理サーバＡ（３０−１）のメインメモリへのランダムアクセス頻度ｆを変化させて得られるＣＥＭ５１自身のキャッシュ利用容量ｓ（ｆ）の推移を、物理サーバＡ（３０−１）のキャッシュ活性度として測定する。また、物理サーバＡ（３０−１）は、測定した、物理サーバＡ（３０−１）のキャッシュ活性度を管理サーバ１０に通知する。
また、物理サーバＢ（３０−２）に配置されているＣＥＭ５２は、ＣＥＭ５２自身のキャッシュ利用容量を、物理サーバＢ（３０−２）のキャッシュ活性度として測定する。具体的には、ＣＥＭ５２は、物理サーバＢ（３０−２）のメインメモリへのランダムアクセス頻度ｆを変化させて得られるＣＥＭ５２自身のキャッシュ利用容量ｓ（ｆ）の推移を、物理サーバＢ（３０−２）のキャッシュ活性度として測定する。また、物理サーバＢ（３０−２）は、測定した、物理サーバＢ（３０−２）のキャッシュ活性度を管理サーバ１０に通知する。
【００３５】
続いて、ステップＢ２にて、管理サーバ１０は、物理サーバＡ，Ｂ（３０−１，３０−２）からそれぞれ通知された、物理サーバＡ，Ｂ（３０−１，３０−２）のキャッシュ活性度をキャッシュ活性度情報１３ａとして保存する。
手順１によれば、管理サーバ１０が各物理サーバ３０のキャッシュ活性度を把握することができる。
手順１の後、手順２を行う。
【００３６】
（手順２）
図６に示すように、まず、ステップＣ１にて、対象仮想マシンとなるＶＭ４０を測定サーバ２０に配置する。なお、ＣＥＭ５３は、測定サーバ２０から削除する。
続いて、ステップＣ２にて、測定サーバ２０に配置されているＣＥＭ５０（ランダムアクセス頻度ｆ０で稼働）は、キャッシュ容量測定部５０ｂによって、測定サーバ２０に配置されているＶＭ４０のキャッシュ利用容量ｓＶＭを測定する。また、測定サーバ２０は、測定したＶＭ４０のキャッシュ利用容量ｓＶＭを管理サーバ１０に通知する。
【００３７】
続いて、ステップＣ３にて、管理サーバ１０は、測定サーバ情報１３ｂから、測定サーバ２０のキャッシュ活性度を読み取る。
続いて、ステップＣ４にて、管理サーバ１０は、ランダムアクセス頻度算出部１１ｂによって、測定サーバ２０のキャッシュ活性度を用いて、ＶＭ４０のキャッシュ利用容量ｓＶＭからＶＭ４０のランダムアクセス頻度ｆＲＦを算出する。
【００３８】
手順２によれば、ＣＥＭ５０のキャッシュ利用容量に依ることなく、ＶＭ４０自身のランダムアクセス頻度を求めることができる。
手順２の後、手順３を行う。
【００３９】
（手順３）
図７に示すように、まず、ステップＤ１にて、管理サーバ１０は、キャッシュ活性度情報１３ａから物理サーバＡ，Ｂ（３０−１，３０−２）のキャッシュ活性度を読み取る。
【００４０】
続いて、ステップＤ２にて、管理サーバ１０は、可用キャッシュ容量算出部１１ｃによって、キャッシュ活性度情報１３ａから読み取った、物理サーバＡ，Ｂ（３０−１，３０−２）のキャッシュ活性度を用いて、ランダムアクセス頻度算出部１１ｂが算出した、ＶＭ４０のランダムアクセス頻度ｆＲＦから、物理サーバＡ，Ｂ（３０−１，３０−２）の各々に配置される場合のＶＭ４０のキャッシュ利用容量ｓＶＭをｓＡ，ｓＢとして算出する。
【００４１】
手順３によれば、物理サーバＡ，Ｂ（３０−１，３０−２）に配置される場合のＶＭ４０のキャッシュ利用容量ｓＡ，ｓＢを，物理サーバＡ，Ｂ（３０−１，３０−２）の可用キャッシュ容量として算出することができる。
以上で、キャッシュ管理システムが実行する処理の説明を終える。
【００４２】
本実施形態によれば、キャッシュ活性度という新たな指標を導入することで、すでに１または複数の仮想マシンが配置されている物理サーバＡ，Ｂ（３０−１，３０−２）に新たなＶＭ４０を配置する際にそのＶＭ４０がどの程度のキャッシュ容量を利用することができるかを明らかにすることができる。
なお、従来（例えば、非特許文献２）では、キャッシュ利用容量をメモリ空間単位［ＭＢ］で表示するのみであり、キャッシュ活性度という指標が存在しなかったので、配置しようとする新たなＶＭ４０の評価はできなかった。
これに対し、本実施形態によれば、物理サーバに配置しようとする新たな仮想マシンの、物理サーバに配置したときの性能を的確に評価することができる。
【００４３】
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の（ａ）〜（ｃ）のようなものがある。
（ａ）：本発明は、サーバ環境がヘテロなサーバ環境であっても新たな仮想マシンの配置先となる物理サーバ上でキャッシュ利用容量がどの程度になるかを評価することができる。つまり、サーバ環境を構成する物理サーバ３０のキャッシュ容量やＣＰＵアーキテクチャが各物理サーバ３０間で異なるサーバ環境であっても本発明を適用することができ、各物理サーバ３０の性能に依らない。
（ｂ）：本発明では、新たな仮想マシンが利用しようとするキャッシュが、最高次（最終レベル）キャッシュ（図８では、３次キャッシュメモリ）に限られず、より低次（１次、２次など）のキャッシュであっても、キャッシュ活性度を評価することができる。
（ｃ）：管理サーバ１０は、物理サーバに配置しようとする新たな仮想マシンのキャッシュ利用容量が所定値以下であった場合には、インフラ運用者に所定態様のアラート通知を行うようにしてもよい。
【００４４】
また、本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
また、本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
その他、ハードウェア、ソフトウェア、処理手順などについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００４５】
１０      管理サーバ
１１ａ    キャッシュ活性度情報収集部
１１ｂ    ランダムアクセス頻度算出部
１１ｃ    可用キャッシュ容量算出部
１３ａ    キャッシュ活性度情報
１３ｂ    測定サーバ情報
２０      測定サーバ
３０      物理サーバ
４０      ＶＭ（対象仮想マシン）
４１〜４３  ＶＭ（仮想マシン）
５０，５３  ＣＥＭ（測定サーバ側測定器）
５１，５２  ＣＥＭ（物理サーバ側測定器）
５０ａ    キャッシュ負荷装置部
５０ｂ    キャッシュ容量測定部
５０ｃ    入出力部（出力部）
【図１】
0006405331.tif 000002
【図２】
0006405331.tif 000003
【図３】
0006405331.tif 000004
【図４】
0006405331.tif 000005
【図５】
0006405331.tif 000006
【図６】
0006405331.tif 000007
【図７】
0006405331.tif 000008
【図８】
0006405331.tif 000009