(57)【要約】【課題】電源装置が過電流状態になることに伴うシステムダウンを回避しつつ、電力供給に係る制御の負荷を抑えることができる技術を提供する。【解決手段】ＰＳＵ４０が過電流検出信号ＬＰＯ＿Ｎをアサートさせた場合、その論理値はラッチ１１１に保持され、信号スイッチ部１４の各ＡＮＤゲート１１４に出力される。各ＡＮＤゲート１１４は、ラッチ１１１からの論理値と、接続されたレジスタ１１３の値の否定の論理積を対応するシステムボード２０に出力する。値が１の論理積を入力したシステムボード２０は、消費電力の抑制を行う。それにより、過電流検出信号ＬＰＯ＿Ｎがアサートされた場合、そのアサートを契機に、０が格納されたレジスタ１１３と接続されているＡＮＤゲート１１４から論理積を入力するシステムボード２０は消費電力を抑制する。【選択図】図２
2014142840.tif 000002
【特許請求の範囲】
【請求項１】
電力を供給する複数台の電源装置と、
消費電力の抑制が可能な処理モジュールと、
前記複数台の電源装置のうちの何れかから過電流を表す第１の信号が出力された場合に、該第１の信号を用いて、前記消費電力の抑制を指示するための第２の信号を生成して前記処理モジュールに出力する信号生成部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記処理モジュールを複数、備え、
前記信号生成部は、前記第２の信号を前記処理モジュール毎に出力可能である、
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
複数の処理モジュールのなかで前記第２の信号の出力対象とさせる処理モジュールを前記信号生成部に設定する設定部、を更に有し、
前記信号生成部は、前記設定部によって設定された処理モジュールに対して、前記第２の信号を出力する、
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記設定部は、前記複数の処理モジュールの前記消費電力を抑制するうえでの優先度を表す制御情報を基に、前記信号生成部に前記第２の信号の出力対象とさせる処理モジュールを設定する、
ことを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記制御情報は、前記複数の処理モジュールが複数のグループに分割されている場合、グループ毎に前記優先度を表す情報であり、
前記設定部は、前記第１の信号の出力が終了するまで、前記制御情報を基に、前記信号生成部に前記第２の信号の出力対象とさせる処理モジュールの数を前記グループ単位で段階的に増大させる、
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記第１の信号の論理値を保持する保持部を有し、
前記信号生成部は、前記保持部が前記論理値を保持している間、前記設定部により設定された処理モジュールに前記第２の信号を出力する、
ことを特徴とする請求項３、４、または５記載の情報処理装置。
【請求項７】
複数台の電源装置、及び消費電力の抑制が可能な複数の処理モジュールを備えた情報処理装置の消費電力を制御するための方法であって、
前記複数台の電源装置のうちの何れかから過電流を表す第１の信号が出力された場合に、該第１の信号を用いて、処理モジュールに消費電力の抑制を指示するための第２の信号を生成し、
該生成した第２の信号を、前記複数の処理モジュールのなかで予め設定された処理モジュールに出力させ、該第２の信号を入力した処理モジュールに消費電力を抑制させる、
ことを特徴とする消費電力制御方法。
【請求項８】
前記第２の信号の前記処理モジュールへの出力により前記第１の信号の出力が終了しない場合に、該第２の信号が出力される処理モジュールの数を増大させる、
ことを特徴とする請求項７記載の消費電力制御方法。
【請求項９】
前記複数の処理モジュールが複数のグループに分割されている場合、前記第２の信号が出力される処理モジュールの数の増大は、グループ単位で行う、
ことを特徴とする請求項８記載の消費電力制御方法。
【請求項１０】
情報処理装置に搭載された演算処理装置に、
複数台の電源装置のうちの何れかから過電流を表す第１の信号が出力された場合に、該第１の信号を用いて、消費電力の抑制を指示するための第２の信号を生成する信号生成部に対し、該第２の信号の出力対象とする処理モジュールを設定させ、
前記第１の信号が実際に出力された場合に、前記第２の信号の出力により、該第１の信号の出力が終了したか否か判定させ、
前記第１の信号の出力が終了しないと判定した場合に、前記信号生成部に対し、前記第２の信号の出力対象とする処理モジュールを更に設定させる、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数台の電源装置を備えた情報処理装置の消費電力を制御するための技術に関する。
【背景技術】
【０００２】
コンピュータに代表される情報処理装置のなかには、複数台の電源装置を搭載したものがある。個別に動作させることが可能な処理モジュールを複数、搭載可能な情報処理装置では、消費電力は動作させる処理モジュールの数に応じて変化する。このこともあり、処理モジュールを複数、搭載可能な情報処理装置には、複数台の電源装置が搭載されるのが普通となっている。サーバブレード、システムボード、及びＩＯ（Input/Output）ユニット等は何れも処理モジュールである。
【０００３】
複数台の電源装置を搭載した情報処理装置の多くは、動作させている処理モジュールによって消費される電力を監視し、その監視結果に応じて、複数台の電源装置のなかで電力を供給させる電源装置の組み合わせ（数）を決定するようになっている。これは、電源装置による変換効率を高く維持させつつ、必要な電力を供給するためである。変換効率を高く維持させることにより、情報処理装置全体の消費電力も抑えることができる。
【０００４】
電源装置には、電源装置自身、或いは電力が供給される負荷が破損しないように、過電流が流れないようにする過電流保護機能が搭載されるのが普通である。この過電流保護機能は、過電流と見なす電流が流れた場合、出力される電流量を制限し、出力電圧を低下させる。
【０００５】
処理モジュールに搭載されるＣＰＵ、半導体メモリ、等の電子部品は、低電圧化が進んでいる。この低電圧化に伴い、電子部品の電圧の変動に対する許容量は小さくなっている。そのため、電源装置における出力電圧の低下は、電子部品の誤動作を発生させやすい。電子部品の誤動作はシステムダウンの原因となる。このようなことから、電源装置に過電流が流れないようにすることは非常に重要である。
【０００６】
複数台の電源装置を搭載した情報処理装置では、電力供給に係わる制御は、搭載された管理装置が行うようになっているのが普通である。その管理装置は、通常、動作させている処理モジュールによって消費される電力を監視し、その監視結果に応じて、複数台の電源装置のなかで電力を供給させる電源装置の組み合わせを決定するようになっている。実際に消費される電力に応じて、電力を供給させる電源装置の組み合わせを決定する場合、電源装置における変換効率を高く維持させることができる。
【０００７】
電源装置に過電流が流れないようにするために、従来の管理装置は、比較的に短い時間間隔で処理モジュールの消費電力を監視すると共に、動作させている電源装置を監視し、何れかの電源装置に発生する障害に迅速に対応するようになっている。動作させている電源装置のなかで１台以上の電源装置に障害が発生した場合、管理装置は、動作させていない電源装置の動作を開始させるか、動作させる電源装置が無ければ、処理モジュール全体の消費電力を低下させなければならない。このようなことから、従来の管理装置における電力供給に係わる制御の負荷は重いものとなっている。
【０００８】
現在の情報処理装置では、部品点数を低減させることによる製造コストを抑制するといった理由から、電力供給に係わる制御以外の制御も管理装置に行わせる傾向がある。そのため、各処理モジュールの温度の確認、確認した温度に応じた冷却制御、構成部品の状態監視、等も管理装置に行わせる場合がある。このようなことからも、電力供給に係わる制御の負荷を抑えられるようにすることが重要と思われる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−６０７５８号公報
【特許文献２】特開平１１−３３８５５５号公報
【特許文献３】特開２００４−１８５６１９号公報
【特許文献４】特開平１０−９１２９８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
１側面では、本発明は、電源装置が過電流状態になることに伴うシステムダウンを回避しつつ、電力供給に係る制御の負荷を抑えることができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明を適用した１システムでは、電力を供給する複数台の電源装置と、消費電力の抑制が可能な処理モジュールと、複数台の電源装置のうちの何れかから過電流を表す第１の信号が出力された場合に、該第１の信号を用いて、消費電力の抑制を指示するための第２の信号を生成して処理モジュールに出力する信号生成部と、を有する。
【発明の効果】
【００１２】
本発明を適用した場合には、電源装置が過電流状態になることに伴うシステムダウンを回避しつつ、電力供給に係る制御の負荷を抑えることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態による情報処理装置の構成例を表す図である。
【図２】本実施形態による情報処理装置の消費電力量制御のための仕組みの例を説明する図である。
【図３】パーティション優先度定義ファイルの構成例を説明する図である。
【図４】スロットリング制御処理のフローチャートである。
【図５】ＰＳＵに障害が発生した場合のシーケンス例を説明する図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図１は、本実施形態による情報処理装置の構成例を表す図である。図２は、本実施形態による情報処理装置の消費電力量制御のための仕組みの例を説明する図である。
【００１５】
図１に表すように、本実施形態による情報処理装置１は、ＭＭＢ（ManageMent Board）１０、複数のシステムボード（ＳＢ：System Board）２０（２０−０〜２０−ｎ）、複数のＩＯ（Input/Output）ユニット３０（３０−０〜３０−ｎ）、複数台のＰＳＵ（Power Supply Unit）４０（４０−０〜４０−ｎ）、及び複数のファン（Ｆａｎ）５０（５０−０〜５０−ｎ）を備えている。この情報処理装置１は、１つ以上のシステムボード２０、及び１つ以上のＩＯユニット３０を１つのパーティション（グループ）として組み合わせることができるサーバとして実現されている。システムボード２０−ｎ、ＩＯユニット３０−ｎ、ＰＳＵ４０−ｎ、及びファン５０−ｎにそれぞれ符号の一部として表記の「ｎ」は、何れも０以上の任意の整数を表している。それにより、実際にｎが表す値は、構成要素の種類、つまりシステムボード２０−ｎ、ＩＯユニット３０−ｎ、ＰＳＵ４０−ｎ、及びファン５０−ｎによって異なる。
【００１６】
各システムボード２０は、データ処理のための処理モジュールである。図１に表すように、各システムボード２０には、複数のＣＰＵ（Central Processing Unit）２０１、複数のメモリモジュール（図１中「ＭＥＭ」と表記）２０２、ＢＭＣ（Baseboard Management Controller）２０３、複数のＧＰＩＯ（General Purpose Input/Output）２０４、複数の温度センサ（ＴＳ：Thermal Sensor）２０５、複数の電圧センサ（ＶＳ：Voltage Sensor）２０６、及びＦＲＵ  ＲＯＭ（Field Replaceable Unit Read Only Memory）２０７を備えている。ＦＲＵ ＲＯＭ２０７は、保守員が交換する保守対象コンポーネントに供えられたコンポーネント情報を格納した記憶装置である。
【００１７】
ＢＭＣ２０３は、システムボード２０を管理するための専用の管理装置である。各ＣＰＵ２０１は、オン／オフ、エラーの監視、及び消費電力の制御のためにＢＭＣ２０３と接続されている。各温度センサ２０５、各電圧センサ２０６、各ＧＰＩＯ２０４、及びＦＲＵ  ＲＯＭ２０７は、システムボード２０内に設けられていても、ＭＭＢ１０の管理下となっている。
【００１８】
各ＩＯユニット３０は、データの入出力のための処理モジュールである。図１に表すように、各ＩＯユニット３０には、複数のＰＣＩｅ（Peripheral Components Interconnect Express）スイッチ３０１、複数のＧＰＩＯ３０２、複数の温度センサ３０３、複数の電圧センサ３０４、及びＦＲＵ  ＲＯＭ３０５を備えている。データの入出力を行う装置、例えばハードディスク装置、ＮＩＣ等は、特に表していないが、何れかのＰＣＩｅスイッチ３０１と接続される。
【００１９】
ＭＭＢ１０は、情報処理装置１全体を管理する専用の管理装置である。このＭＭＢ１０は、接続された端末装置２にユーザインターフェイスを提供し、ハードウェアの状態監視、構成情報表示、エラー情報表示、パーティション管理、ネットワーク管理、及び電源制御などの運用管理を可能にさせる。ＭＭＢ１０と各システムボード２０とは、ＬＡＮ（Local Area Network）及びＩ２Ｃ（Inter-Integrated Circuit）により接続させている。ＭＭＢ１０と各ＩＯユニット３０とは、Ｉ２Ｃ（Inter-Integrated Circuit）により接続させている。
【００２０】
ＭＭＢ１０は、図１に表すように、ＣＰＵ（Central Processing Unit）１０１、ＦＷＨ（Firm-Ware Hub）１０２、メモリ（メモリモジュール）１０３、ＮＩＣ（Network Interface Card）１０４、及びスイッチングハブ１０５を備えている。ＦＷＨ１０２には、ＣＰＵ１０１が実行するファームウェアが格納されている。ＣＰＵ１０１は、ＦＷＨ１０２に格納されたファームウェアをメモリ１０３に読み出して実行することにより、情報処理装置１全体の制御を行い、端末装置２にユーザインターフェイスを提供する。端末装置２との通信には、ＮＩＣ１０４が用いられる。
【００２１】
ＮＩＣ１０４にはスイッチングハブ１０５が接続され、そのスイッチングハブ１０５は、各システムボード２０とＬＡＮにより接続されている。それにより、ＣＰＵ１０１は、ＮＩＣ１０４、及びスイッチングハブ１０５を介して、各システムボード２０との間で通信を行う。
【００２２】
ＣＰＵ１０１には、システムボード２０との通信用の複数のＩ２Ｃコントローラ１０６（１０６−０〜１０６−ｎ）、ＩＯユニット３０との通信用の複数のＩ２Ｃコントローラ１０７（１０７−０〜１０７−ｎ）、ＰＳＵ４０との通信用のＩ２Ｃコントローラ１０８、ファン５０の制御用のＩ２Ｃコントローラ１０９、及びＭＭＢ１内のデータの通信用のＩ２Ｃコントローラ１１０が接続されている。
【００２３】
Ｉ２Ｃコントローラ１１０には、複数の電圧センサ１１５、複数の温度センサ１１６、及びＦＲＵ  ＲＯＭ１１７が接続されている。それにより、ＣＰＵ１０１は、Ｉ２Ｃコントローラ１１０を介して、各電圧センサ１１５、及び各温度センサ１１６がそれぞれ出力するデジタル値を取得し、取得したデジタル値を処理して、ＭＭＢ１０内部の状態を認識する。
【００２４】
システムボード２０との通信用の複数のＩ２Ｃコントローラ１０６（１０６−０〜１０６−ｎ）は、システムボード２０毎に設けられている。各Ｉ２Ｃコントローラ１０６には、対応するシステムボード２０に設けられた各ＧＰＩＯ２０４、各温度センサ２０５、各電圧センサ２０６、及びＦＲＵ  ＲＯＭ２０７が接続されている。ＩＯユニット３０との通信用の複数のＩ２Ｃコントローラ１０７（１０７−０〜１０７−ｎ）も同様に、ＩＯユニット３０毎に設けられている。各Ｉ２Ｃコントローラ１０７には、対応するＩＯユニット３０に設けられた各ＰＣＩｅスイッチ３０１、各ＧＰＩＯ３０２、各温度センサ３０３、各電圧センサ３０４、及びＦＲＵ  ＲＯＭ３０５が接続されている。それにより、ＭＭＢ１０のＣＰＵ１０１は、各システムボード２０、及び各ＩＯユニット３０の状態を直接、認識する。
【００２５】
各ＰＳＵ４０は、過電流が流れているか否かを表す過電流検出信号ＬＰＯ＿Ｎを出力する。ＭＭＢ１０には、各ＰＳＵ４０が出力する過電流検出信号ＬＰＯ＿Ｎの論理和を保持可能な２つのラッチ１１１、１１２が設けられている。ラッチ１１２は、ＣＰＵ１０１が過電流検出信号ＬＰＯ＿Ｎの状態を確認するために用いられる。ここでは、過電流が流れている場合、過電流検出信号ＬＰＯ＿Ｎはアサートされ、アサートされたときの過電流検出信号ＬＰＯ＿Ｎの値は１、つまりその信号レベルはＨ（High）と想定する。
【００２６】
一方、ラッチ１１１には、各ＡＮＤゲート１１４（１１４−０〜１１４−ｎ）の入力端子に接続されている。各ＡＮＤゲート１１４の別の入力端子には、それぞれ異なるレジスタ（例えばラッチ）１１３（１１３−０〜１１３−ｎ）の値の否定が入力される。それにより、各ＡＮＤゲート１１４は、ラッチ１１１から入力した値（過電流検出信号ＬＰＯ＿Ｎの値）と、対応するレジスタ１１３の値の否定との論理積を出力する。
【００２７】
１つのＡＮＤゲート１１４と１つのレジスタ１１３の組は、それぞれシステムボード２０毎に設けられている。これは、本実施形態では、システムボード２０とＩＯユニット３０のなかで、システムボード２０のみを、消費電力を制御する対象としているからである。各ＡＮＤゲート１１４をラッチ１１１と接続させているのは、過電流検出信号ＬＰＯ＿Ｎがアサートされたことを契機に、消費電力を抑えるべきシステムボード２０の消費電力を迅速、且つ自動的に抑えるようにするためである。消費電力を抑えるべきシステムボード２０の消費電力を迅速に抑えるように、ラッチ１１１のリセット（ＲＳＴ）はＣＰＵ１０１に行わせるようになっている。
【００２８】
システムボード２０とＩＯユニット３０のなかで消費電力を制御する対象をシステムボード２０のみとしているのは、システムボード２０はＩＯユニット３０とは異なり、何れかの構成部品を停止させることなく、消費電力を抑制できるからである。
【００２９】
現在では、半導体技術の進歩に伴い、ＣＰＵ２０１等の演算処理装置には膨大な数のトランジスタが搭載される。それにより、システムボード２０では、搭載されるＣＰＵ２０１によって消費される電力の割合が高い。しかし、ＣＰＵ２０１の多くには、省電力機能が搭載されるようになっている。
【００３０】
その省電力機能とは、例えばＤＶＦＳ（Dynamic Voltage Frequency Scaling）機能である。このＤＶＦＳ機能は、ＣＰＵのような演算処理装置に印加される電源電圧、及び／或いは、演算処理装置が用いるクロックの周波数を低下させることができる。電源電圧、及びクロック周波数の何れを低下させても、演算処理装置の消費電力はより抑えることができる。
【００３１】
電源電圧、及びクロック周波数の何れの低下に伴い、処理性能も低下する。特にクロック周波数は、処理性能に大きく影響する。しかし、処理性能が低下しても、演算処理装置は処理を継続して行うことができる。このようなことから、本実施形態では、消費電力を抑制する対象を、システムボード２０のみとしている。
【００３２】
各システムボード２０に搭載されたＢＭＣ２０３は、ＡＮＤゲート１１４から入力する論理積の値が１、つまりＡＮＤゲート１１４が出力する信号がＨとなった場合に、各ＣＰＵ２０１に消費電力の抑制を指示する。それにより、過電流検出信号ＬＰＯ＿Ｎがアサートされたことを契機に、ＡＮＤゲート１１４から入力する論理積の値が１となるシステムボード２０の消費電力が抑制される。
【００３３】
上記ＭＭＢ１０には、図２に表すように、電力制御部（図２中「Power Control Unit」と表記）１１、パーティションスロットリング制御部（図２中「Partition Throttling Control」と表記）１２、記憶部１３、及び信号スイッチ部（図２中「Signal Switch」と表記）１４が実現されている。
【００３４】
図２では、処理モジュールとして、システムボード２０のみを表している。これは、消費電力の抑制対象がシステムボード２０のみとしているためである。図２では、理解を容易とするために、消費電力の抑制の対象とならないＩＯユニット３０を省き、システムボード２０は４枚としている。ＰＳＵ４０は、４枚のシステムボード２０への電力供給に必要な台数（６台）としている。図２では、各システムボード２０の最大消費電力は７５０Ｗ、各ＰＳＵ４０（４０−０〜４０−５）の定格は５００Ｗと想定している。各ＩＯユニット３０、各ファン５０等に供給すべき電力は一定と想定し、その一定の電力の供給のためのＰＳＵ４０は省略している。
【００３５】
電力制御部１１、パーティションスロットリング制御部１２、記憶部１３、及び信号スイッチ部１４は、それぞれ以下のような機能を備えている。
【００３６】
電力制御部１１は、搭載されたＰＳＵ４０を認識し、認識したＰＳＵ４０のなかで電力を供給させるＰＳＵ４０を決定する。電力を供給させるＰＳＵ４０の台数は、例えば各システムボード２０に搭載されたＢＭＣ２０３が自システムボード２０の消費電力を算出する場合、各システムボード２０のＢＭＣ２０３が算出した消費電力に応じて変更する。或いは、各ＰＳＵ４０から供給される電力を測定する電力センサ等の測定手段が存在する場合、電力制御部１１は、その測定手段による測定結果に応じて、電力を供給させるＰＳＵ４０の台数を決定しても良い。
【００３７】
図１に表すＭＭＢ１０の構成では、ＦＷＨ１０２に格納されたファームウェアをメモリ１０３に読み出して実行するＣＰＵ１０１により制御が行われる。ＰＳＵ４０の認識はＩ２Ｃコントローラ１０８を介して行われ、各システムボード２０のＢＭＣ２０３が算出する消費電力量はＩ２Ｃコントローラ１０６を介して取得される。それにより、図１に表すＭＭＢ１０の構成では、電力制御部１１は、例えばＣＰＵ１０１，ＦＷＨ１０２、メモリ１０３、各Ｉ２Ｃコントローラ１０６、及びＩ２Ｃコントローラ１０８によって実現される。
【００３８】
信号スイッチ部１４は、システムボード２０のなかで消費電力の抑制の対象とすべきシステムボード２０の指定に用いられる。システムボード２０毎に設けられたＡＮＤゲート１１４、及びレジスタ１１３の組は、全て信号スイッチ部１４の構成要素となっている。
【００３９】
パーティションスロットリング制御部１２は、信号スイッチ部１４の設定を行う。その設定は、記憶部１３に格納可能なパーティション優先度定義ファイル１３ａを参照して行われる。
【００４０】
図３は、パーティション優先度定義ファイルの構成例を説明する図である。
複数枚のシステムボード２０を搭載可能な情報処理装置１では、１枚以上のシステムボード２０を１つのパーティションにまとめることができるのが普通である。各システムボード２０にそれぞれ任意の処理を実行させる場合、各システムボード２０はそれぞれ１つのパーティションと見なすことができる。このことから、本実施形態では、優先度に従った消費電力の抑制をパーティション単位に行うようにしている。パーティション優先度定義ファイル１３ａは、パーティション単位の消費電力の抑制のために用いられる情報である。
【００４１】
図２では、各システムボード２０が属するパーティション２５の例を表している。図２に表す例では、２枚のシステムボード２０−０及び２０−１はパーティション２５−０に属し、システムボード２０−２はパーティション２５−１に属し、システムボード２０−３はパーティション２５−２に属している。
【００４２】
図３に表すように、パーティション優先度定義ファイル１３ａには、優先度情報毎に、その優先度情報が表す優先度が割り当てられたパーティションの情報が格納される。図３に表記の「１」〜「３」は優先度情報の例を表し、優先度は、その数字が小さいほど高くなっている。図３に表記の「パーティション＃０（Ｐ＃０）」〜「パーティション＃２（Ｐ＃２）」はパーティション情報の例を表している。その例は、例えばパーティション番号である。図３に表すパーティション優先度定義ファイル１３ａの例は、パーティション２５−２→パーティション２５−１→パーティション２５−０、の順序で消費電力の抑制の対象を増やすことを表している。パーティション優先度定義ファイル１３ａは、端末装置２から送信されるか、或いは端末装置２から内容を指定することで記憶部１３に保存される。
【００４３】
パーティションスロットリング制御部１２は、パーティション優先度定義ファイル１３ａを参照して、レジスタ１１３のなかで０を格納すべきレジスタ１１３を特定し、特定したレジスタ１１３に０を格納する。その後は、ラッチ１１２に保持される値を監視し、そのラッチ１１２に０が保持された場合、つまり過電流検出信号ＬＰＯ＿Ｎがアサートされた場合、次に０を保持させるべきレジスタ１１３に０を保持させる。それにより、消費電力を抑制させるシステムボード２０を増やす。
【００４４】
パーティションスロットリング制御部１２は、消費電力を抑制させるシステムボード２０の追加を、過電流検出信号ＬＰＯ＿Ｎがアサートされなくなるまで行う。それにより、パーティションスロットリング制御部１２は、信号スイッチ部１４を介して、必要な数のシステムボード２０の消費電力を抑制し、何れのＰＳＵ４０からもデアサートの過電流検出信号ＬＰＯ＿Ｎが出力されるようにする。
【００４５】
パーティションスロットリング制御部１２は、過電流検出信号ＬＰＯ＿Ｎを単に保持するラッチ１１２を参照することにより、新たなレジスタ１１３に０を格納した結果を確認する。これは、ラッチ１１２には、ラッチ１１１と同じく、何れか１台のＰＳＵ４０が過電流検出信号ＬＰＯ＿Ｎをアサートさせていれば、アサートされた過電流検出信号ＬＰＯ＿Ｎの値が保持されるからである。
【００４６】
記憶部１３にパーティション優先度定義ファイル１３ａが保存されていない場合、パーティションスロットリング制御部１２は、例えば全てのレジスタ１１３に０（図３中「Ｌｏｗ」と表記）を格納する。それにより、パーティションスロットリング制御部１２は、過電流検出信号ＬＰＯ＿Ｎのアサートにより、全てのパーティション２５で消費電力を抑制させる。
【００４７】
図１に表すＭＭＢ１０の構成では、パーティションスロットリング制御部１２は、例えばＣＰＵ１０１，ＦＷＨ１０２、及びメモリ１０３によって実現される。記憶部１３は、例えばメモリ１０３である。
【００４８】
何れのＰＳＵ４０も過電流状態とならないようにするには、動作させるシステムボード２０の枚数に応じた台数のＰＳＵ４０に電力を供給させれば良い。それにより、何れかのＰＳＵ４０が過電流状態となるのは、多くの場合、電力を供給しているＰＳＵ４０のなかの１台以上のＰＳＵ４０に障害が発生した場合となる。短い時間内に複数台のＰＳＵ４０に障害が発生するのは稀であることから、普通は、１台のＰＳＵ４０に障害が発生する。
【００４９】
１台以上のＰＳＵ４０に発生した障害により、他の電力を供給しているＰＳＵ４０が過電流状態になる可能性がある。しかし、過電流状態となったＰＳＵ４０が過電流検出信号ＬＰＯ＿Ｎをアサートさせた場合、その過電流検出信号ＬＰＯ＿Ｎのアサートを契機に、１枚以上のシステムボード２０の消費電力が自動的に抑制される。そのため、例え１枚以上のシステムボード２０の消費電力の抑制によって過電流状態が解消しないＰＳＵ４０が存在したとしても、その過電流状態の程度は抑えられる。過電流状態の程度が抑えられることで、その過電流状態に対応可能な時間は長くなる。その結果、過電流検出信号ＬＰＯ＿Ｎがアサートされないように、各ＰＳＵ４０の監視、及び各システムボード２０の消費電力の監視を行わなくとも済むようになる。
【００５０】
具体的には、電力制御部１１は、動作を開始させる、或いは動作を停止させるシステムボード２０の発生に応じて、電力を供給させるＰＳＵ４０の台数を変更すれば良いようにできる。或いは、過電流検出信号ＬＰＯ＿Ｎのアサートにより、電力制御部１１を動作させるようにしても良い。パーティションスロットリング制御部１２は、過電流検出信号ＬＰＯ＿Ｎのアサートにより、動作させれば良い。
【００５１】
このように、電力制御部１１、及びパーティションスロットリング制御部１２は、共に、一時的に動作させても良いものとなる。そのため、電力制御部１１、及びパーティションスロットリング制御部１２を実現させるためのＣＰＵ１０１の単位時間当たりの負荷は大きく低減させることができる。
【００５２】
図５は、ＰＳＵに障害が発生した場合、つまり過電流検出信号ＬＰＯ＿Ｎがアサートされた場合のシーケンス例を説明する図である。図５において、ＳＧ１は各ＰＳＵ４０が出力する過電流検出信号ＬＰＯ＿Ｎの論理和の値、ＳＧ２はラッチ１１１に保持される値、レジスタ１１３−０〜１１３−３は対応するレジスタ１１３に格納された値、ＳＧ３−０〜３−３はＡＮＤゲート１１４−０〜１１４−３から出力される論理積の値、をそれぞれ表している。過電流検出信号ＬＰＯ＿Ｎの論理和値の値、保持される値、及び論理積の値は、０或いは１、つまりＬ或いはＨで表している。
【００５３】
図５では、図３に表すパーティション優先度定義ファイル１３ａに従って、信号スイッチ部１４の設定を行う場合を例にとっている。障害は、６台のＰＳＵ４０のうちの１台に発生したことを想定している。障害が発生する直前の各パーティション２５の消費電力は、パーティション２５−０では１５００Ｗ、パーティション２５−１及び２５−２では共に７００Ｗと想定している。消費電力の抑制は、直前の消費電力を１／２とすると想定している。
【００５４】
何れか１台のＰＳＵ４０に障害が発生すると、供給可能な電力量は最大で２５００Ｗとなる。各パーティション２５によって消費されている電力量は２９００（＝１５００＋７００＋７００）Ｗであるため、障害が発生していない１台以上のＰＳＵ４０は過電流検出信号ＬＰＯ＿Ｎをアサートさせる。それにより、ＳＧ１は時刻ｔ１でＨ（論理値が１）となり、その変化に伴い、ＳＧ２もＨとなる。このとき、レジスタ１１３−０〜１１３−２に格納されている値は１であり、レジスタ１１３−３に格納されている値は０である。このことから、時刻ｔ１でＳＧ３−３もＨとなる。
【００５５】
ＳＧ３−３がＨとなることで、パーティション２５−２、つまりシステムボード２０−３が消費電力の抑制を行い、その消費電力を７００Ｗから３５０Ｗに低下させる。しかし、パーティション２５全体の消費電力は２５５０Ｗであるため、ＳＧ１はＨの状態を維持する。このことから、パーティションスロットリング制御部１２は、時刻ｔ２に、レジスタ１１３−２の値を１から０に書き換える。その書き換えにより、ＳＧ３−２がＨとなる。
【００５６】
ＳＧ３−２がＨとなることで、パーティション２５−１、つまりシステムボード２０−２が消費電力の抑制を行い、その消費電力を７００Ｗから３５０Ｗに低下させる。その低下により、パーティション２５全体の消費電力は２２００Ｗになり、ＰＳＵ４０全体で供給可能な電力量を下回る。このことから、ＳＧ１は時刻ｔ３にＬとなる。ＳＧ１がＬとなることで、パーティションスロットリング制御部１２の制御が終了する。
【００５７】
電力制御部１１は、動作可能なＰＳＵ４０が存在すれば、動作可能なＰＳＵ４０を動作させる。ＰＳＵ４０を動作させた場合、電力制御部１１は、ラッチ１１１をリセットする。それにより、不要な消費電力の抑制を解除させる。障害が発生したＰＳＵ４０が交換された場合、動作可能なＰＳＵ４０が存在することになる。
【００５８】
図４は、スロットリング制御処理のフローチャートである。このスロットリング制御処理は、過電流検出信号ＬＰＯ＿Ｎのアサートを契機に、信号スイッチ部１４を制御するために実行される処理であり、ＣＰＵ１０１が、メモリ１０３に読み出したファームウェアのサブプログラムを実行することで実現される。次に図４を参照して、このスロットリング制御処理について詳細に説明する。
【００５９】
上記のように、信号スイッチ部１４は、予め行われた設定に従い、過電流検出信号ＬＰＯ＿Ｎのアサートにより１つ以上のパーティション２５に値が１の論理積を出力する。このことから、先ず、ＣＰＵ１０１は、値が１の論理積が出力されているパーティション２５で諸費電力が実際に抑制されるまでの時間を待つ（Ｓ１）。その時間が経過すると、ＣＰＵ１０１は、ラッチ１１２に保持された値から、過電流検出信号ＬＰＯ＿Ｎの状態を確認する（Ｓ２）。
【００６０】
その確認を行ったＣＰＵ１０１は、過電流検出信号ＬＰＯ＿Ｎがデアサートされたか否か判定する（Ｓ３）。ラッチ１１２に保持された値が０であった場合、Ｓ３の判定はＹｅｓとなり、ここでスロットリング制御処理が終了する。ラッチ１１２に保持された値が１であった場合、Ｓ３の判定はＮｏとなってＳ４に移行する。
【００６１】
Ｓ４では、ＣＰＵ１０１は、パーティション優先度定義ファイル１３ａを参照し、消費電力の抑制の対象となるパーティション２５があるか否か判定する。消費電力の抑制の対象となるパーティション２５がある場合、Ｓ４の判定はＹｅｓとなって、上記Ｓ１に戻る。消費電力の抑制の対象となるパーティション２５が無い場合、Ｓ４の判定はＮｏとなり、ここでスロットリング制御処理が終了する。
【００６２】
Ｓ４の判定がＮｏとなることによるスロットリング制御処理の終了では、必要な電力量の抑制が行われない。このことから、ＣＰＵ１０１は、例えば端末装置２に対し、その旨のメッセージの送信等を行うことになる。
【００６３】
なお、本実施形態では、パーティション優先度定義ファイル１３ａに従い、消費電力を抑制するパーティション２５を順次、増やすようにしているが、電力の供給に用いているＰＳＵ４０、及びその台数を考慮するようにしても良い。例えば１台のＰＳＵ４０の故障を想定し、そのＰＳＵ４０の故障によって過電流検出信号ＬＰＯ＿Ｎがアサートされても、その過電流検出信号ＬＰＯ＿Ｎがデアサートされるように、消費電力を抑制させるパーティション２５を選択させるようにしても良い。
【００６４】
また、本実施形態では、消費電力の抑制量は、全てのパーティション２５で同じとしているが、パーティション２５毎に異ならせても良い。また、消費電力を抑制するうえでの優先度に、消費電力の抑制量、或いは抑制手段を組み合わせ、パーティション毎に、消費電力を抑制するか否かの選択に加え、消費電力を抑制する際の抑制量を選択するようにしても良い。
【符号の説明】
【００６５】
１    情報処理装置
１０    ＭＭＢ
１１    電力制御部
１２    パーティションスロットリング制御部
１３    記憶部
１３ａ    パーティション優先度定義ファイル
１４    信号スイッチ部
２０    システムボード
３０    ＩＯユニット
４０、４０−０〜４０−ｎ    ＰＳＵ
１０１、２０１    ＣＰＵ
１０２    ＦＷＨ
１０３    メモリ
１１１、１１２    ラッチ
１１３、１１３−０〜１１３−ｎ    レジスタ
１１４、１１４−０〜１１４−ｎ    ＡＮＤゲート
２０３    ＢＭＣ
【図１】
2014142840.tif 000003
【図３】
2014142840.tif 000004
【図４】
2014142840.tif 000005
【図５】
2014142840.tif 000006
【図２】
2014142840.tif 000007