(57)【特許請求の範囲】
【請求項１】
それぞれが冷却装置を１台以上、制御する複数台の情報処理装置と、各冷却装置、及び前記複数台の情報処理装置を含む管理対象群全体の消費電力を管理する制御装置とを備え、
前記複数台の情報処理装置は、
自情報処理装置の状態を検出する検出部と、
前記検出部が検出した状態を基に、前記冷却装置を駆動するうえでの設定内容を決定する決定部と、
前記決定部が決定した前記設定内容が現在の設定内容である現設定内容より前記冷却装置の消費電力を増大させる場合に、前記制御装置に対して、前記消費電力の増大分を少なくとも含む増加電力量を示す制御情報と、前記現設定内容から前記設定内容への設定変更の可否の問合わせを送信する問合わせ部と、
前記問合わせ部による問合わせへの前記制御装置の応答に従って、前記現設定内容から前記設定内容への設定変更を行う設定変更部と、を有し、
前記制御装置は、
前記管理対象群全体の消費電力の上限値を記憶した記憶部と、
前記管理対象群全体の消費電力量である全消費電力量を取得する取得部と、
何れかの情報処理装置からの前記問合わせがあった場合に、前記問合わせによって通知された前記制御情報が示す増加電力量、前記全消費電力量、及び前記上限値を用いて、前記問合わせを行った情報処理装置における前記設定変更の可否を判定する判定部と、
前記判定部による判定結果を前記問合わせへの応答として、前記問合わせを行った情報処理装置に通知する通知部と、を有する、
ことを特徴とする情報処理システム。
【請求項２】
前記問合わせ部は、前記冷却装置を駆動するうえでの設定内容と増加電力量との対応関係を示す情報に基づいて、前記現設定内容を変更することで増大する前記増加電力量を求め、
前記判定部は、前記全消費電力量及び前記増加電力量の和と、前記上限値との差分に基づいて、前記設定変更の可否を判定する、
ことを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記複数台の情報処理装置は、前記検出部が検出した状態を基に、演算処理装置の消費電力を抑制する消費電力制御部、を有し、
前記冷却装置の消費電力を増大させる前記現設定内容から前記設定内容への設定変更が行われなかった場合に、前記消費電力制御部による前記演算処理装置の消費電力の抑制を可能にさせる、
ことを特徴とする請求項１又は２記載の情報処理システム。
【請求項４】
複数台の情報処理装置と、各情報処理装置がそれぞれ制御する冷却装置を含む管理対象群全体の消費電力の上限値を記憶した記憶部と、
前記管理対象群全体の消費電力量である全消費電力量を取得する取得部と、
何れかの情報処理装置が前記冷却装置を駆動するうえで決定した設定内容が、現在の設定内容である現設定内容より前記冷却装置の消費電力を増大させる設定内容であり、前記設定内容を決定した情報処理装置からの、前記消費電力の増大分を少なくとも含む増加電力量を示す制御情報と、前記現設定内容から前記設定内容への設定変更の可否の問合わせとを受信した場合に、前記問合わせによって通知された前記制御情報が示す増加電力量、前記全消費電力量、及び前記上限値を用いて、前記問合わせを行った情報処理装置における前記設定変更の可否を判定する判定部と、
前記判定部による判定結果を前記問合わせへの応答として、前記問合わせを行った情報処理装置に通知する通知部と、
を有することを特徴とする制御装置。
【請求項５】
前記問合わせを行った情報処理装置は、前記冷却装置を駆動するうえでの設定内容と増加電力量との対応関係を示す情報に基づいて、前記現設定内容を変更することで増大する前記増加電力量を求め、
前記判定部は、前記全消費電力量及び前記増加電力量の和と、前記上限値との差分に基づいて、前記設定変更の可否を判定する、
ことを特徴とする請求項４記載の制御装置。
【請求項６】
複数台の情報処理装置と、各情報処理装置がそれぞれ制御する冷却装置を含む管理対象群全体の消費電力を制御する制御装置として用いられるコンピュータに、
前記管理対象群全体の消費電力量である全消費電力量を取得し、
何れかの情報処理装置が前記冷却装置を駆動するうえで決定した設定内容が、現在の設定内容である現設定内容より前記冷却装置の消費電力を増大させる設定内容であり、前記設定内容を決定した情報処理装置からの、前記消費電力の増大分を少なくとも含む増加電力量を示す制御情報と、前記現設定内容から前記設定内容への設定変更の可否の問合わせとを受信した場合に、前記問合わせによって通知された前記制御情報が示す増加電力量、前記全消費電力量、及び前記管理対象群全体の消費電力の上限値として設定された最大電力量を用いて、前記問合わせを行った情報処理装置における前記設定変更の可否を判定し、
前記設定変更の可否の判定結果を前記問合わせへの応答として、前記問合わせを行った情報処理装置に通知する、
処理を実行させるプログラム。
【請求項７】
前記問合わせを行った情報処理装置は、前記冷却装置を駆動するうえでの設定内容と増加電力量との対応関係を示す情報に基づいて、前記現設定内容を変更することで増大する前記増加電力量を求め、
前記コンピュータは、前記全消費電力量及び前記増加電力量の和と、前記上限値との差分に基づいて、前記設定変更の可否を判定する、
ことを特徴とする請求項６記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データセンタ等の施設にサーバ等として設置される情報処理装置群全体の消費電力を管理するための技術に関する。
【背景技術】
【０００２】
データセンタ等の施設には、多数の情報処理装置がサーバとして設置される。情報処理装置の消費電力は、演算処理装置（例えばＣＰＵ（Central Processing Unit））、及びメモリ（メモリモジュール）の数の増加等に伴い、大きいものとなっている。そのため、近年、施設全体の消費電力を抑制する省電力化へのニーズが大きくなっている。以降、便宜的に、情報処理装置は「サーバ」、演算処理装置は「ＣＰＵ」とそれぞれ表記する。施設は「データセンタ」と表記する。【０００３】
現在、ＣＰＵの大部分に省電力機能が搭載されている。ＣＰＵに印加される電源電圧、及び／或いは、ＣＰＵが用いるクロックの周波数を低下させることが可能なＤＶＦＳ機能は、その省電力機能である。電源電圧、及びクロック周波数のうちの少なくとも一つを低下させる省電力モードに移行させることにより、ＣＰＵの消費電力はより抑えることができる。【０００４】
高性能化に伴い、ＣＰＵによる消費電力がサーバ全体で占める割合は大きくなっている。現在では、そのことに着目し、ＤＶＦＳ機能を用いてサーバ全体の消費電力を制限するパワーキャッピングが行われている。そのパワーキャッピングでは、例えばサーバ全体の消費電力量を監視し、監視する消費電力量が設定上限値を超えた場合に、ＤＶＦＳ機能によりＣＰＵを消費電力モードに移行させ、サーバ全体の消費電力を制限するようになっている。【０００５】
このパワーキャッピングをサーバ、或いはサーバグループ（例えば同じラックに収納された複数台のサーバ）に用いることにより、サーバ単体、或いはサーバグループ全体の消費電力量を想定範囲内に抑えることができる。また、各サーバ、或いは各サーバグループの消費電力量の制御を通して、データセンタに設置されたサーバ全体の消費電力量を想定範囲内に抑えることができる。パワーキャッピングは、各サーバ、或いは各サーバグループの利用状況（消費電力量）の変化を予想し、その予想によるスケジューリングに沿ってＤＶＦＳ機能を有効にさせる形でも用いられている。【０００６】
パワーキャッピングを用いた消費電力の制限（抑制）は、サーバをグループ化していたとしても、サーバ毎に設定を行わなければならない。そのため、データセンタのような非常に多くのサーバが設置された環境では、設定作業に大きな労力、及び長い時間が必要となる。【０００７】
データセンタは、通常、データセンタ全体を冷却するための冷却設備（多くの場合、空調設備である）を備えている。サーバ、ネットワークスイッチ、及びストレージ等の機器（以降「ＩＴ（Information Technology）機器」と表記）全体が消費可能な電力の上限値は、データセンタ全体で消費可能な電力の上限値から冷却設備等による消費分を除いた値となる。以降、ＩＴ機器全体で消費可能な電力の上限値は「機器用上限値」、データセンタ全体で消費可能な電力の上限値は「全体上限値」、ＩＴ機器以外で消費可能な電力の上限値は「設備用上限値」とそれぞれ表記する。これらの上限値の間には、全体上限値＝機器用上限値＋設備用上限値、の関係が成立する。【０００８】
データセンタでは、環境外部の変化、例えば外部の気温の変化に伴い、冷却設備（空調設備）に求められる冷却能力が変化する。求められる冷却能力の変化は、機器用上限値を変更する理由となる。【０００９】
ＩＴ機器において、ストレージ、及びネットワークスイッチ等は、サーバとは異なり、消費電力量の変動は小さい。また、ストレージ、及びネットワークスイッチ等は、消費電力を適切に抑制するのが困難である。そのため、機器用上限値の変更に伴い、各サーバの消費可能とする電力量を変更する必要性が生じる。【００１０】
また、データセンタでは、環境内部の変化、例えばサーバの増設、及びサーバの入れ替え等が高頻度に発生するのが普通である。そのような環境内部の変化は、ＩＴ機器全体の最大の消費電力量を変化させると共に、冷却設備に求められる冷却能力を変化させる可能性が高い。このため、内部環境の変化も、各サーバ（各サーバグループ）の消費可能とする電力量を変更する契機となる。【００１１】
このようなことから、データセンタのような多くのサーバが設置される環境では、パワーキャッピングのための設定の変更が高頻度で発生するのが普通である。各サーバ（各サーバグループ）の消費可能な電力量が変化することから、設定変更には、スケジューリングを用いるか否かに係わらず、サーバ単位の作業が必要である。そのため、設定変更には、多大な労力、及び長い時間が必要となるのが普通である。しかし、環境内外の変化には、迅速に対応する必要がある。そのため、サーバ群全体の消費電力を制限する設定は、より容易に行えるようにするのが望ましいと考えられる。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００９−４８６０７号公報
【特許文献２】特開２０１２−１９８７３６号公報
【特許文献３】特開２０１１−３９８８９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
１側面では、本発明は、サーバ（情報処理装置）が多く設置された環境において、サーバ群全体の消費電力をより容易な設定により管理するための技術を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明を適用した１システムは、それぞれが冷却装置を１台以上、制御する複数台の情報処理装置と、各冷却装置、及び複数台の情報処理装置を含む管理対象群全体の消費電力を管理する制御装置とを備える。複数台の情報処理装置は、自情報処理装置の状態を検出する検出部と、検出部が検出した状態を基に、冷却装置を駆動するうえでの設定内容を決定する決定部と、決定部が決定した設定内容が現在の設定内容である現設定内容より冷却装置の消費電力を増大させる場合に、消費電力の増大分を少なくとも含む増加電力量を表す制御情報を制御装置に送信して、現設定内容から設定内容への設定変更の可否を問合わせる問合わせ部と、問合わせ部による問合わせへの制御装置の応答に従って、現設定内容から設定内容への設定変更を行う設定変更部と、を有する。制御装置は、管理対象群全体の消費電力の上限値を記憶した記憶部と、管理対象群全体の消費電力量である全消費電力量を取得する取得部と、何れかの情報処理装置から問合わせがあった場合に、問合わせによって受信する制御情報が表す増加電力量、全消費電力量、及び上限値を用いて、問合わせを行った情報処理装置での設定変更の可否を判定する判定部と、判定部による判定結果を問合わせへの応答として、問合わせを行った情報処理装置に通知する通知部と、を有する。
【発明の効果】
【００１５】
本発明を適用した１システムでは、情報処理装置が多く設置された環境において、情報処理装置群全体の消費電力をより容易な設定により管理することができる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態による情報処理システムの構成例を説明する図である。
【図２】サーバに搭載されたＳＰの構成例、及びそのＳＰと接続された構成要素の一部を表す図である。
【図３】本実施形態による制御装置である制御サーバとしてとして使用可能な情報処理装置の構成例を表す図である。
【図４】制御サーバ、及び各サーバに搭載されたＳＰの機能構成例を説明する図である。
【図５】監視対象リストの構成例を説明する図である。
【図６】ファン回転数設定テーブルの構成例を説明する図である。
【図７】温度閾値テーブルの構成例を説明する図である。
【図８】温度上昇時におけるファン回転数制御処理のフローチャートである。
【図９】消費電力制御処理のフローチャートである。
【図１０】温度下降時におけるファン回転数制御処理のフローチャートである。
【図１１】スロットリング処理のフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図１は、本実施形態による情報処理システムの構成例を説明する図である。本実施形態による情報処理システムは、データセンタに構築されたシステムである。図１に表すように、その情報処理システムは、例えばＬＡＮ（Local Area Network）であるネットワーク１に対し、多数のサーバ２、制御サーバ３、及び例えばＰＣ（Personal Computer）である端末装置４を接続する形で構築されている。
【００１８】
各サーバ２は、ＳＰ（Service Processer）２ａ、１つ以上のシステムボード（ＳＢ）２ｂ、及び１つ以上のＩＯＵ（Input/Output Unit）２ｃを備えた情報処理装置である。本実施形態による情報処理装置は、サーバ２として実現されている。
【００１９】
ＳＰ２ａは、搭載されたサーバ２を管理する管理装置であり、ネットワーク１を介して制御サーバ３との通信を行う。ＳＢ２ｂは、１個以上のＣＰＵを搭載した処理モジュールである。ＩＯＵ２ｃは、ハードディスク装置等のＩＯ装置を１台以上、搭載した処理モジュールである。
【００２０】
図２は、サーバに搭載されたＳＰの構成例、及びそのＳＰと接続された構成要素の一部を表す図である。
【００２１】
ＳＰ２ａは、図２に表すように、ＭＰＵ（Micro-Processing Unit）２０１、メモリ２０２、フラッシュメモリ２０３、ＭＢ（Maintenance Bus）インターフェース２０４、ＬＡＮインターフェース２０５、Ｉ２Ｃ（Inter-Integrated Circuit）インターフェース２０６、及びＵＳＢ（Universal Serial Bus）インターフェース２０７を備えている。ＬＡＮインターフェース２０５は、ネットワーク２を介した制御サーバ３との通信を可能にさせるインターフェースである。
【００２２】
ＳＢ２ｂには、ＭＢＣ（Maintenance Bus Controller）２１１、複数のＣＰＵ２１２、複数のＤＤＣ（DC（Direct Current）-DC Converter）２１３、複数のセンサ２１４、及びＡＤＣ（Analog to Digital Converter）２１５が搭載されている。各ＣＰＵ２１２は、ＤＶＦＳ制御回路２１２ａを備えている。各センサ２１４は、サーバ２の状態を検出するためのものであり、例えばＣＰＵ２１２の温度を測定するための複数の温度センサ２１４（図４）、他の部分の温度を測定するための複数の温度センサ、電力を計測するための複数の電力センサ等が存在する。
【００２３】
ＤＶＦＳ制御回路２１２ａは、ＣＰＵ２１２に電力を供給するＤＤＣ２１３に設定するＶＩＤ（Voltage IDentifier）により、そのＤＤＣ２１３から供給される電力の電圧（電源電圧）を制御することができる。また、ＤＶＦＳ制御回路２１２ａは、ＣＰＵ２１２に搭載されたＰＬＬ（Phase Locked Loop）回路（不図示）の逓倍率の設定を通して、そのＣＰＵ２１２自身用のクロックの周波数を制御することができる。電源電圧、及びクロック周波数は共に、ＣＰＵ２１２の消費電力を増減させる。それにより、ＤＶＦＳ制御回路２１２ａは、ＣＰＵ２１２の消費電力の管理に用いられる。
【００２４】
ＭＢＣ３１１は、ＳＢ２ｂ内では、各ＣＰＵ３１２、各ＣＰＵ３１２に搭載されたＤＶＦＳ制御回路３１２ａ、各ＤＤＣ２１３、及びＡＤＣ２１５と接続されている。また、ＭＢＣ３１１は、ＳＰ２ａのＭＢインターフェース２０４と接続されている。それにより、ＳＰ２ａは、各センサ２１４からＡＤＣ２１５を介して出力されるセンス値を取得することができ、各ＤＶＦＳ制御回路２１２ａを用いて、各ＣＰＵ２１２の消費電力を抑制することができる。
【００２５】
ＳＰ２ａのＩ２Ｃインターフェース２０６には、複数台のＰＳＵ（Power Supply Unit）２２１、及びファン２２２を駆動する複数のファンコントローラ（ＦＡＮＣ）２２３が接続されている。それにより、ＳＰ２ａは、各ＰＳＵ２２１のオン／オフ、及び各ファンコントローラ２２３を介した各ファン２２２の回転数の制御を行うことができる。
【００２６】
ＳＰ２ａのフラッシュメモリ２０３には、ＭＰＵ２０１が実行するファームウェア２０２ａが格納されている。このファームウェア２０２ａ、つまりＭＰＵ２０１は、ＭＢインターフェース２０４を介した各センサ２１４による検出結果の収集を行い、収集した検出結果を用いてファンコントローラ２２３、各ＣＰＵ２１２のＤＶＦＳ制御回路３１２ａ、及び各ＰＳＵ３２１の制御を行う。
【００２７】
ファン２２２は、サーバ２の内部に発生する熱を除去するための冷却装置である。このファン２２２は、ＣＰＵ２１２と共に、サーバ２で大きな電力を消費する構成要素である。最近の大部分のサーバでは、ファンによって消費される電力量が全体の３０〜５０％の割合となっている。そのため、現在では、ファンの消費電力の抑制が行われている。
【００２８】
ファンの消費電力の抑制は、周囲温度、或いはＣＰＵ等の状態に応じて、ファンの回転数を制御することで行われている。データセンタでは、サーバ２の周囲温度（吸気温度）は一定温度に維持されるのが普通である。ＣＰＵ２１２の消費電力の変動は大きく、他よりも高温となりやすい。このことから、ファームウェア２０２ａを実行するＭＰＵ２０１は、各センサ２１４のなかで温度センサ２１４による検出結果、例えばＣＰＵ２１２の温度を監視し、ファン２２２の回転数を制御するのが普通となっている。本実施形態では、ファン２２２の回転数（回転速度）は、多段階で変更されるようになっている。
【００２９】
ファン２２２による消費電力は、回転数によって変化する。その消費電力は、回転数が大きくなるほど増大する。そのため、ファン２２２の回転数を大きくする設定変更は、サーバ２の消費電力を階段状に変化させる契機となる。本実施形態では、サーバ２の消費電力を階段状に変化させるファン２２２の回転数の設定変更に着目し、サーバ２群全体の消費電力の制御を行う。
【００３０】
なお、サーバの冷却には、流体として液体を用いる場合がある。液体を用いて冷却を行うサーバでは、その液体を取り込むためのポンプの回転数を制御して、必要な冷却能力を確保することができる。このことから、冷却装置はファン２２２とは異なる種類であっても良い。
【００３１】
サーバが搭載される専用ラックのなかには、冷却装置として空調機器を備えたものがある。専用ラックに備えられた空調設備による冷却能力は、搭載されたサーバ、或いは専用ラックに搭載された情報処理装置によって調整可能になっている。このことから、消費電力を制御する対象としてのサーバ２群全体のなかには、サーバ２に搭載されていない冷却装置が含まれる場合もある。つまり、何れかのサーバ２の状態に応じて個別に制御される冷却装置は、消費電力を制御する対象の一部となる。
【００３２】
ネットワーク１に接続された制御サーバ３は、サーバ２群全体の消費電力を制御するために設置されている。それにより、制御サーバ３は、本実施形態による制御装置となっている。
【００３３】
図３は、本実施形態による制御装置である制御サーバとしてとして使用可能な情報処理装置の構成例を表す図である。ここで、図３を参照し、制御サーバ３として使用可能な情報処理装置について具体的に説明する。
【００３４】
この情報処理装置は、図３に表すように、ＣＰＵ３１、ＦＷＨ（Firm-Ware Hub）３２、メモリ（メモリモジュール）３３、ＮＩＣ（Network Interface Card）３４、ハードディスク装置（ＨＤ）３５、ファン３６、コントローラ３７、及びＢＭＣ（Baseboard Management Controller）３８を備えている。この構成は１例であり、制御サーバ３として使用可能な情報処理装置の構成は、図３表すようなものに限定されない。
【００３５】
ＦＷＨ３２は、ファームウェアを格納したメモリである。このファームウェアは、ＣＰＵ３１によってメモリ３３に読み出され実行される。ハードディスク装置３５には、ＯＳ（Operating System）、及び各種アプリケーション・プログラムが格納されている。ＣＰＵ３１は、ファームウェアの起動が完了した後、コントローラ３７を介してハードディスク装置３５からＯＳ、更には必要なアプリケーション・プログラムを読み出して実行することができる。ＮＩＣ３４を介した通信は、ＯＳの起動によって可能となる。
【００３６】
ハードディスク装置３５に格納されているアプリケーション・プログラムのなかには、サーバ群２全体の消費電力を管理するためのアプリケーション・プログラム（以降「消費電力管理ソフトウェア」と表記）が含まれている。ＣＰＵ３１は、その消費電力管理ソフトウェアを実行して、サーバ２群全体の消費電力を制御する。
【００３７】
ＢＭＣ３８は、情報処理装置を管理するための専用の管理装置である。ＢＭＣ３８は、ＣＰＵ３１のオン／オフ、不図示のＰＳＵのオン／オフ、各構成要素に発生するエラーの監視、等を行う。
【００３８】
図４は、制御サーバ、及び各サーバに搭載されたＳＰの機能構成例を説明する図である。ここで図４を参照し、制御サーバ３、及び各サーバ２に搭載されたＳＰ２ａの各機能構成、並びに制御サーバ３、及びＳＰ２ａの動作について詳細に説明する。
【００３９】
各サーバ２のＳＰ２ａは、図４に表すように、通信部５０１、電力モニタ５０２、ＣＰＵ温度取得部５０３、ファン回転数制御部５０４、スロットリング部５０５、及び記憶部５０６を備えている。
【００４０】
制御サーバ３は、図４に表すように、通信部６０１、現電力収集部６０２、可否判断部６０４、及び記憶部６０４を備えている。
【００４１】
始めに、制御サーバ３について説明する。
上記記憶部６０４には、消費電力の制御対象とするサーバ２を表す監視対象リスト６０４ａ、及び消費電力上限値６０４ｂが格納されている。
【００４２】
監視対象リスト６０４ａには、図５に表すように、監視対象とするサーバ２毎に、そのサーバ名、及びそのサーバ２に搭載されたＳＰ２ａのＩＰ（Internet Protocol）アドレスの各データが格納されている。それにより、制御サーバ３は、監視対象リスト６０４ａを参照することにより、通信を行うべきサーバ２のＳＰ２ａとの通信を行うことができる。
【００４３】
消費電力上限値６０４ｂは、サーバ２群全体で消費可能な電力の上限値として設定されたデータである。制御サーバ３は、サーバ２群全体の消費電力が消費電力上限値６０４ｂ以下となるように、サーバ２群全体の消費電力を管理する。
【００４４】
端末装置４は、監視対象リスト６０４ａ、及び消費電力上限値６０４ｂの設定・更新に用いられる。
【００４５】
通信部６０１は、各サーバ２のＳＰ２ａとの通信に用いられる。現電力収集部６０２は、各サーバ２の現在の消費電力量をＳＰ２ａから収集するための機能である。
【００４６】
本実施形態では、ファン２２２の回転数を増大させるべき状況となったサーバ２は、ファン２２２の回転数を増大させる設定変更を行うことの可否を制御サーバ３に問合わせ、その問合わせへの応答結果に従い、設定変更を行うようになっている。可否判断部６０３は、その問合わせへの応答として送信すべきメッセージを作成する機能である。その問合わせは以降「可否問合わせ」と表記する。
【００４７】
可否判断部６０３は、何れかのサーバ２のＳＰ２ａから上記可否問合わせを通信部６０１が受信した場合、現電力収集部６０３に対し、各サーバ２の現在の消費電力量の収集を指示する。その指示により、現電力収集部６０３は、監視対象リスト６０４ａを参照し、各サーバ２のＳＰ２ａに現在の消費電力量の送信を要求する。現電力収集部６０３は、その要求によって各サーバ２のＳＰ２ａから送信される消費電力量を可否判断部６０３に渡す。
【００４８】
なお、各サーバ２の消費電力量の収集は、分電盤等の電力中継器から行うようにしても良い。消費電力量の収集方法は、特に限定されるものではない。
【００４９】
可否判断部６０３は、現電力収集部６０３から渡された各サーバ２の現在の消費電力量を累算して、サーバ２群全体の現在の消費電力量（以降「現消費電力量」と表記）を算出する。次に、可否判断部６０３は、算出した現消費電力量、及び消費電力上限値６０４ａを用いて、現在の電力の余裕分を表す電力量（以降「余裕電力量」と表記）を算出する。それにより、可否判断部６０３は、算出した余裕電力量が、可否問合わせを送信したサーバ２での設定変更に伴う消費電力の上昇分（以降「増加消費電力量」と表記）より大きい場合に、その設定変更を許可する。可否判断部６０３は、そのように設定変更の可否を判断し、その判断結果に応じた内容のメッセージを作成し、作成したメッセージを通信部６０１から送信させる。
【００５０】
各サーバ２のＳＰ２ａが有する通信部５０１は、制御サーバ３との通信に用いられる。電力モニタ５０２は、各ＰＳＵ２２１とのＩ２Ｃバスを介した通信により、各ＰＳＵ２２１から供給している電力量をデータとして収集する機能である。
【００５１】
ＣＰＵ温度取得部５０３は、各ＣＰＵ２１２の温度を測定する温度センサ２１４から出力されたセンス値、つまり温度センサ２１４によって検出された温度を取得する。ファン回転数制御部５０４は、ＣＰＵ温度取得部５０３が取得した各ＣＰＵ２１２の温度から、ファンコントローラ２２３を介してファン２２２の回転数を制御する。ファン２２２の回転数の制御のために、ファン回転数制御部５０４は、記憶部５０６に格納されているファン回転数設定テーブル５０６ａ、及び温度閾値テーブル５０６ｂを参照する。
【００５２】
図６は、ファン回転数設定テーブルの構成例を説明する図である。
上記のように、ファン２２２の回転数（回転レベル）は多段階で制御する。それにより、ファン２２２の回転数は、段階的に増減される。このファン回転数設定テーブル５０６ａは、ファン２２２の回転数を段階的に増大させる場合に、その回転数の増大に伴い、増加する消費電力量を特定可能にするために用意されたテーブルである。図６に表すように、ファン回転数設定テーブル５０６ａには、ファン回転レベル毎に、ファンコントローラ設定値（Ｈｅｘ）、及びファン回転レベル増加電力量（Ｗ）の各データが格納されている。
【００５３】
ファンコントローラ設定値は、ファンコントローラ２２３に設定すべき設定値を１６進数で表した値である。図６中に表記の「１Ａｈ」「３３ｈ」「４Ｃｈ」等は全て、１６進数の数値を表している。
【００５４】
ファン回転レベル増加電力量（Ｗ）は、一つ小さい回転レベルでの消費電力量を基準として、その基準とする消費電力量からの増加分を表すデータである。図６中に表記の「３５．６」「９８．８」「１４２．４」はそれぞれ、回転レベルを１から２に変更する、回転レベルを２から３に変更する、及び回転レベルを３から４に変更する各場合で増加する電力量を表している。以降、ファン回転レベル増加電力量は「増加電力量」と略記する。
【００５５】
本実施形態では、増加電力量は、サーバ２全体の増加電力量としている。それにより、増加電力量には、ファン２２２自体の消費電力の増加分、及び設定変更後のファン２２２によってＣＰＵ温度が回転数アップ温度閾値以下に抑えることが可能なまでのＣＰＵ２１２の消費電力の増加分を含む。ＣＰＵ２１２が実際に消費する電力は不明であることから、増加電力量は、確実に増大する電力量としても良い。
【００５６】
ファン２２２は複数、搭載される場合、各ファン２２２によって冷気が供給される範囲は異なるのが普通である。各ファン２２２で冷気の供給を想定するＣＰＵ２１２の数、そのファン２２２による冷却効率等によって、増加電力量は変化する。そのため、サーバ２によっては、複数のファン回転数設定テーブル５０６ａを用意する必要がある。しかし、ここでは、説明上、便宜的にファン回転数設定テーブル５０６ａは一つのみと想定する。つまり、全てのファン２２２は駆動され、且つ同じ回転レベルが設定されると想定する。
【００５７】
図７は、温度閾値テーブルの構成例を説明する図である。
この温度閾値テーブル５０６ｂは、ファン２２２の回転レベルを変更すべき状況、及びＣＰＵ２１２の消費電力を抑制するスロットリングを行うべき状況の判定のために用意されたテーブルである。この温度閾値テーブル５０６ｂには、図７に表すように、回転数アップ（ＵＰ）温度閾値（℃）、回転数ダウン（ＤＯＷＮ）温度閾値（℃）、許容温度上限閾値（℃）、及び許容温度下限閾値（℃）の各データが格納されている。
【００５８】
回転数アップ温度閾値は、ファン２２２の回転レベルを１段階、上げるべき状況、つまり冷却能力をより高くすべき状況を判定するためのデータである。図７に表記の「８０」は、ＣＰＵ２１２の温度（温度センサ２１４により検出された温度）が８０℃を超えた状況時に、回転レベルが１段階、上げられることを意味する。
【００５９】
回転数ダウン温度閾値は、ファン２２２の回転レベルを１段階、下げるべき状況、つまり冷却能力をより低くすべき状況を判定するためのデータである。図７に表記の「７２」は、ＣＰＵ２１２の温度が７２℃以下となった状況時に、回転レベルが１段階、下げられることを意味する。
【００６０】
許容温度上限閾値は、スロットリング機能を有効とすべき状況を判定するためのデータである。図７に表記の「９２」は、上昇傾向にあるＣＰＵ２１２の温度が９２℃を超えた状況時に、スロットリング機能が有効となることを意味する。以降、温度センサ２１４によって検出（測定）されたＣＰＵ２１２の温度は「ＣＰＵ温度」と表記する。
【００６１】
許容温度下限閾値は、スロットリング機能を無効とすべき状況を判定するためのデータである。図７に表記の「８２」は、下降傾向にあるＣＰＵ２１２の温度が９２℃を超えた状況時に、スロットリング機能が有効となることを意味する。
【００６２】
上記ファン回転数設定テーブル５０６ａ、及び温度閾値テーブル５０６ｂは、例えば工場でサーバ２に保存されるテーブルである。各テーブル５０６ａ、及び５０６ｂは、端末装置４を用いて更新することができる。
【００６３】
ファン回転数制御部５０４は、ＣＰＵ温度取得部５０３が取得したＣＰＵ温度を、温度閾値テーブル５０６ｂの回転数アップ温度閾値、及び回転数ダウン温度閾値とそれぞれ比較する。ファン回転数制御部５０４は、その比較の結果、ＣＰＵ温度が回転数アップ温度閾値を超えていることを確認した場合に、通信部５０１を介して、上記可否取り合わせを行い、回転レベルの設定変更の可否を確認する。ファン回転数制御部５０４は、その可否問合わせのためのメッセージに、現在より１段階、上の回転レベルの増加電力量を格納し、その増加電力量を制御サーバ３に通知する。
【００６４】
ファン回転数制御部５０４は、可否問合わせへの応答メッセージにより、設定変更の許可が通知された場合、回転レベルを１段階、上げる設定変更をファンコントローラ２２３に対して行う。設定変更が許可されなかった場合、ファン回転数制御部５０４は、ファン２２２の回転レベルの設定を変更しない。
【００６５】
ファン回転数制御部５０４は、ＣＰＵ温度が回転数ダウン温度閾値以下であることを確認した場合、制御サーバ３への問合わせを行うことなく、ファン２２２の回転レベルを１段階、下げる。これは、ファン２２２の回転レベルを１段階、下げる設定変更は、サーバ２の消費電力量を低下させるからである。つまり、その設定変更は、サーバ２群全体の消費電力量を消費電力上限値６０４ｂ以上とさせないからである。
【００６６】
ファン２２２の回転レベルを上げる設定変更が行われない場合、８０℃を超えたＣＰＵ温度は更に上昇する可能性がある。スロットリング部５０５は、ファン２２２により十分な冷却が行えない状況に対応するために用意されている。
【００６７】
スロットリング部５０５は、ＣＰＵ温度取得部５０３が取得したＣＰＵ温度を監視し、そのＣＰＵ温度を温度閾値テーブル５０６ｂの許容温度上限閾値、及び許容温度下限閾値と比較する。それにより、ＣＰＵ温度が上昇傾向にあり、且つそのＣＰＵ温度が許容温度上限閾値を超えた場合に、スロットリング部５０５は、ＤＶＦＳ指示部５１０を介して、各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａの設定を変更する。その設定変更を通して、スロットリング部５０５は、各ＣＰＵ２１２の消費電力を抑制させ、ＣＰＵ温度を低下させる。
【００６８】
一方、ＣＰＵ温度が下降傾向にあり、且つそのＣＰＵ温度が許容温度下限閾値以下となった場合に、スロットリング部５０５は、ＤＶＦＳ指示部５１０を介して、各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａの設定を通常時の設定に戻す。その設定変更を通して、スロットリング部５０５は、各ＣＰＵ２１２の性能を通常の状態に復帰させる。
【００６９】
本実施形態では、ＳＰ２ａがスロットリング部５０５を備えているが、このスロットリング部５０５は、ＳＰ２ａの外部に設けても良い。例えばＣＰＵ２１２上にスロットリング部５０５を実現させても良い。
【００７０】
ＳＰ２ａが図２に表す構成であった場合、通信部５０１は、ＬＡＮインターフェース２０５である。ファン回転数設定テーブル５０６ａ、及び温度閾値テーブル５０６ｂは、例えばフラッシュメモリ２０３に保存され、メモリ２０２に読み出されてＭＰＵ２０１に参照される。このことから、記憶部５０６は、フラッシュメモリ２０３、及びメモリ２０２によって実現される。
【００７１】
各ＰＳＵ２２１、及び各ファンコントローラ２２３は、Ｉ２Ｃバスを介してＩ２Ｃインターフェース２０６と接続されている。複数の温度センサ２１４を含む各センサ２１４による検出結果は、ＭＢＣ２１１を介してＭＢコントローラ２０９に入力される。各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａへの指示は、ＭＢインターフェース２０９を介して行われる。ＳＰ２ａでの処理自体は、フラッシュメモリ２０３からメモリ２０２に読み出されたファームウェア２０２ａをＭＰＵ２０１が実行することで行われる。
【００７２】
このようなことから、電力モニタ５０２、及びファン回転数制御部５０４は、ＭＰＵ２０１、メモリ２０２、フラッシュメモリ２０３、及びＩ２Ｃインターフェース２０６によって実現される。ＣＰＵ温度取得部５０３、及びスロットリング部５０５は、ＭＰＵ２０１、メモリ２０２、フラッシュメモリ２０３、及びＭＢインターフェース２０４によって実現される。
【００７３】
ＤＶＦＳ指示部５１０は、スロットリング部５０５の制御により、各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａに指示を行う。このことから、ＤＶＦＳ指示部５１０は、ＭＢＣ２１１である。
【００７４】
上記のように、各サーバ２は、ファン２２２の回転レベルを上げる設定変更を行うべき状況となった場合、その設定変更の可否を制御サーバ３に問合わせ、その設定変更が制御サーバ３から許可されない限り、その設定変更を行わない。そのため、サーバ２群全体に割り当てられた電力に余裕がない場合、ファン２２２による消費電力の増大は回避される。
【００７５】
ＣＰＵ２１２の消費電力は、増加電力量で想定する増加分以上、増加することは有り得る。しかし、ＣＰＵ２１２の想定より大きい消費電力はＣＰＵ温度を上昇させ、スロットリングによる消費電力の抑制が行われる。そのため、ＣＰＵ２１２による消費電力の増大は一時的にのみ発生することになる。ファン２２２の回転レベルの設定変更を行わないことは、ＣＰＵ２１２の消費電力を必要に応じて抑制することに相当する。これらの結果、サーバ２全体では、消費電力は想定の範囲内に制御され、サーバ２群全体では、消費電力量は消費電力上限値６０４ｂ以下に制御（制限）される。
【００７６】
このようなサーバ２群全体の消費電力量の制御は、消費電力上限値６０４ｂの設定により行われる。そのため、データセンタにおけるサーバ２群全体への電力量の割り当ての変更、及び１台のサーバ２当たりの消費可能な電力量の変更、等にも迅速に対応することができる。電力に余裕がある場合、各サーバ２は必要な電力を消費できることから、データセンタ全体の処理能力も最大にすることができる。
【００７７】
以降は、図８〜図１１に表す各フローチャートを参照し、各サーバ２のＳＰ２ａ、及び制御サーバ３の動作について詳細に説明する。
【００７８】
図８は、温度上昇時におけるファン回転数制御処理のフローチャートである。この温度上昇時におけるファン回転数制御処理は、各サーバ２に搭載されたＳＰ２ａのＭＰＵ２０１が、ＣＰＵ温度が上昇している状況下でファン２２２の回転数の制御のために実行する一連の処理であり、例えば一定時間が経過する度に実行される。このファン回転数制御処理自体は、メモリ２０２に読み出されたファームウェア２０２ａをＭＰＵ２０１が実行することで実現される。始めに図８を参照し、温度上昇時におけるＳＰ２ａのＭＰＵ２０１の動作について詳細に説明する。
【００７９】
先ず、ＭＰＵ２０１は、ＭＣインターフェース２０４を介して、各温度センサ２１４を含む各センサ２１４のセンス値を取得する（ＳＰ１）。次にＭＰＵ２０１は、各温度センサ２１４から取得されたＣＰＵ温度のうちの何れかが回転数アップ温度閾値を超えているか否か判定する（ＳＰ２）。何れかのＣＰＵ温度が回転数アップ温度閾値を超えていた場合、ＳＰ２の判定はＹｅｓとなってＳＰ３に移行する。全てのＣＰＵ温度が回転数アップ温度閾値を超えていない場合、ＳＰ２の判定はＮｏとなり、ここで温度上昇時におけるファン回転数制御処理が終了する。
【００８０】
ＳＰ３では、ＭＰＵ２０１は、現在のファン２２２の回転数レベルをメモリ２０２から取得する。次に、ＭＰＵ２０１は、ファン回転数設定テーブル５０６ａを参照し、取得した回転数レベルから１段階、上の回転数レベルでの設定値を取得する（ＳＰ４）。続けてＭＰＵ２０１は、ファン回転数設定テーブル５０６ａを参照し、取得した回転数レベルから１段階、上の回転数レベルでの増加電力量を取得する（ＳＰ５）。
【００８１】
増加電力量を取得したＭＰＵ２０１は、制御サーバ３に可否問合わせのためのメッセージを作成し、作成したメッセージをＬＡＮインターフェース２０５に送信させる（ＳＰ６）。取得された増加電力量は、そのメッセージ中に格納される。
【００８２】
メッセージを送信させたＭＰＵ２０１は、制御サーバ３からの応答メッセージの受信を待って、受信した応答メッセージが、ファン２２２の回転レベルを上げる設定変更を許可する旨を表しているか否か判定する（ＳＰ７）。
【００８３】
制御サーバ３がその設定変更を許可した場合、ＳＰ７の判定はｙｅｓとなり、ＭＰＵ２０１はＳＰ４で取得した設定値を各ファンコントローラ２２３に設定し（ＳＰ８）、温度上昇時におけるファン回転数制御処理が終了する。制御サーバ３がその設定変更を許可しなかった場合、ＳＰ７の判定はＮｏとなり、ここで温度上昇時におけるファン回転数制御処理が終了する。
【００８４】
このように、ＣＰＵ温度が回転数アップ温度閾値を超えた場合、ＳＰ２ａのＭＰＵ２０１は、ファン２２２の回転レベルを１段階、上げる設定変更を、制御サーバ３の指示に従って行う。そのため、制御サーバ３は、消費可能な電力に余裕のない状況であった場合、サーバ２におけるファン２２２の回転レベルの設計変更に伴う消費電力の増大を回避させることができる。
【００８５】
図９は、消費電力制御処理のフローチャートである。この消費電力制御処理は、サーバ２からの問合わせのメッセージの受信を契機に、サーバ２群全体の消費電力を管理するために制御サーバ３が実行する処理であり、ＣＰＵ３１が、消費電力管理ソフトウェアを実行することで実現される。次に、図９を参照し、制御サーバ３の動作について詳細に説明する。
【００８６】
先ず、ＣＰＵ３１は、受信したメッセージが可否問合わせのためのものか否か、つまりファン２２２の回転レベルを上げる設定変更の可否を問合わせるものか否か判定する（ＳＣ１）。受信したメッセージが可否問合わせのためのものであった場合、ＳＣ１の判定はｙｅｓとなってＳＣ３に移行する。受信したメッセージが可否問合わせ以外のためのものであった場合、ＳＣ１の判定はＮｏとなってＳＣ２に移行する。
【００８７】
ＳＣ２では、ＣＰＵ３１は、受信したメッセージに対応するための処理を実行する。その処理の実行後、消費電力制御処理が終了する。
【００８８】
ＳＣ３では、ＣＰＵ３１は、監視対象リスト６０４ａに登録されている各サーバ２のＳＰ２ａに対し、現在の消費電力量（図９中「現利用電力量」と表記）の送信を要求して、各サーバ２の現利用電力量を取得する。各サーバ２の現利用電力量を取得した後、ＣＰＵ３１は、例えば取得した現利用電力量を累算して、サーバ２群全体の消費電力量（図９中「現消費電力量」と表記）を算出する（ＳＣ４）。その現消費電力量の算出後、ＣＰＵ３１は、現時点での電力の余裕分である余裕電力量を計算する（ＳＣ５）。その余裕電力量の計算は、例えば消費電力上限値６０４ｂから現消費電力量を減算する（＝消費電力上限値６０４ｂ−現消費電力量）ことで行う。
【００８９】
次に、ＣＰＵ３１は、可否問合わせのメッセージを送信したサーバ２でファン２２２の回転レベルを上げる設定変更を行った場合を想定し、その場合の電力の余裕分であるアップ後の余裕電力量を計算する（ＳＣ６）。アップ後の余裕電力量の計算は、例えばＳＣ５で計算した余裕電力量から、可否問合わせのメッセージに格納されている増加電力量を減算する（＝余裕電力量−増加電力量）ことで行う。
【００９０】
次に、ＣＰＵ３１は、アップ後の余裕電力量の符号が正か否か判定する（ＳＣ７）。可否問合わせのメッセージに格納されている増加電力量は、上記のように、ファン２２２の回転レベルを上げることによって生じるサーバ２の消費電力の増加分である。そのため、アップ後の余裕電力量の符号が正とは、ファン２２２の回転レベルを上げさせても良いだけの電力の余裕があることを意味する。このことから、ファン２２２の回転レベルを上げても良いだけの電力の余裕がある場合、ＳＣ７の判定はＹｅｓとなってＳＣ８に移行する。ファン２２２の回転レベルを上げても良いだけの電力の余裕がない場合、ＳＣ７の判定はＮｏとなってＳＣ９に移行する。
【００９１】
ＳＣ８では、ＣＰＵ３１は、ファン２２２の回転レベルを上げる設定変更を許可する旨を通知するための応答メッセージ（図９中「可応答データ」と表記）を作成し、作成した応答メッセージをＮＩＣ３４に送信させる。一方、ＳＣ９では、ＣＰＵ３１は、ファン２２２の回転レベルを上げる設定変更を許可しない旨を通知するための応答メッセージ（図９中「否応答データ」と表記）を作成し、作成した応答メッセージをＮＩＣ３４に送信させる。そのようにして、何れかの応答メッセージを送信させた後、消費電力制御処理が終了する。
【００９２】
このようにして、本実施形態では、各サーバ２のファン２２２の回転レベルを上げる設定変更は、その設定変更を行っても、サーバ２群全体の消費電力量が消費電力上限値６０４ｂを超えないことを条件に、行わせている。なお、ＳＣ４での現消費電力量、ＳＣ５での余裕電力量、及びＳＣ６でのアップ後の余裕電力量の計算方法は、特に限定されない。ファン２２２の回転レベルの設定変更後のサーバ２群全体の消費電力量が消費電力上限値６０４ｂを確実に超えないようにするうえでは、或る程度のマージンを設けるのが望ましい。例えば現消費電力量は、ＳＣ４で算出される現消費電力量に１を超える値の係数を乗算した結果としても良い。
【００９３】
図１０は、温度下降時におけるファン回転数制御処理のフローチャートである。この温度下降時におけるファン回転数制御処理は、各サーバ２に搭載されたＳＰ２ａのＭＰＵ２０１が、ＣＰＵ温度が下降している状況下でファン２２２の回転数の制御のために実行する一連の処理である。この温度下降時におけるファン回転数制御処理は、上記温度上昇時におけるファン回転数制御処理と同様に、例えば一定時間が経過する度に実行され、メモリ２０２に読み出されたファームウェア２０２ａをＭＰＵ２０１が実行することで実現される。次に図１０を参照し、温度下降時におけるＳＰ２ａのＭＰＵ２０１の動作について詳細に説明する。
【００９４】
先ず、ＭＰＵ２０１は、ＭＣインターフェース２０４を介して、各温度センサ２１４を含む各センサ２１４のセンス値を取得する（ＳＰ２１）。次にＭＰＵ２０１は、各温度センサ２１４から取得されたＣＰＵ温度の全てが回転数ダウン温度閾値以下となっているか否か判定する（ＳＰ２２）。何れかのＣＰＵ温度が回転数ダウン温度閾値以上となっている場合、ＳＰ２２の判定はＮｏとなり、ここで温度下降時におけるファン回転数制御処理が終了する。全てのＣＰＵ温度が回転数ダウン温度閾値以下となっている場合、ＳＰ２２の判定はＹｅｓとなってＳＰ２３に移行する。
【００９５】
ＳＰ２３では、ＭＰＵ２０１は、現在のファン２２２の回転数レベルをメモリ２０２から取得する。次に、ＭＰＵ２０１は、ファン回転数設定テーブル５０６ａを参照し、取得した回転数レベルから１段階、下の回転数レベルでの設定値を取得する（ＳＰ２４）。続けてＭＰＵ２０１は、ＳＰ２４で取得した設定値を各ファンコントローラ２２３に設定する（ＳＰ２５）。その後、温度下降時におけるファン回転数制御処理が終了する。
【００９６】
このように、全てのＣＰＵ温度が回転数ダウン温度閾値以下となった場合、ＳＰ２ａのＭＰＵ２０１は、ファン２２２の回転レベルを１段階、下げる設定変更を、制御サーバ３に通知することなく実行する。制御サーバ３に設定変更を通知しないのは、その設定変更によりサーバ２群全体の消費電力量は低減し、且つ可否問合わせのメッセージを受信した制御サーバ３は、その時点での消費電力量（現利用電力量）を各サーバ２から収集するからである。必要に応じて各サーバ２の現利用電力量を収集する以上、制御サーバ３は、ファン２２２の回転レベルを１段階、下げる設定変更を何れかのサーバ２が行った時点でのサーバ２群全体の消費電力量を認識する必要はない。
【００９７】
図１１は、スロットリング処理のフローチャートである。このスロットリング処理は、ＣＰＵ温度に応じて、各ＣＰＵ２１２の消費電力を抑制するための処理である。このスロットリング処理は、上記温度上昇時におけるファン回転数制御処理等と同様に、例えば一定時間が経過する度に実行され、メモリ２０２に読み出されたファームウェア２０２ａをＭＰＵ２０１が実行することで実現される。最後に図１１を参照し、スロットリング処理について詳細に説明する。
【００９８】
先ず、ＭＰＵ２０１は、ＭＣインターフェース２０４を介して、各温度センサ２１４を含む各センサ２１４のセンス値を取得する（ＳＰ３１）。次にＭＰＵ２０１は、各温度センサ２１４から取得されたＣＰＵ温度が上昇傾向であり、且つ何れかのＣＰＵ温度が許容温度上限閾値を超えたか否か判定する（ＳＰ３２）。ＣＰＵ温度が全体として上昇傾向であり、且つ何れかのＣＰＵ温度が許容温度上限閾値を超えた場合、ＳＰ３２の判定はＹｅｓとなってＳＰ３３に移行する。ＣＰＵ温度が全体として上昇傾向でない、或いは全てのＣＰＵ温度が許容温度上限閾値以下であった場合、ＳＰ３３の判定はＮｏとなってＳＰ３５に移行する。
【００９９】
ＳＰ３３では、ＭＰＵ２０１は、スロットリング機能（図１１中「CPU throttling機能」と表記）を発動する。次に、ＭＰＵ２０１は、ＭＢインターフェース２０４を介して、各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａに対し、上記ＶＩＤ、及び逓倍率を設定し、クロック周波数（動作周波数）、及び電源電圧を低下させる（ＳＰ３４）。その後、このスロットリング処理が終了する。
【０１００】
一方、ＳＰ３５では、ＭＰＵ２０１は、各温度センサ２１４から取得されたＣＰＵ温度が下降傾向であり、且つ全てのＣＰＵ温度が許容温度下限閾値以下であるか否か判定する。ＣＰＵ温度が全体として下降傾向であり、且つ全てのＣＰＵ温度が許容温度下限閾値以下となっている場合、ＳＰ３５の判定はＹｅｓとなってＳＰ３６に移行する。ＣＰＵ温度が全体として下降傾向でない、例えばＣＰＵ温度が全体的にランダムに変動している、或いは何れかのＣＰＵ温度が許容温度下限閾値以上であった場合、ＳＰ３５の判定はＮｏとなり、ここでこのスロットリング処理が終了する。
【０１０１】
ＳＰ３６では、ＭＰＵ２０１は、スロットリング機能の発動を解除する。次に、ＭＰＵ２０１は、ＭＢインターフェース２０４を介して、各ＣＰＵ２１２のＤＶＦＳ制御回路２１２ａに対し、通常時のＶＩＤ、及び逓倍率を設定し、クロック周波数（動作周波数）、及び電源電圧を通常の状態に復帰させる（ＳＰ３７）。その後、このスロットリング処理が終了する。
【０１０２】
なお、本実施形態では、可否問合わせでサーバ２に増加電力量を制御サーバ３に送信させているが、その増加電力量の代わりに、その増加電力量を特定するための制御情報を制御サーバ３に送信させるようにしても良い。
【０１０３】
また、各サーバ２は、ファン２２２の回転レベルを上げる設定変更を行うべき状況時に、可否問合わせを行っているが、その可否問合わせは、別の状況時にも行うようにしても良い。その設定変更を行えないサーバ２の多くは、スロットリングを行うと考えられることから、スロットリングを行っている状況時にも、可否問合わせを行うようにしても良い。また、制御サーバ２に、可否問合わせで設定変更を許可しなかったサーバ２に対し、その後のサーバ２群全体の消費電力量を収集した際に比較的に大きい余裕があることを条件に、設定変更を許可する旨を通知するようにしても良い。サーバ２、或いはサーバグループに優先順位を設け、制御サーバ３からの設定変更を許可する通知を優先順位に従って行わせるようにしても良い。
【図１】
0005983888.tif 000002
【図２】
0005983888.tif 000003
【図３】
0005983888.tif 000004
【図４】
0005983888.tif 000005
【図５】
0005983888.tif 000006
【図６】
0005983888.tif 000007
【図７】
0005983888.tif 000008
【図８】
0005983888.tif 000009
【図９】
0005983888.tif 000010
【図１０】
0005983888.tif 000011
【図１１】
0005983888.tif 000012