(57)【特許請求の範囲】
【請求項１】
対象機器の消費電力値を取得する消費電力値取得部と、
前記消費電力値取得部の取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出部と、
消費電力抑制の要否を判定する要否判定部と、
前記要否判定部が消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択部と、
を具備することを特徴とする消費電力制御装置。
【請求項２】
消費電力制御引継予約を受信する予約受信部と、
前記消費電力制御引継予約の送信先の機器を決定する引継先決定部と、
前記引継先決定部の決定した機器に前記消費電力制御引継予約を送信する予約送信部と、
を具備し、
前記引継先決定部は、前記予約受信部が前記消費電力制御引継予約を受信した後に、前記消費電力制御引継予約の送信先の機器を決定し、
前記要否判定部は、前記引継先決定部が前記消費電力制御引継予約の送信先の機器を決定すると、前記消費電力抑制の要否の判定を行う、
ことを特徴とする請求項１に記載の消費電力制御装置。
【請求項３】
前記予約受信部が前記消費電力制御引継予約を受信してから所定時間経過したことを検出する待ち時間測定部と、
前記消費電力制御引継予約の送信元の消費電力制御装置の状態を判定する現行装置状態判定部と、
を具備し、
前記要否判定部は、前記予約受信部が前記消費電力制御引継予約を受信した後に、前記待ち時間判定部が、前記所定時間経過したことを検出するか、または、前記現行装置状態判定部が、前記消費電力制御引継予約の送信元の消費電力制御装置が対象機器の消費電力を抑制させる制御を行えないと判定すると、前記消費電力抑制の要否の判定を開始する、
ことを特徴とする請求項２に記載の消費電力制御装置。
【請求項４】
前記機器選択部の選択した機器について、当該機器の消費電力値から前記消費電力平均値を減算した差分を算出し、当該差分に基づいて、当該機器に対する消費電力抑制のランクを決定する抑制ランク決定部、を具備することを特徴とする請求項１から３のいずれか一項に記載の消費電力制御装置。
【請求項５】
消費電力制御装置の消費電力制御方法であって、
対象機器の消費電力値を取得する消費電力値取得ステップと、
前記消費電力値取得ステップにて取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出ステップと、
消費電力抑制の要否を判定する要否判定ステップと、
前記要否判定ステップにて消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択ステップと、
を具備することを特徴とする消費電力制御方法。
【請求項６】
消費電力制御装置としてのコンピュータに、
対象機器の消費電力値を取得する消費電力値取得ステップと、
前記消費電力値取得ステップにて取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出ステップと、
消費電力抑制の要否を判定する要否判定ステップと、
前記要否判定ステップにて消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の制御対象機器の消費電力を制御する消費電力制御装置、当該消費電力制御装置の行う消費電力制御方法およびプログラムに関する。
【背景技術】
【０００２】
複数のコンピュータを備えるデータセンタなど、複数の機器が存在する環境において、これらの機器の消費電力の合計が、供給可能な電力以下に収まるよう制御するための幾つかの方法がある。
例えば、機器毎に消費電力上限値を設定する方法において、これら消費電力上限値の合計が、供給可能な電力以下となるように、各消費電力上限値を設定すれば、これらの機器の消費電力の合計を、供給可能な電力以下に収めることができる。
【０００３】
また、特許文献１には、電力管理装置が、各コンピュータシステムへの電力供給に関するプライオリティを示すプライオリティ情報に基づいて、各コンピュータシステムの消費電力量の合計値が供給可能総電力量を超えないよう制御する方法が示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１１７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
機器毎に消費電力上限値を設定する方法において、これら消費電力上限値の合計が、供給可能な電力以下となるように、各消費電力上限値を設定すると、ある機器の消費電力が消費電力上限値を下回り、機器全体の消費電力が供給可能電力を下回る場合でも、他の機器は、当該機器に設定されている消費電力上限値以上の消費電力で動作することはできない。その結果、供給可能電力に余裕があるにもかかわらず、個々の機器は消費電力を制限された状態で動作し、機器の能力を充分に引き出せないおそれがある。
一方、各機器の消費電力上限値を上げると、各機器が消費電力上限値付近で動作した際に、機器全体の消費電力が供給可能電力を超えてしまい、全機器がダウンしてしまうおそれがある。
【０００６】
また、特許文献１に示される、電力管理装置が、各コンピュータシステムへの電力供給に関するプライオリティを示すプライオリティ情報に基づいて、各コンピュータシステムの消費電力量の合計値が供給可能総電力量を超えないよう制御する方法では、各コンピュータシステムへの電力供給に関するプライオリティを示すプライオリティ情報を用意しておく必要がある。
【０００７】
本発明は、上述の課題を解決することのできる消費電力制御装置、消費電力制御方法およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
この発明は上述した課題を解決するためになされたもので、本発明の一態様による消費電力制御装置は、対象機器の消費電力値を取得する消費電力値取得部と、前記消費電力値取得部の取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出部と、消費電力抑制の要否を判定する要否判定部と、前記要否判定部が消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択部と、を具備することを特徴とする。
【０００９】
また、本発明の一態様による消費電力制御方法は、消費電力制御装置の消費電力制御方法であって、対象機器の消費電力値を取得する消費電力値取得ステップと、前記消費電力値取得ステップにて取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出ステップと、消費電力抑制の要否を判定する要否判定ステップと、前記要否判定ステップにて消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択ステップと、を具備することを特徴とする。
【００１０】
また、本発明の一態様によるプログラムは、消費電力制御装置としてのコンピュータに、対象機器の消費電力値を取得する消費電力値取得ステップと、前記消費電力値取得ステップにて取得する前記消費電力値の合計を前記対象機器の数で除算した消費電力平均値を算出する消費電力平均値算出ステップと、消費電力抑制の要否を判定する要否判定ステップと、前記要否判定ステップにて消費電力抑制要と判定すると、消費電力値が前記消費電力平均値よりも大きい機器を、消費電力を抑制させる機器として選択する機器選択ステップと、を実行させるためのプログラムである。
【発明の効果】
【００１１】
本発明によれば、消費電力制御対象の各機器（各コンピュータシステム）への電力供給に関するプライオリティ付けを不要とでき、かつ、適切に消費電力の制御を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態におけるコンピュータシステムの概略構成を示す構成図である。
【図２】同実施形態におけるコンピュータの概略構成を示す構成図である。
【図３】同実施形態におけるリーダによるフォロアからの情報取得の例を示す説明図である。
【図４】同実施形態における機器情報記憶部の記憶する機器情報の例を示す説明図である。
【図５】同実施形態における機器選択部による機器選択の例を示す図である。
【図６】同実施形態における抑制ランクテーブル記憶部の記憶する抑制ランクテーブルの例を示す説明図である。
【図７】同実施形態における、リーダから引継先へのリーダ引継予約送信の例を示す説明図である。
【図８】同実施形態における、消費電力制御装置による消費電力制御の処理手順を示すフローチャートである。
【図９】同実施形態において、消費電力制御装置の行うリーダとしての処理の処理手順を示すフローチャートである。
【図１０】同実施形態において、消費電力制御装置の行うフォロアとしての処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施の形態について説明する。
図１は、本発明の一実施形態におけるコンピュータシステム１の概略構成を示す構成図である。同図において、コンピュータシステム１は、コンピュータ１０−１〜１０−１０と、スイッチ１１とを具備する。
コンピュータ１０−１〜１０−１０は、消費電力制御対象の機器（以下、「対象機器」と称する）であり、コンピュータ１０−１〜１０−１０の各々が消費電力制御装置を具備する。コンピュータ１０−１〜１０−１０の具備する消費電力制御装置の何れかがリーダとなって消費電力の制御を行う。他の消費電力制御装置は、フォロアとなってリーダへ情報を送信し、また、リーダからの指示に従って、消費電力制御装置自らを具備するコンピュータの消費電力を制御する。
なお、以下では、コンピュータ１０−１〜１０−１０を総称して、「コンピュータ１０」と表記する。
スイッチ１１は、コンピュータ１０−１〜１０−１０と接続され、コンピュータ同士における通信信号の転送を行う。
【００１４】
図２は、コンピュータ１０の概略構成を示す構成図である。同図において、コンピュータ１０は、電源部２０と、ＣＰＵクロック設定部３０と、消費電力制御装置４０とを具備する。消費電力制御装置４０は、通信部（予約受信部、予約送信部）４１１と、待ち時間測定部５１１と、現行装置状態判定部５１２と、引継先決定部５２１と、消費電力測定部６１１と、消費電力値処理部（消費電力平均値算出部）６１２と、機器情報記憶部６１３と、要否判定部６２１と、上限閾値記憶部６２２と、機器選択部６３１と、抑制ランクテーブル記憶部６４１と、抑制ランク決定部６４２と、緩和処理部６５１と、緩和許可閾値記憶部６５２と、ＣＰＵ関連処理部６６１と、緩和要求閾値記憶部６６２と、を具備する。また、通信部４１１は、スイッチ１１に接続される。
【００１５】
電源部２０は、コンピュータ１０の各部に電力を供給する。
ＣＰＵクロック設定部３０は、コンピュータ１０の具備するＣＰＵのクロック周波数を設定し、また、ＣＰＵのクロック周波数を出力する。
消費電力制御装置４０は、コンピュータ１０の具備するＣＰＵのクロック周波数を調整することにより消費電力を調整する。
通信部４１１は、スイッチ１１を介して他のコンピュータの消費電力制御装置４０との間で通信を行う。特に通信部４１１は、リーダの引継ぎを予約する消費電力制御引継予約を受信する。また、通信部４１１は、通信部４１１自らを具備する消費電力制御装置４０がリーダとなる際、引継先決定部５２１の決定する他の消費電力制御装置４０に対して、消費電力制御引継予約を送信する。
【００１６】
なお、ここでいう「リーダ」は、他の消費電力制御装置４０から消費電力値等の情報を取得して、対象機器（コンピュータ１０−１〜１０−１０）の消費電力抑制ランクを決定する消費電力制御装置４０である。ここで、コンピュータシステム１の具備する消費電力制御装置４０のいずれか１つが、リーダとなる。他の消費電力制御装置４０は、リーダの決定に従って、消費電力制御装置４０自らを具備するコンピュータ１０の消費電力制御を行うフォロアとなる。
【００１７】
待ち時間測定部５１１は、通信部４１１が消費電力制御引継予約を受信してからの経過時間を測定し、所定の待ち時間の経過を検出する。
現行装置状態判定部５１２は、通信部４１１が現在のリーダから受信する情報に基づいて、現在のリーダの状態を判定する。
【００１８】
引継先決定部５２１は、引継先決定部５２１自らを具備する消費電力制御装置４０がリーダとなった際に、次にリーダを引き継ぐべき消費電力制御装置４０（以下、「引継先」と称する）を決定する。
消費電力測定部６１１は、消費電力計を有し、消費電力測定部６１１自らを具備するコンピュータ１０の消費電力を測定する。
【００１９】
消費電力値処理部６１２は、消費電力値処理部６１２自らを具備する消費電力制御装置４０がリーダとなると、消費電力測定部６１１の測定する消費電力値、および、通信部４１１の受信する他のコンピュータの消費電力値に基づいて、コンピュータ１０−１〜１０−１０の消費電力合計値や、消費電力合計値をコンピュータの台数（１０）で除算した、１台当たりの平均値（以下、「消費電力平均値」と称する）を算出する。
【００２０】
機器情報記憶部６１３は、対象機器（コンピュータ１０−１〜１０−１０）の各々の識別情報（例えばＩＰアドレス）や、各機器から取得した消費電力測定値など、対象機器に関する情報や、いずれの消費電力制御装置４０がリーダかを示すリーダフラグなど、消費電力制御装置４０に関する情報を具備する。
【００２１】
要否判定部６２１は、要否判定部６２１自らを具備する消費電力制御装置４０がリーダとなると、消費電力値処理部６１２の算出する消費電力合計値に基づいて、消費電力を抑制する必要の有無を判定する。要否判定部６２１は、消費電力値処理部６１２の算出する消費電力合計値が、予め設定された定数である上限閾値以下の場合に、消費電力を抑制する必要無しと判定し、上限閾値を超える場合に、消費電力を抑制する必要有りと判定する。
上限閾値記憶部６２２は、要否判定部６２１が消費電力を抑制する必要の有無を判定する際に用いる上限閾値を、予め記憶する。
【００２２】
機器選択部６３１は、要否判定部６２１が、消費電力を抑制する必要有りと判定すると、消費電力値が消費電力平均値よりも大きいコンピュータ１０を、消費電力を抑制させる機器として選択する。
抑制ランク決定部６４２は、機器選択部６３１の選択した機器（コンピュータ１０）の各々について、当該機器の消費電力値から消費電力平均値を減算した差分を算出し、当該差分に基づいて、当該機器に対する消費電力抑制ランクを決定する。
抑制ランクテーブル記憶部６４１は、抑制ランク決定部６４２が消費電力抑制ランクを決定する際に用いる抑制ランクテーブルを、予め記憶する。
【００２３】
緩和処理部６５１は、いずれかの消費電力制御装置４０からの、消費電力抑制ランクの緩和要求を取得すると、緩和可否を判定する。緩和処理部６５１が緩和可能と判定した場合、いずれかのコンピュータ１０の消費電力抑制ランクが緩和される。
緩和許可閾値記憶部６５２は、緩和処理部６５１が緩和可否を判定する際に用いる、予め設定された定数である緩和許可閾値を予め記憶する。
【００２４】
ＣＰＵ関連処理部６６１は、リーダの消費電力制御装置４０が決定する消費電力抑制ランクに基づいて、ＣＰＵクロック設定部３０にＣＰＵクロックを設定させる。また、ＣＰＵ関連処理部６６１は、ＣＰＵ関連処理部６６１自らを具備するコンピュータ１０のＣＰＵの負荷に基づいて、消費電力抑制ランクの緩和を要求するか否かを決定する。要求すると決定した場合、ＣＰＵ関連処理部６６１は、通信部４１１を介して、リーダの消費電力制御装置４０の緩和処理部６５１に対して、消費電力抑制ランクの緩和を要求する。
緩和要求閾値記憶部６６２は、ＣＰＵ関連処理部６６１が、消費電力抑制ランクの緩和を要求するか否かを決定する際に用いる、予め設定された定数である緩和要求閾値を予め記憶する。
【００２５】
消費電力制御装置４０は、例えば、コンピュータ１０の一部として実現される。
例えば、待ち時間測定部５１１と、現行装置状態判定部５１２と、引継先決定部５２１と、消費電力値処理部６１２と、要否判定部６２１と、機器選択部６３１と、抑制ランク決定部６４２と、緩和処理部６５１と、緩和許可閾値記憶部６５２と、ＣＰＵ関連処理部６６１とは、コンピュータ１０の具備するＣＰＵが記憶部からプログラムを読み出して実行することにより実現される。また、機器情報記憶部６１３と、上限閾値記憶部６２２と、抑制ランクテーブル記憶部６４１と、緩和要求閾値記憶部６６２とは、コンピュータ１０の具備する記憶デバイスを用いて実現される。また、通信部４１１は、コンピュータ１０の具備するネットワーク通信手段、および、コンピュータ１０の具備するＣＰＵのプログラム実行により実現される。また、コンピュータ１０が、自らの消費電力を測定する消費電力計を具備し、当該消費電力計を用いて消費電力測定部６１１が実現される。
なお、消費電力制御装置４０の実現方法は、コンピュータ１０の一部として実現される方法に限らない。例えば、消費電力制御装置４０が、専用の装置として、コンピュータ１０の具備する筐体とは別の筐体内に実現されていてもよい。
【００２６】
なお、消費電力測定部６１１と通信部４１１とで、消費電力値取得部を構成する。すなわち、消費電力測定部６１１は、消費電力測定部６１１自らを具備するコンピュータ１０の消費電力値を測定（取得）し、通信部４１１は、他のコンピュータ１０の消費電力値を受信（取得）する。
【００２７】
次に、図３〜６を参照して、リーダの消費電力制御装置４０が行う消費電力抑制対象の機器の選択および抑制ランクの決定について説明する。
図３は、リーダによるフォロアからの情報取得の例を示す説明図である。同図の例において、コンピュータ１０−６の消費電力制御装置４０がリーダとなっており、他の消費電力制御装置４０はフォロアとなっている。また、信号Ｄ１１は、コンピュータ１０−６の消費電力制御装置４０（リーダ）からコンピュータ１０−１の消費電力制御装置４０（フォロア）への、消費電力値送信を要求する信号を示す。また、信号Ｄ１２は、コンピュータ１０−１の消費電力制御装置４０（フォロア）からコンピュータ１０−６の消費電力制御装置４０（リーダ）への、消費電力値を回答する信号を示す。
【００２８】
リーダとなっている消費電力制御装置４０は、フォロアとなっている消費電力制御装置４０の各々に対して、同図の信号Ｄ１１のように、消費電力値送信を要求する信号を定期的に送信する。そして、当該信号に従い、フォロアとなっている消費電力制御装置４０の各々は、同図の信号Ｄ１２のように、消費電力制御装置４０自らを具備するコンピュータ１０の消費電力値を回答する信号を定期的に送信する。
また、リーダとなっている消費電力制御装置４０の消費電力値測定部６１１は、消費電力値測定部６１１自らを具備するコンピュータ１０の消費電力を定期的に測定する。
これにより、リーダとなっている消費電力制御装置４０（消費電力値処理部６１２）は、対象機器（コンピュータ１０−１〜１０−１０）の消費電力値を定期的に取得する。
【００２９】
図４は、機器情報記憶部６１３の記憶する機器情報の例を示す説明図である。
同図において、「番号」欄には、対象機器の各々に付された通し番号（消費電力制御装置４０の各々に付された通し番号を兼ねる）が予め格納されている。
また、「ＩＰアドレス」欄には、消費電力制御装置４０の各々と通信するためのアドレス情報（消費電力制御装置４０を具備するコンピュータ１０のＩＰアドレス）が予め格納されている。
【００３０】
また、「消費電力」欄には、対象機器の各々の消費電力値が格納される。この消費電力値は、消費電力値処理部６１２がコンピュータ１０の各々から取得して機器情報記憶部６１３に書き込む。
また、「リーダ」欄には、いずれの消費電力制御装置４０がリーダかを示すリーダフラグが格納されている。リーダフラグの値「Ｙｅｓ」は、該当する消費電力制御装置４０がリーダであることを示し、値「Ｎｏ」は、該当する消費電力制御装置４０がフォロアであることを示す。
【００３１】
このように、機器情報記憶部６１３は、図３で説明した、消費電力値処理部６１２が対象機器の各々から定期的に取得する消費電力値の最新値を記憶する。
【００３２】
図５は、機器選択部６３１による機器選択の例を示す図である。同図に示される棒グラフのバーＢ１０１〜Ｂ１１０は、それぞれ、コンピュータ１０−１〜１０−１０の消費電力値を示し、電力値ＡＶは、これらコンピュータ１０−１〜１０−１０の消費電力の平均値を示す。また、同図において、バーＢ１０１、Ｂ１０３、Ｂ１０６、Ｂ１０７、Ｂ１１０の示す、コンピュータ１０−１、１０−３、１０−６、１０−７、１０−１０の消費電力値が、消費電力平均値ＡＶよりも大きくなっている。消費電力を抑制する必要がある場合、これら消費電力値が消費電力平均値よりも大きくなっているコンピュータが、消費電力抑制対象機器として選択される。
【００３３】
この消費電力抑制対象機器の選択は、機器選択部６３１によって行われる。まず、消費電力値処理部６１２が、機器情報記憶部６１３の記憶するコンピュータ１０の各々の消費電力値（最新の測定値）に基づいて、消費電力平均値（図５の値ＡＶ）を算出する。そして、機器選択部６３１は、消費電力値処理部６１２の算出した消費電力平均値と、機器情報記憶部６１３の記憶するコンピュータ１０の各々の消費電力値とに基づいて、消費電力値が消費電力平均値よりも大きくなっているコンピュータ１０を、消費電力抑制対象機器として選択する。
【００３４】
図６は、抑制ランクテーブル記憶部６４１の記憶する抑制ランクテーブルの例を示す説明図である。
同図において、「ランク」欄には、抑制ランクが格納されている。この抑制ランクは、数が小さいほど、消費電力抑制の程度が大きい（すなわち、消費電力が小さくなるように制御される）ことを示す。
【００３５】
また、「ＣＰＵクロック周波数」欄には、該当する抑制ランクにおいて、コンピュータ１０のＣＰＵクロックに設定される周波数が格納されている。抑制ランクの数が小さいほど低い周波数に設定されており、消費電力抑制の程度が大きくなっている。
また、「差分」欄には、該当する抑制ランクの適用条件が、コンピュータ１０の消費電力値と消費電力平均値との差分によって示されている。例えば、コンピュータ１０の消費電力値から消費電力平均値を減算した差分が９０ワット（Ｗ）の場合、当該コンピュータ１０には、抑制ランク２が適用される。
【００３６】
この抑制ランクの決定は、抑制ランク決定部６４２によって行われる。抑制ランク決定部６４２は、要否判定部６２１が消費電力抑制必要と判定すると、消費電力値処理部６１２の算出する消費電力平均値と、機器情報記憶部６１３の記憶するコンピュータ１０の各々の消費電力値とを取得する。次に、抑制ランク決定部６４２は、機器選択部６３１の選択した機器（消費電力値が消費電力平均値よりも大きいコンピュータ１０）の各々について、その消費電力値から消費電力平均値を減算した差分を算出する。そして、抑制ランク決定部６４２は、算出した差分を、抑制ランクテーブル記憶部６４１の記憶する抑制ランクテーブルに適用して、各機器の抑制ランクを決定する。
【００３７】
次に、図７を参照して、リーダの引継について説明する。
図７は、リーダから引継先へのリーダ引継予約送信の例を示す説明図である。同図の例において、コンピュータ１０−６がリーダとなっており、コンピュータ１０−６は、コンピュータ１０−５を引継先に決定している。また、信号Ｄ２１は、消費電力制御引継予約の信号を示す。
【００３８】
この引継先の決定は、引継先決定部５２１によって行われる。引継先決定部５２１は、引継先決定部５２１自らを具備する消費電力制御装置４０がリーダになるときに、引継先を決定する。例えば、引継先決定部５２１は、コンピュータシステム１の具備する消費電力制御装置４０から、引継先決定部５２１自らを具備する消費電力制御装置４０以外のいずれかの消費電力制御装置４０をランダムに選択する。例えば、引継先決定部５２１は、機器情報記憶部６１３の記憶するコンピュータ１０のＩＰアドレスのうち、引継先決定部５２１自らを具備するコンピュータ１０のＩＰアドレス以外のいずれかをランダムに選択し、選択したＩＰアドレスを消費電力制御引継予約の送信先に決定する。
【００３９】
次に、図８〜１０を参照して、消費電力制御装置４０の動作について説明する。
図８は、消費電力制御装置４０による消費電力制御の処理手順を示すフローチャートである。コンピュータシステム１の具備する消費電力制御装置４０の各々は、電源を接続（ＯＮ）され、かつ、消費電力制御を行うよう設定されると、同図の処理を開始する。ここで、消費電力制御を行うか否かの設定は、例えば、コンピュータシステム１のユーザにより、コンピュータシステム１の具備する全ての消費電力制御装置４０に対して一括で行われる。
【００４０】
図８の処理において、まず、要否判定部６２１が、要否判定部６２１自らを具備する消費電力制御装置４０が初期設定においてリーダに設定されているか否かを判定する（ステップＳ１０１）。ここで、初期設定におけるリーダは、例えば、コンピュータシステム１のユーザにより、図８の処理開始前に予め設定される。
【００４１】
ステップＳ１０１において、リーダであると判定した場合（ステップＳ１０１：ＹＥＳ）、消費電力制御装置４０は、リーダとしての処理を行う（ステップＳ１７１）。その後、ステップＳ１１１に進む。
一方、ステップＳ１０１において、リーダでないと判定した場合（ステップＳ１０１：ＮＯ）、通信部４１１は、消費電力制御引継予約を受信したか否かを判定する（ステップＳ１１１）。
【００４２】
消費電力制御引継予約を受信していないと判定した場合（ステップＳ１１１：ＮＯ）、消費電力制御装置４０は、フォロアとしての処理を行う（ステップＳ１２１）。その後、ステップＳ１１１に戻り、以下の処理を繰り返す。
一方、ステップＳ１１１において消費電力制御引継予約を受信したと判定した場合（ステップＳ１１１：ＹＥＳ）、待ち時間測定部５１１は、消費電力制御装置４０が、消費電力制御引継予約を受信してからの経過時間を測定する（ステップＳ１３１）。当該時間測定は、消費電力制御引継予約を受信してから実際にリーダを引き継ぐまでの時間待ちのために行われる。
【００４３】
次に、待ち時間測定部５１１は、ステップＳ１３１で時間測定を開始してからの経過時間が、予め設定された一定時間である所定時間に達したか否かを判定する（ステップＳ１３２）。
所定時間に達したと判定した場合（ステップＳ１３２：ＹＥＳ）、ステップＳ１７１へ進む。
【００４４】
一方、所定時間に達していないと判定した場合（ステップＳ１３２：ＮＯ）、通信部４１１は、通信部４１１が現在のリーダ（以下、「現行装置」と称する）から現行装置の状態情報を受信したか否かを判定する（ステップＳ１４１）。ここで、リーダ（現行装置）は、引継先に対して、現行装置の状態情報を定期的に送信する。通信部４１１は、この定期的に送信される現行装置の状態情報を受信したか否かを判定する。
【００４５】
現行装置の状態情報を受信したと判定した場合（ステップＳ１４１：ＹＥＳ）、現行装置状態判定部５１２は、通信部４１１が受信した現行装置の状態情報に基づいて、現行装置の状態を判定し（ステップＳ１５１）、現行装置が消費電力制御を実行不可能か否かを判定する（ステップＳ１５２）。
実行不可能であると判定した場合（ステップＳ１５２：ＹＥＳ）、ステップＳ１７１に進む。
【００４６】
一方、ステップＳ１５２において、現行装置が消費電力制御を実行可能であると判定した場合（ステップＳ１５２：ＮＯ）、消費電力制御装置４０は、フォロアとしての処理を行う（ステップＳ１６１）。その後、ステップＳ１３２に戻る。
また、ステップＳ１４１において、現行装置の状態情報を受信していないと判定した場合（ステップＳ１４１：ＮＯ）も、ステップＳ１６１に進む。
【００４７】
図９は、消費電力制御装置４０の行うリーダとしての処理の処理手順を示すフローチャートである。消費電力制御装置４０は、図８のステップＳ１７１において同図の処理を行う。
まず、通信部４１１が、現行装置に対して、リーダ引継通知を送信する（ステップＳ２０１）。このリーダ引継通知送信のタイミングで、リーダの引継ぎが行われる。すなわち、リーダ（現行装置）であった消費電力制御装置４０は、フォロアになり、リーダ引継通知を送信した当該消費電力制御装置４０が、リーダになる。
【００４８】
次に、通信部４１１は、通信部４１１自らを具備する消費電力制御装置４０の識別情報（例えば、コンピュータ１０のＩＰアドレス）を含むリーダフラグ書換要求を、各消費電力制御装置４０に送信する。各消費電力制御装置４０（通信部４１１）は、当該リーダフラグ書換要求を受信すると、発信元の消費電力制御装置４０がリーダとなるよう、リーダフラグを更新する。
また、リーダとなった消費電力制御装置４０の通信部４１１は、通信部４１１自らを具備する消費電力制御装置４０（機器情報記憶部６１３）の記憶するリーダフラグを更新する（ステップＳ２０２）。
【００４９】
次に、引継先決定部５２１が、リーダ引継先（消費電力制御引継予約の送信先となる消費電力制御装置４０）を決定する（ステップＳ２０３）。例えば、引継先決定部５２１は、コンピュータシステム１の具備する消費電力制御装置４０から、引継先決定部５２１自らを具備する消費電力制御装置４０以外のいずれかの消費電力制御装置４０をランダムに選択する。
そして、通信部４１１が、引継先決定部５２１の決定したリーダ引継先に対して、消費電力制御引継予約を送信する（ステップＳ２０４）。
【００５０】
その後、通信部４１１は、リーダ引継先からリーダ引継通知を受信したか否かを判定する（ステップＳ２０５）。リーダ引継通知を受信したと判定した場合（ステップＳ２０５：ＹＥＳ）、同図の処理を終了する。すなわち、消費電力制御装置４０は、リーダとしての処理を終了し、フォロアとなる。
【００５１】
一方、ステップＳ２０５において、リーダ引継通知を受信していないと判定した場合（ステップＳ２０５：ＮＯ）、通信部４１１は、通信部４１１自らを具備する消費電力制御装置４０による消費電力制御の可否を示す信号を、リーダ引継先に送信する（ステップＳ２１１）。通信部４１１自らを具備する消費電力制御装置４０に障害が発生していなければ、通信部４１１は、消費電力制御可能であることを示す信号を送信する。
【００５２】
次に、通信部４１１は、各消費電力制御装置４０に対して、当該消費電力制御装置４０を具備するコンピュータ１０の消費電力値を送信するよう要求する信号を送信する（ステップＳ２１２）。
そして、通信部４１１は、当該要求信号への回答として各消費電力制御装置４０から送信される消費電力値を取得する。通信部４１１は、各消費電力制御装置４０から取得した消費電力値を、消費電力値処理部６１２に出力する。
消費電力値処理部６１２は、通信部４１１から出力される消費電力値を、機器情報記憶部６１３に書き込む。また、消費電力値処理部６１２は、消費電力測定部６１１から、消費電力値処理部６１２自らを具備するコンピュータ１０の消費電力値を取得して、機器情報記憶部６１３に書き込む（ステップＳ２１３）。
【００５３】
次に、消費電力値処理部６１２が、機器情報記憶部６１３の記憶する消費電力値を合計して、コンピュータ１０−１〜１０−１０の消費電力合計値を算出する。そして、要否判定部６２１は、消費電力値処理部６１２の算出した消費電力合計値と、上限閾値記憶部６２２の記憶する上限閾値とを比較して（ステップＳ２１４）、消費電力抑制の要否を判定する（ステップＳ２１５）。具体的には、要否判定部６２１は、消費電力合計値が上限閾値以下の場合に、消費電力を抑制する必要無しと判定し、消費電力合計値が上限閾値を超える場合に、消費電力を抑制する必要有りと判定する。
【００５４】
消費電力を抑制する必要有りと判定した場合（ステップＳ２１５：ＹＥＳ）、消費電力値処理部６１２は、ステップＳ２１４で算出したコンピュータ１０−１〜１０−１０の消費電力合計値を、コンピュータ１０−１〜１０−１０の台数の「１０」で除算して、消費電力平均値を算出する（ステップＳ２２１）。
そして、機器選択部６３１は、消費電力値処理部６１２の算出した消費電力平均値と、機器情報記憶部６１３の記憶するコンピュータ１０の各々の消費電力値とに基づいて、消費電力値が消費電力平均値よりも大きくなっているコンピュータ１０を、消費電力抑制対象機器として選択する（ステップＳ２２２）。
【００５５】
次に、抑制ランク決定部６４２は、ステップＳ２２１で消費電力値処理部６１２が算出した消費電力平均値と、機器情報記憶部６１３の記憶するコンピュータ１０の各々の消費電力値とを取得する。そして、抑制ランク決定部６４２は、ステップＳ２２２で機器選択部６３１が選択した機器の各々について、その消費電力値から消費電力平均値を減算した差分を算出する（ステップＳ２２３）。
そして、抑制ランク決定部６４２は、算出した差分を、抑制ランクテーブル記憶部６４１の記憶する抑制ランクテーブルに適用して、各機器の抑制ランクを決定する（ステップＳ２２４）。
【００５６】
次に、通信部４１１は、消費電力抑制対象機器の各々に対して、抑制ランク決定部６４２の決定した抑制ランクに基づいて消費電力を抑制させる指令を送信する（ステップＳ２２５）。当該指令を受けた各機器（消費電力制御装置４０の各々）は、決定した抑制ランクに応じたＣＰＵクロック周波数に設定することにより、コンピュータ１０の消費電力を抑制する。
【００５７】
また、ＣＰＵ関連処理部６６１は、抑制ランク決定部６４２の決定した抑制ランクに基づいて、ＣＰＵ関連処理部６６１自らを具備するコンピュータ１０のＣＰＵクロック周波数を抑制ランクテーブル記憶部６４１から読み出し、ＣＰＵクロック設定部３０に出力する。そして、ＣＰＵクロック設定部３０は、ＣＰＵ関連処理部６６１から出力されるＣＰＵクロック周波数を、ＣＰＵクロックに設定する（ステップＳ２２６）。
その後、ステップＳ２０５に戻る。
【００５８】
一方、ステップＳ２１５において、消費電力を抑制する必要無しと判定した場合（ステップＳ２１５：ＮＯ）、緩和処理部６５１は、他の消費電力制御装置４０からの、消費電力抑制ランクの緩和要求の有無（通信部４１１が、緩和要求を受信したか否か）を判定する（ステップＳ２３１）。
緩和要求無しと判定した場合（ステップＳ２３１：ＮＯ）、ステップＳ２０５に戻る。
【００５９】
一方、ステップＳ２３１において、緩和要求有りと判定した場合（ステップＳ２３１：ＹＥＳ）、緩和処理部６５１は、ステップＳ２１４において消費電力値処理部６１２が算出した、コンピュータ１０−１〜１０−１０の消費電力合計値と、緩和許可閾値記憶部６５２の記憶する緩和許可閾値とを比較して（ステップＳ２４１）、消費電力抑制レベルの緩和の可否を判定する（ステップＳ２４２）。具体的には、緩和処理部６５１は、消費電力合計値が緩和許可閾値以下である場合に緩和可能と判定し、緩和許可閾値より大きい場合に緩和不可と判定する。
【００６０】
消費電力抑制レベルの緩和不可と判定した場合（ステップＳ２４２：ＮＯ）、ステップＳ２０５に戻る。
一方、消費電力抑制レベルを緩和可能と判定した場合（ステップＳ２４２：ＹＥＳ）、緩和処理部６５１は、緩和対象機器を選択する（ステップＳ２５１）。例えば、緩和処理部６５１は、緩和要求を送信したコンピュータ１０（消費電力制御装置４０）のうち、ランダムにいずれか１つを選択し、緩和対象機器とする
そして、通信部４１１は、緩和処理部６５１の決定した緩和対象機器に対して、消費電力抑制ランクを１ランク緩和することを許可する緩和許可を送信する（ステップＳ２５２）。
その後、ステップＳ２０５に戻る。
【００６１】
図１０は、消費電力制御装置４０の行うフォロアとしての処理の処理手順を示すフローチャートである。消費電力制御装置４０は、図８のステップＳ１２１およびＳ１６１において同図の処理を行う。
まず、通信部４１１が、消費電力値要求（図９のステップＳ２１２において、リーダの通信部４１１が送信する要求信号）を受信したか否かを判定する（ステップＳ３０１）。
【００６２】
消費電力値要求を受信したと判定した場合（ステップＳ３０１：ＹＥＳ）、通信部４１１は、消費電力測定部６１１の測定する消費電力値を、リーダ宛に送信する（ステップＳ３０２）。その後、ステップＳ３１１に進む。
一方、ステップ３０１において、消費電力値要求を受信していないと判定した場合（ステップＳ３０１：ＮＯ）は、そのままステップＳ３１１に進む。
【００６３】
次に、ＣＰＵ関連処理部６６１は、ＣＰＵ関連処理部６６１自らを具備する消費電力制御装置４０の負荷に基づいて、消費電力抑制ランクの緩和要求を行うか否かを決定する（ステップＳ３１１）。具体的には、ＣＰＵ関連処理部６６１は、ＣＰＵ関連処理部６６１自らを具備する消費電力制御装置４０のＣＰＵ使用率が、緩和要求閾値記憶部６６２の記憶する緩和要求閾値以上である場合は、緩和要求を行うことに決定し、緩和要求閾値未満である場合は、緩和要求を行わないことに決定する。
【００６４】
緩和要求を行うことに決定した場合（ステップＳ３１１：ＹＥＳ）、通信部４１１は、緩和要求をリーダ宛に送信する（ステップＳ３１２）。その後、ステップＳ３３１に進む。
一方、ステップＳ３１１において、緩和要求を行わないことに決定した場合（ステップＳ３１１：ＮＯ）は、そのままステップＳ３３１に進む。
【００６５】
次に、通信部４１１は、抑制指令（図９のステップＳ２２５において、リーダの通信部４１１が送信する、消費電力を抑制させる指令）を受信したか否かを判定する（ステップＳ３３１）。
緩和要求を受信していないと判定した場合（ステップＳ３３１：ＮＯ）、通信部４１１は、緩和許可（図９のステップＳ２５２において、リーダの通信部４１１が送信する、消費電力抑制ランクの１ランク緩和を許可する信号）を受信したか否かを判定する（ステップＳ３３２）。
緩和要求を受信していないと判定した場合（ステップＳ３３２：ＮＯ）、同図の処理を終了し、図８の処理に戻る。
【００６６】
一方、ステップＳ３３１において、抑制指令を受信したと判定した場合（ステップＳ３３１：ＹＥＳ）、または、ステップＳ３３２において、緩和許可を受信したと判定した場合（ステップＳ３３２：ＹＥＳ）、ＣＰＵ関連処理部６６１は、抑制指令または緩和許可に従って、ＣＰＵ関連処理部６６１自らを具備する消費電力制御装置４０のＣＰＵクロック周波数を決定し（抑制ランクテーブル記憶部６４１から読み出し）、ＣＰＵクロック設定部３０に出力する。そして、ＣＰＵクロック設定部３０は、ＣＰＵ関連処理部６６１から出力されたＣＰＵクロック周波数を、ＣＰＵクロックに設定する（ステップＳ３３３）。
その後、同図の処理を終了し、図８の処理に戻る。
【００６７】
以上のように、コンピュータシステム１では、機器選択部６３１が、消費電力平均値と、コンピュータ１０−１〜１０−１０（消費電力制御対象の各機器）の消費電力値とに基づいて、消費電力を抑制させる機器を決定するので、消費電力制御対象の各機器への電力供給に関するプライオリティ付けを不要とでき、かつ、消費電力の多い機器を選択して適切に消費電力の制御を行うことができる。
【００６８】
また、リーダの消費電力制御装置４０が、リーダの引継先の消費電力制御装置４０を決定するので、コンピュータシステム１のユーザがリーダの引継先を決定せずとも、コンピュータシステム１は、継続して消費電力制御を行うことができる。
【００６９】
また、リーダ引継先の消費電力制御装置４０は、待ち時間経過時に加えて、現行装置が消費電力制御を行えないと判定した場合も、リーダを引き継いで消費電力制御を行うので、コンピュータシステム１は、消費電力制御を行っている消費電力制御装置４０（リーダ）に障害が発生した場合も、引き続き消費電力制御を行うことができる。
【００７０】
また、抑制ランク決定部６４２が、消費電力抑制対象に決定された各機器の消費電力から消費電力平均値を減算した差分に基づいて、消費電力抑制のランクを決定するので、消費電力値の大きい機器の消費電力をより大きく低減させて、効率よく消費電力値を制御することができる。
【００７１】
なお、上述したように、消費電力制御装置４０は、コンピュータの一部として実現可能である。すなわち、消費電力制御装置４０の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００７２】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【００７３】
１  コンピュータシステム
１０−１〜１０−１０  コンピュータ
１１  スイッチ
２０  電源部
３０  ＣＰＵクロック設定部
４０  消費電力制御装置
４１１  通信部
５１１  待ち時間測定部
５１２  現行装置状態判定部
５２１  引継先決定部
６１１  消費電力測定部
６１２  消費電力値処理部
６１３  機器情報記憶部
６２１  要否判定部
６２２  上限閾値記憶部
６３１  機器選択部
６４１  抑制ランクテーブル記憶部
６４２  抑制ランク決定部
６５１  緩和処理部
６５２  緩和許可閾値記憶部
６６１  ＣＰＵ関連処理部
６６２  緩和要求閾値記憶部
【図１】
0005741813.tif 000002
【図２】
0005741813.tif 000003
【図３】
0005741813.tif 000004
【図４】
0005741813.tif 000005
【図５】
0005741813.tif 000006
【図６】
0005741813.tif 000007
【図７】
0005741813.tif 000008
【図８】
0005741813.tif 000009
【図９】
0005741813.tif 000010
【図１０】
0005741813.tif 000011