(57)【要約】  電源部から供給される電力が電源部の供給可能最大電力に達する時期を精度良く推定することを目的とする。  複数の電源部（１４）により、システムボード（１２）に電力を供給可能であり、電流センサ（２８）により、複数の電源部（１４）のうち稼動中の電源部（１４）からシステムボード（１２）への供給電力に相当する物理量を所定時間毎に測定する。そして、推定部（３２）により、電流センサ（２８）による測定結果の履歴に基づいて、稼動中の電源部（１４）からシステムボード（１２）への供給電力が、稼動中の電源部（１４）による供給可能最大電力に達する時期を推定する。
2013145294.tif 000002
【特許請求の範囲】
【請求項１】
情報処理部に電力を供給可能な複数の電源部と、
前記複数の電源部のうち稼動中の電源部から前記情報処理部への供給電力に応じた物理量を異なる複数の時点で測定する第１測定部と、
前記第１測定部による測定結果の履歴に基づいて、稼動中の電源部から前記情報処理部への供給電力が、前記稼動中の前記電源部によって供給可能な電力に関する所定の閾値に達するまでの時間を推定する推定部と、
を含む情報処理装置。
【請求項２】
前記推定部は、前記第１測定部によって前記異なる複数の時点で測定された前記物理量の時間変化に関する近似直線を作成し、作成した近似直線に基づいて前記所定の閾値に達するまでの時間を推定する請求項１に記載の情報処理装置。
【請求項３】
未稼働の前記電源部を起動する場合において、前記推定部によって推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼動状態となる迄の所要時間と同じか又は該所要時間よりも長い場合、未稼働の前記電源部を起動させて電力の供給を開始させるように制御する制御部を更に含む請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記制御部は、前記推定部で推定された所定の閾値に達するまでの時間が前記所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える請求項３に記載の情報処理装置。
【請求項５】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記推定部で推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼働状態となる迄の所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える制御部を更に含む請求項１又は請求項２に記載の情報処理装置。
【請求項６】
前記複数の処理部の各々に対応して各々設けられ、前記複数の処理部の各々の消費電力に相当する物理量を測定する複数の第２測定部を更に含み、
前記予め定められた条件は、対応する前記第２測定部によって測定された前記物理量が予め定められた閾値を超えているとの条件である請求項４又は請求項５に記載の情報処理装置。
【請求項７】
前記複数の処理部の各々に対応して各々設けられ、前記複数の処理部の各々についての消費電力に相当する物理量を測定する複数の第２測定部を更に含み、
前記予め定められた条件は、前記複数の第２測定部によって測定された前記物理量のうちの最大値であるとの条件である請求項４又は請求項５に記載の情報処理装置。
【請求項８】
情報処理部に電力を供給可能な複数の電源部と、
前記情報処理部で消費される電力が所定の閾値に達するまでの時間を推定する推定部と、
未稼働の前記電源部を起動する場合において、前記推定部によって推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼働状態となる迄の所要時間と同じか又は該所要時間よりも長い場合、未稼働の前記電源部を起動させて電力の供給を開始させるように制御する制御部と、
を含む情報処理装置。
【請求項９】
複数の電源部により情報処理部に電力を供給する供給ステップと、
前記複数の電源部のうち稼動中の電源部から前記情報処理部への供給電力に応じた物理量を定期的に測定する第１測定ステップと、
前記第１測定ステップによる測定結果の履歴に基づいて、稼動中の電源部から前記情報処理部への供給電力が、前記稼動中の前記電源部によって供給可能な電力に関する所定の閾値に達するまでの時間を推定する推定ステップと、
を含む給電制御方法。
【請求項１０】
前記推定ステップは、前記第１測定ステップによって前記定期的に測定された前記物理量の時間変化に関する近似直線を作成し、作成した近似直線に基づいて前記所定の閾値に達するまでの時間を推定する請求項９に記載の給電制御方法。
【請求項１１】
未稼働の前記電源部を起動する場合において、前記推定ステップによって推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼動状態となる迄の所要時間と同じか又は該所要時間よりも長い場合、未稼働の前記電源部を起動させて電力の供給を開始させるように制御する制御ステップを更に含む請求項９又は請求項１０に記載の給電制御方法。
【請求項１２】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記制御ステップは、前記推定ステップで推定された所定の閾値に達するまでの時間が前記所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える請求項１１に記載の給電制御方法。
【請求項１３】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記推定ステップで推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼働状態となる迄の所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える制御ステップを更に含む請求項９又は請求項１０に記載の給電制御方法。
【請求項１４】
前記複数の処理部の各々に対応して各々設けられた複数の第２測定部の各々により、前記複数の処理部の各々の消費電力に相当する物理量を測定する第２測定ステップを更に含み、
前記予め定められた条件は、対応する前記第２測定ステップによって測定された前記物理量が予め定められた閾値を超えているとの条件である請求項１２又は請求項１３に記載の給電制御方法。
【請求項１５】
前記複数の処理部の各々に対応して各々設けられた複数の第２測定部の各々により、前記複数の処理部の各々についての消費電力に相当する物理量を測定する第２測定ステップを更に含み、
前記予め定められた条件は、前記複数の第２測定部によって測定された前記物理量のうちの最大値であるとの条件である請求項１２又は請求項１３に記載の給電制御方法。
【請求項１６】
コンピュータに、
複数の電源部により情報処理部に電力を供給する供給ステップと、
前記複数の電源部のうち稼動中の電源部から前記情報処理部への供給電力に応じた物理量を定期的に測定する第１測定ステップと、
前記第１測定ステップによる測定結果の履歴に基づいて、稼動中の電源部から前記情報処理部への供給電力が、前記稼動中の前記電源部によって供給可能な電力に関する所定の閾値に達するまでの時間を推定する推定ステップと、
を含む処理を実行させるための給電制御プログラム。
【請求項１７】
前記推定ステップは、前記第１測定ステップによって前記定期的に測定された前記物理量の時間変化に関する近似直線を作成し、作成した近似直線に基づいて前記所定の閾値に達するまでの時間を推定する請求項１６に記載の給電制御プログラム。
【請求項１８】
未稼働の前記電源部を起動する場合において、前記推定ステップによって推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼動状態となる迄の所要時間と同じか又は該所要時間よりも長い場合、未稼働の前記電源部を起動させて電力の供給を開始させるように制御する制御ステップを更に含む請求項１６又は請求項１７に記載の給電制御プログラム。
【請求項１９】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記制御ステップは、前記推定ステップで推定された所定の閾値に達するまでの時間が前記所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える請求項１８に記載の給電制御プログラム。
【請求項２０】
前記情報処理部は、各々非省電力状態及び省電力状態で動作可能な複数の処理部を含み、
前記推定ステップで推定された所定の閾値に達するまでの時間が、未稼働の前記電源部を起動し、前記電源部が電力を供給可能な稼働状態となる迄の所要時間よりも短い場合、前記起動させた電源部が稼動状態になる迄の間、前記複数の処理部のうち、前記非省電力状態で動作しており、かつ予め定められた条件を満足する処理部の動作状態を前記省電力状態へ切り替える制御ステップを更に含む
請求項１７又は請求項１８に記載の給電制御プログラム。
【請求項２１】
前記複数の処理部の各々に対応して各々設けられた複数の第２測定部の各々により、前記複数の処理部の各々の消費電力に相当する物理量を測定する第２測定ステップを更に含み、
前記予め定められた条件は、対応する前記第２測定ステップによって測定された前記物理量が予め定められた閾値を超えているとの条件である
請求項１９又は請求項２０に記載の給電制御プログラム。
【請求項２２】
前記複数の処理部の各々に対応して各々設けられた複数の第２測定部の各々により、前記複数の処理部の各々についての消費電力に相当する物理量を測定する第２測定ステップを更に含み、
前記予め定められた条件は、前記複数の第２測定部によって測定された前記物理量のうちの最大値であるとの条件である請求項１９又は請求項２０に記載の給電制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、給電制御方法及び給電制御プログラムに関する。
【背景技術】
【０００２】
サーバ装置は、ＣＰＵ（central processing unit：中央処理装置）等が搭載されたシステムボードを備える。サーバ装置は、規模が大きくなるほどシステムボードの枚数が増え、それに伴ってＣＰＵの数も増えるので、消費電力も増大する。従って、稼動中のＣＰＵ等に対してできるだけ過不足なく電力を供給するために、電源部を複数設け、ＣＰＵの消費電力を予測し、ＣＰＵの消費電力が増加傾向にある場合には、予測した消費電力に応じて稼動させる電源部を１台ずつ追加させる措置がとられることがある。【０００３】
しかし、稼動させる電源部を追加起動するにしても、電源部の立ち上げ時間を考慮する必要がある。すなわち、電源部を起動してから供給電力が安定して稼動状態になるまでには或る程度の時間を要するため、その間にＣＰＵ等に対して電力の供給が間に合わなくならないようにするための対策が必要となる。この場合、電源部を起動してから供給電力が安定して稼動状態になるまでの間（以下、「安定待ち時間」という）は、ＣＰＵを省電力状態とし、安定待ち時間が経過したときにＣＰＵを通常状態に復帰させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３０２０５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、そもそもＣＰＵの消費電力を予測する精度が低いと、稼動させる電源部の台数を精度良く決めることが困難となる。稼動させる電源部の台数を精度良く決められないということは、一例として図８に示すように、実際は１台の電源部で消費電力を賄うことができるにも拘らず、２台の電源部を稼動させてしまうという事態を引き起こす虞があり、この場合は電力が無駄に消費される。逆に、安定待ち時間に急にＣＰＵの消費電力が増加すると、一例として図９に示すように、ＣＰＵの電力の消費に対して電力の供給が間に合わなくなるという事態を引き起こす虞がある。【０００６】
１つの側面では、本発明は、電源部から供給される電力が電源部の供給可能最大電力に達する時期を精度良く推定することを目的とする。
また、他の側面では、本発明は、起動した電源が電力を供給可能な稼働状態となる迄の所要時間を考慮して、電源の起動制御を行うことを目的とする。
【課題を解決するための手段】
【０００７】
開示の技術は、複数の電源部により、情報処理部に電力を供給可能であり、第１測定部により、前記複数の電源部のうち稼動中の電源部から前記情報処理部への供給電力に応じた物理量を異なる複数の時点で測定する。そして、開示の技術は、推定部により、前記第１測定部による測定結果の履歴に基づいて、稼動中の電源部から前記情報処理部への供給電力が、前記稼動中の前記電源部によって供給可能な電力に関する所定の閾値に達するまでの時間を推定する。
【発明の効果】
【０００８】
１つの実施態様によれば、電源部から供給される電力が電源部の供給可能最大電力に達する時期を精度良く推定することができる、という効果を有する。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係るサーバ装置の要部機能の一例を示す機能ブロック図である。
【図２】実施形態に係るサーバ装置の電気系の要部構成の一例を示すブロック図である。
【図３】実施形態に係る供給可能最大電力ＤＢの構成の一例を示す模式図である。
【図４】実施形態に係る安定待ち時間ＤＢの構成の一例を示す模式図である。
【図５】実施形態に係る給電制御処理の流れの一例を示すフローチャートである。
【図６】実施形態に係る推定部により作成される近似直線の一例を示すグラフである。
【図７】実施形態に係る制御部によりＣＰＵを非省電力状態から省電力状態に移行させてから再び非省電力状態に復帰させる場合の供給電力の推移の一例を示すグラフである。
【図８】従来のサーバ装置において電力を無駄に消費している場合の供給電力と実際の消費電力との関係性の一例を示すグラフである。
【図９】従来のサーバ装置において電力の供給能力が不足している場合の供給電力と実際の消費電力との関係性の一例を示すグラフである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。なお、以下の説明では、開示の技術に係る情報処理装置の一例として、ＣＰＵやメモリを含む処理部が各々搭載された複数のシステムボードに対して複数の電源部から駆動用の電力が供給される構成のサーバ装置を例に挙げて説明する。しかし、開示の技術はこれに限定されるものではない。開示の技術は、例えば、据置型のパーソナルコンピュータや並列演算装置などの種々の情報処理装置にも適用可能である。
【００１１】
図１には、本実施形態に係るサーバ装置１０の要部機能の一例が示されている。サーバ装置１０は、情報処理部の一例である複数のシステムボード１２、複数の電源部１４及びサービスプロセッサ１６を備えている。システムボード１２は、処理部の一例であるＣＰＵ１８、メモリ２２及び開示の技術に係る第２測定部の一例である電流センサ２４を備えている。ＣＰＵ１８は、入力された情報に対して予め定められた処理を実行する。また、ＣＰＵ１８は、省電力機能を備えており、非省電力状態及び省電力状態で動作可能とされている。ＣＰＵ１８は、通常時は非省電力状態で動作し、省電力機能を働かせることで非省電力状態での動作から省電力状態での動作へと切り替わる。そして、省電力機能の作動状態を解除することで省電力状態での動作から非省電力状態での動作へ復帰する。なお、ここで言う「省電力状態」の一例としては、いわゆるスリープ状態と称される状態やスタンバイ状態と称される状態などの動作停止状態や、通常動作時よりも消費電力が少ない低動作状態（通常動作時よりも単位時間当たりの動作クロック数が少ない状態）が挙げられる。従って、ここで言う「非省電力状態」とは、「省電力状態」よりも消費電力が多い動作状態を意味する。
【００１２】
メモリ２２は、不揮発性の記憶部及び揮発性の記憶部を含む。不揮発性の記憶部の一例としてはフラッシュメモリが挙げられる。不揮発性の記憶部には、ＣＰＵ１８によって実行される各種プログラムやＣＰＵ１８によって用いられる各種パラメータが予め記憶されている。揮発性の記憶部の一例としてはＲＡＭ（Random Access Memory）が挙げられる。揮発性の記憶部は、ＣＰＵ１８による各種プログラムの実行時のワークエリア等として用いられる。
【００１３】
電流センサ２４は、システムボード１２毎に搭載されたＣＰＵ１８の各々に対応して各々設けられており、対応するＣＰＵ１８の消費電力に相当する物理量を測定する。本実施形態では、「物理量」の一例として、ＣＰＵ１８に供給される電流の大きさ（以下、「電流値」という）を採用している。なお、「物理量」は電流値に限定されるものではく、ＣＰＵ１８に供給される電圧の大きさ（電圧値）であってもよい。
【００１４】
複数の電源部１４は、複数のシステムボード１２を動作させるための電力を複数のシステムボード１２に対して供給する。本実施形態では、例えば複数の電源部１４は複数のシステムボード１２に電力供給線２６を介して接続されており、各々コンセントから供給された商用交流（ＡＣ）を直流に変換して電力供給線２６を介して複数のシステムボード１２へ電力を供給する。なお、システムボード１２に供給された電力は主にＣＰＵ１８で消費される。
【００１５】
また、個々の電源部１４は、開示の技術に係る第１測定部の一例である電流センサ２８を各々備えている。電流センサ２８は、電源部１４から複数のシステムボード１２への供給電力に相当する物理量を所定時間毎に測定する。また、ここで言う「所定時間」とは、例えば電源部１４の安定待ち時間に対して１未満の正の値である所定係数を乗じて得た時間が挙げられる。例えば電源部１４の安定待ち時間が０．５秒であり、所定係数を“０．０１”とした場合、所定時間は“０．００５秒”となる。また、「所定時間毎」に測定するのに代えて、後述の推定部３２による推定処理の前の異なる複数の時点で測定を行うようにしてもよい。
【００１６】
サービスプロセッサ１６は、サーバ装置１０全体の動作を制御する。サービスプロセッサ１６は、アドレスバスやシステムバス等を含むバス３０を介して複数のシステムボード１２及び複数の電源部１４に接続されている。従って、サービスプロセッサ１６は、電流センサ２４，２８で測定された電流値の取得と、複数のシステムボード１２の各々に対する制御と、複数の電源部１４の各々に対する制御と、を行うことができる。
【００１７】
サービスプロセッサ１６は、推定部３２及び制御部３４を備えている。推定部３２は、電流センサ２８による測定結果の履歴に基づいて、稼動中の電源部１４からシステムボード１２への供給電力が、稼働中の電源部１４によって供給可能な電力に関する所定の閾値に達するまでの時間を推定する。なお、ここでは、一例として、推定部３２は、稼動中の電源部１４による供給可能最大電力に達する時期（以下、「供給可能電力到達時期」という）を推定する。しかし、開示の技術はこれに限定されるものではない。例えば、供給可能最大電力に対して多少のマージンを加味した値に達する時期を推定する。しかし、開示の技術はこれに限定されるものではない。例えば、供給可能最大電力に対して多少のマージンを加味した値に達する時期（供給可能最大電力に対して多少のマージンを加味した値に達するまでの時間）を推定してもよい。また、推定部３２は、例えば、電流センサ２８の所定時間毎に測定された電流値の時間変化に関する近似直線を作成し、作成した近似直線に基づいて供給可能電力到達時期を推定する。なお、ここでは近似直線を採用しているが、開示の技術はこれに限定されるものではなく、例えば近似曲線であってもよい。
【００１８】
制御部３４は、未稼働の電源部１４を起動する場合において、所定条件を満足した場合に、未稼働の電源部１４を起動させて電力の供給を開始させるように制御する。ここで言う「所定条件を満足した場合」とは、例えば推定部３２によって推定された所定の閾値に達するまでの時間が、未稼働の電源部１４を駆動し、電源部１４が電力を供給可能な稼働状態となる迄の所要時間と同じか又はその所要時間よりも長い場合である。すなわち、供給可能電力到達時期が、電源部１４が電力を供給可能な稼働状態となるまでの時期と同じか又はその時期よりも遅い場合である。つまり、電流センサ２８にりょう測定結果の履歴に基づいて、システムボード１２への供給電力が近い将来稼働中の電源部１４による供給可能最大電力に達することが予想（推定）される場合に、制御部３４が未稼働の電源部１４を起動させて電力供給を開始させる。なお、制御部３４は、推定部３２の推定結果を用いて、追加の電源部１４の投入が必要か否かの判断、及び電源部１４の投入が必要な場合に、ＣＰＵ１８を省電力状態にする必要がある否かの判断を行う。
【００１９】
制御部３４は、供給可能電力到達時期が現時刻より安定待ち時間後の時刻よりも早い場合、起動させた電源部１４が稼動状態になる迄の間、複数のＣＰＵ１８のうち非省電力状態で動作しており且つ所定条件を満足するＣＰＵ１８の動作状態を省電力状態へ切り替える。なお、本実施形態では、上記の「所定条件」の一例として、複数の電流センサ２４によって測定された電流値のうち最大値であるとの条件を採用している。しかし、開示の技術はこれに限定されるものではない。例えば、上記の「所定条件」の他の例としては、対応する電流センサ２４によって測定された電流値が予め定められた閾値を超えているとの条件が挙げられる。ここで言う「予め定められた閾値」とは、例えば電力の供給能力が不足しない消費電力に相当する電流値の上限値であり、実機を用いた実験やシミュレーションなどによって予め得られた値を指す。
【００２０】
また、制御部３４は、稼動中の電源部１４が複数であり且つ複数の電流センサ２８によって測定された電流値により特定される複数のシステムボード１２への供給電力の総和が、所定電力に達していない場合、稼動中の１個の電源部１４の稼動を停止させる。ここで言う「所定電力に達していない場合」とは、例えば稼動中の１個の電源部１４の稼動を停止させたときに稼動中のまま残存している電源部１４の供給可能最大電力に達していない場合を指す。
【００２１】
図２には、サービスプロセッサ１６の電気系の要部構成の一例が示されている。図２に示すように、サービスプロセッサ１６は、ＣＰＵ４２、メモリ４４及び不揮発性の記憶部４６を備え、これらは上記のバス３０を介して互いに接続されている。なお、記憶部４６は、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどによって実現できる。記録媒体としての記憶部４６には、給電制御処理プログラム５０、供給可能最大電力ＤＢ（データベース）５２及び安定待ち時間ＤＢ５４が記憶されている（詳細は後述）。
【００２２】
ＣＰＵ４２は、記憶部４６から給電制御処理プログラム５０を読み出してメモリ４４に展開し、給電制御処理プログラム５０が有するプロセスを順次実行する。給電制御処理プログラム５０は、推定プロセス５６及び制御プロセス５８を有する。ＣＰＵ４２は、推定プロセス５６を実行することで、図１に示す推定部３２として動作する。ＣＰＵ４２は、制御プロセス５８を実行することで、図１に示す制御部３４として動作する。
【００２３】
なお、ここでは給電制御処理プログラム５０を記憶部４６から読み出す場合を例示したが、必ずしも最初から記憶部４６に記憶させておく必要はない。例えば、サービスプロセッサ１６に接続されて使用されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの任意の「可搬型の物理媒体」に先ずは給電制御処理プログラム５０を記憶させておいてもよい。そして、サービスプロセッサ１６がこれらの可搬型の物理媒体から給電制御処理プログラム５０を取得して実行するようにしてもよい。また、インターネットやＬＡＮ（Local Area Network）などを介してサービスプロセッサ１６に接続される他のコンピュータまたはサーバ装置などに給電制御処理プログラム５０を記憶させておいてもよい。この場合は例えばサービスプロセッサ１６がこれらから給電制御処理プログラム５０を取得して実行する態様が例示できる。
【００２４】
図３には、供給可能最大電力ＤＢ５２の構成の一例が模式的に示されている。図３に示すように、供給可能最大電力ＤＢ５２には、電源部ＩＤ（identification）と供給可能最大電力の値とが１対１で対応付けられて記憶されている。ここで言う「電源部ＩＤ」とは、例えば複数の電源部１４の各々に対して予め付与されたＩＤであって各電源部１４を一意に特定することができるＩＤを指す。また、ここで言う「供給可能最大電力の値」とは、例えば電源部ＩＤにより特定される電源部１４が複数のシステムボード５２に対して供給することができる最大電力の値を指す。従って、ＣＰＵ４２は、供給可能最大電力ＤＢ５２を参照して電源部ＩＤから供給可能最大電力の値を一意に導出することができる。
【００２５】
図４には、安定待ち時間ＤＢ５４の構成の一例が模式的に示されている。図４に示すように、安定待ち時間ＤＢ５４には、電源部ＩＤと安定待ち時間とが１対１で対応付けられて記憶されている。すなわち、電源部ＩＤにより特定される電源部１４毎に、対応する電源部１４の安定待ち時間が対応付けられている。従って、ＣＰＵ４２は、安定待ち時間ＤＢ５４を参照して電源部ＩＤから安定待ち時間を一意に導出することができる。
【００２６】
次に本実施形態の作用として、ＣＰＵ４２が給電制御処理プログラム５０を実行することでサーバ装置１０のサービスプロセッサ１６で行われる給電制御処理について、図５を参照して説明する。図５は、ＣＰＵ４２の処理負荷増大等により、ＣＰＵ４２への電力を供給する電源部１４を追加して起動する場合等における給電制御処理の例を説明する図である。先ず、ステップ１００において、制御部３４により、起動対象とされた１台の電源部１４の供給可能最大電力の値が供給可能最大電力ＤＢ５２から取得される。なお、ステップ１００において、既に稼働中の電源部１４が存在する場合は、取得された供給可能最大電力の値は既に稼働中の電源部１４の供給可能最大電力に加算されることで、稼働中の全て電源部１４による供給可能最大電力が算出される。
【００２７】
次のステップ１０２では、制御部３４により、起動対象とされた１台の電源部１４が起動されると共に、起動された電源部１４に対応付けられた安定待ち時間が取得される。そして、制御部３４は、起動した電源部１４が、供給電力が安定する稼動状態となる安定稼動時刻（現時刻より、取得された安定待ち時間だけ後の時刻）を演算する。次のステップ１０４では、推定部３２により、複数の電源部１４の各々における電流センサ２８により測定された電流値が取得される。次のステップ１０６では、推定部３２により、上記のステップ１０４で取得された電流センサ２８毎の電流値が現時刻と対応付けられてメモリ４４に記憶される。
【００２８】
次のステップ１０８では、推定部３２により、上記のステップ１０４で電流値が所定回数取得されたか否かが判定される。すなわち、上記のステップ１０４が所定回数（例えば３回）行われたか否かが判定される。本ステップ１０８において、上記のステップ１０４で電流値が所定回数取得されていない場合は判定が否定されてステップ１１２へ移行する。ステップ１１２では、推定部３２により、上記のステップ１０４が行われてから（最新に電流値の取得が行われてから）所定時間（例えば０．００５秒）経過したか否かが判定される。本ステップ１１２において、上記のステップ１０４が行われてから所定時間経過した場合は判定が肯定されてステップ１０４へ移行する。本ステップ１１２において、上記のステップ１０４が行われてから所定時間経過していない場合は判定が否定されて本ステップ１１２の判定が再び行われる。
【００２９】
一方、ステップ１０８において、上記のステップ１０４で電流値が所定回数取得された場合は判定が肯定されてステップ１１０へ移行する。ステップ１１０では、推定部３２により、上記のステップ１０２で起動された電源部１４についての供給可能電力到達時期が推定される。すなわち、本ステップ１１０では、推定部３２により、上記のステップ１０６でメモリ４４に記憶された電流センサ２８毎の所定時間毎の電流値の履歴に基づいて供給可能電力到達時期が推定される。例えば、先ず、メモリ４４に記憶された電流センサ２８毎の所定時間毎の電流値から所定時間毎の供給電力の総和が算出され、算出された供給電力の総和の時間変化に関する近似直線が作成される。そして、作成された近似直線と上記のステップ１００で取得された供給可能最大電力の値とから供給可能電力到達時期が特定されることにより供給可能電力到達時期が推定される。例えば図６に示すように時刻Ｔ１，Ｔ２，Ｔ３の各々について供給電力の総和が各々算出され、算出された供給電力について、例えば最小二乗法に基づく近似直線が作成される。そして、作成された近似直線と供給可能最大電力を示す直線との交点に対応する時刻が供給可能電力到達時期として特定される。なお、近似直線の傾きが“０”以下の場合は前回推定された供給可能電力到達時期が採用され、前回推定された供給可能電力到達時期が存在しない場合は予め定められた傾き（デフォルト設定されている正の値の傾き）が近似直線の傾きとして採用される。なお、近似直線の傾きが“０”以下の場合は、便宜的に供給可能電力到達時期を∞（無限大）に設定してもよい。
【００３０】
次のステップ１１１では、推定部３２により、上記のステップ１１０で推定された供給可能電力到達時期がメモリ４４に記憶される。次のステップ１１４では、制御部３４により、メモリ４４に記憶された最新の供給可能電力到達時期が、ステップ１０２で演算された安定稼動待ち時刻よりも早いか否かが判定される。本ステップ１１４において、最新の供給可能電力到達時期が、安定稼動待ち時刻よりも早い場合は判定が肯定されてステップ１１６へ移行する。
【００３１】
ステップ１１４の判定が肯定された場合、先のステップ１０２で起動した電源部１４の供給電力が安定する時期が到来する前に、供給電力の不足が生じる可能性がある。このため、ステップ１１６では、制御部３４により、複数のシステムボード１２の各々における電流センサ２４により測定された電流値が取得される。次のステップ１１８では、制御部３４により、上記のステップ１１６で取得された電流値に基づいて、非省電力状態のＣＰＵ１８の内から省電力状態にするＣＰＵ１８が特定される。つまり、上記のステップ１１６で取得された電流値のうちの最大値のＣＰＵ１８が省電力状態にする対象として特定される。なお、開示の技術はこれに限定されるものではない。例えばステップ１１８において、制御部３４により、上記のステップ１１６で取得された電流値で予め定められた閾値を超える電流値の１個以上のＣＰＵ１８を、省電力状態にする対象として特定するようにしてもよい。
【００３２】
次のステップ１２０では、制御部３４により、上記のステップ１１８で特定されたＣＰＵ１８が省電力状態とされる。つまり、ここでは、上記のステップ１１６で取得された電流値のうちの最大値のＣＰＵ１８が省電力状態とされる。従って、上記のステップ１１６で取得された電流値のうちの最大値のＣＰＵ１８が省電力状態とされない場合と比較して、消費電力を大幅に削減することができる。なお、上記のステップ１１６で取得された電流値のうちの最大値のＣＰＵ１８に代えて、上記のステップ１１６で取得された電流値のうちの最小値のＣＰＵ１８、又は消費電力の昇順に複数個のＣＰＵ１８を省電力状態にしてもよい。この場合は、上記のステップ１１６で取得された電流値のうちの最大値のＣＰＵ１８を省電力状態にする場合と比較して、高負荷で動作しているＣＰＵ１８による処理に悪影響を及ぼすことを抑制することができる。
【００３３】
ステップ１２２では、制御部３４により、安定稼動時刻が到来したか否かが判定される。本ステップ１２２において、安定稼動時刻が到来していない場合は判定が否定されて本ステップ１２２の判定が再び行われる。本ステップ１２２において、安定稼動時刻が到来した場合は判定が肯定されてステップ１２４へ移行する。ステップ１２４では、制御部３４により、上記のステップ１２２で省電力状態とされたＣＰＵ１８が非省電力状態に復帰された後、ステップ１３４へ移行する。
【００３４】
このように、安定稼動時刻が到来する前に最新の供給可能電力到達時期が到来することが予想された場合（ステップ１１４の判定が肯定された場合）、一例として図７に示すように非省電力状態のＣＰＵ１８を省電力状態している（ステップ１２０）。これにより、電力の供給不足を未然に回避することができる。そして、安定稼動時刻が到来した場合に省電力状態のＣＰＵ１８を非省電力状態に復帰させることで（ステップ１２４）、ＣＰＵ１８の処理能力が不必要に抑制された状態が継続することを回避することができる。
【００３５】
一方、ステップ１１４において、最新の供給可能電力到達時期が安定稼動時刻よりも遅い場合は判定が否定されてステップ１２５へ移行する。ステップ１２５では、制御部３４により、安定稼動時刻が到来したか否かが判定される。本ステップ１２５において、安定稼動時刻が到来していない場合は判定が否定されて本ステップ１２５の判定が再び行われる。本ステップ１２５において、安定稼動時刻が到来した場合は判定が肯定されてステップ１２６へ移行する。ステップ１２６では、制御部３４により、最新の供給可能電力到達時期よりも次の起動対象の電源部１４の安定待ち時間だけ前の時刻が到来したか否かが判定される。本ステップ１２６において、最新の供給可能電力到達時期よりも次の起動対象の電源部１４の安定待ち時間だけ前の時刻が到来した場合は判定が肯定されてステップ１３２へ移行する。この場合、未稼働の電源部１４があれば当該電源部１４が起動される。本ステップ１２６において、最新の供給可能電力到達時期よりも次の起動対象の電源部１４の安定待ち時間だけ前の時刻が到来していない場合は判定が否定されてステップ１２８へ移行する。
【００３６】
ステップ１２８では、制御部３４により、現時点でメモリ４４に比較対象となる供給可能電力到達時期が記憶されているか否かが判定される。すなわち、複数の供給可能電力到達時期がメモリ４４に記憶されているか否かが判定される。本ステップ１２８において、メモリ４４に比較対象となる供給可能電力到達時期が記憶されていない場合は判定が否定されてステップ１０４へ移行する。この場合、新たな供給可能電力到達時期が推定される。また、本ステップ１２８において、メモリ４４に比較対象となる供給可能電力到達時期が記憶されている場合は判定が肯定されてステップ１３０へ移行する。
【００３７】
ステップ１３０では、制御部３４により、メモリ４４に記憶された最新の供給可能電力到達時期がメモリ４４に記憶された前回の供給可能電力到達時期よりも早いか否かが判定される。本ステップ１３０において、メモリ４４に記憶された最新の供給可能電力到達時期がメモリ４４に記憶された前回の供給可能電力到達時期よりも早い場合は判定が肯定されてステップ１３２へ移行する。
【００３８】
ステップ１３０の判定が肯定された場合、システムボード１２の消費電力の増加速度が増大傾向にあり、供給電力の不足が早期に発生する可能性があると判断できる。このため、ステップ１３２では、制御部３４により、現時点で全ての電源部１４が起動しているか否かが判定される。本ステップ１３２において全ての電源部１４が起動していない場合は判定が否定されてステップ１００へ移行する。この場合、未稼働の電源部１４が起動される。また、本ステップ１３２において、全ての電源部１４が起動している場合は判定が肯定されてステップ１３４へ移行する。なお、本実施形態では、個々の電源部１４の供給可能電力及び電源部１４の台数が、サーバ装置１０全体の最大消費電力に応じて定められている。従って、ステップ１３２の判定が肯定された場合は、供給電力の不足が生じることはない。
【００３９】
ステップ１３４では、制御部３４により、本給電制御処理の終了条件（例えば、サーバ装置１０の動作を停止する指示がＣＰＵ４２に入力された等）を満足したか否かが判定される。本ステップ１３４において、本給電制御処理の終了条件を満足した場合は判定が肯定されて本給電制御処理を終了する。本ステップ１３４において、本給電制御処理の終了条件を満足しない場合は判定が否定されてステップ１０４へ移行する。
【００４０】
一方、ステップ１３０において、メモリ４４に記憶された最新の供給可能電力到達時期がメモリ４４に記憶された前回の供給可能電力到達時期よりも早くない場合は判定が否定されてステップ１３６へ移行する。
【００４１】
ステップ１３０の判定が否定された場合、システムボード１２は、消費電力が増加しているものの増加速度が減少傾向にあるか、或いは消費電力が減少傾向にあると判断できる。このため、ステップ１３８では最新の供給可能電力到達時期が所定期間以上先か否かが判定される。本ステップ１３８において、最新の供給可能電力到達時期が所定期間以上先でない場合は判定が肯定されてステップ１０４へ移行する。本ステップ１３８において、最新の供給可能電力到達時期が所定期間以上先の場合は判定が肯定されてステップ１４０へ移行する。
【００４２】
ステップ１４０では、制御部３４により、現時点で稼動している電源部１４のうちの１台の稼動を停止しても電力の供給不足に陥らないか否かが判定される。本ステップ１４０において、１台の電源部１４の稼動を停止すると電力の供給不足に陥る場合は判定が否定されてステップ１０４へ移行する。本ステップ１４０において、１台の電源部１４の稼動を停止しても電力の供給不足に陥らない場合は判定が肯定されてステップ１４２へ移行する。ステップ１４２では、制御部２４により、現時点で稼動している電源部１４のうちの１台の稼動が停止され、その後、ステップ１０４へ移行する。
【００４３】
以上詳細に説明したように、本実施形態に係るサーバ装置１０によれば、推定部３２により供給可能電力到達時期が定期的に推定されて更新される。そのため、供給電力の安定時期が到来する前に供給可能電力到達時期が到来することが予想される場合にはＣＰＵ１８を省電力状態にすることで電力の供給能力が不足するという事態の発生を抑制することができる。また、安定稼動時刻が到来した場合には電源部１４を追加稼動させることで電力の供給能力が不足するという事態の発生を抑制することができる。また、最も新しく取得された供給可能電力到達時期が過去に取得された供給可能電力到達時期よりも早く到来することが予想される場合にも電源部１４を追加稼動させることで電力の供給能力が不足するという事態の発生を抑制することができる。更に、最も新しく取得された供給可能電力到達時期が、過去に取得された供給可能電力到達時期以降に到来することが予想され且つ諸条件が満足した場合には１台の電源部１４の稼動を停止しているので、電力の不必要な消費を抑制することができる。
【００４４】
なお、上記では、ＣＰＵ１８に供給された電流値を電流センサ２４で測定することによりＣＰＵ１８の消費電力を算出する態様を例示したが、開示の技術はこれに限定されるものではない。例えば、ＣＰＵ１８の動作クロック周波数を検知又は取得し、検知又は取得した動作クロック周波数からＣＰＵ１８の消費電力を算出するようにしてもよい。ＣＰＵ１８に供給される電流はダイナミック電流とリーク電流の合計であり、このうちダイナミック電流は動作クロック周波数に応じて変化し、リーク電流は電圧及び温度に依存して変化する。このため、動作クロック周波数からダイナミック電流を算出して消費電力を算出する場合、リーク電流は一定値とみなしてよいし、電圧及び温度を検知又は取得してリーク電流を算出してもよい。また、例えば、ＣＰＵ１８で実行されるプログラムの処理負荷からＣＰＵ１８の消費電力を見積もるようにしてもよい。
【００４５】
また、上記では、電流センサ２４が電源部１４毎に設けられているが、開示の技術はこれに限定されるものではなく、電力供給線２６の電流値を測定する構成を採用してもよい。この場合、複数の電源部１４から出力された電流が合流した先の電力供給線２６の電流値を測定する単一の電流センサ２４を設ければ構成が簡単になるので好ましい。
【００４６】
また、上記では、サーバ装置１０が複数のシステムボード１２を有している態様を例示したが、開示の技術はこれに限定されるものではなく、システムボード１２が単数であっても成立することは言うまでもない。
【００４７】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【図１】
2013145294.tif 000003
【図２】
2013145294.tif 000004
【図３】
2013145294.tif 000005
【図４】
2013145294.tif 000006
【図５】
2013145294.tif 000007
【図６】
2013145294.tif 000008
【図７】
2013145294.tif 000009
【図８】
2013145294.tif 000010
【図９】
2013145294.tif 000011
【国際調査報告】
2013145294.tif 000012
2013145294.tif 000013