(57)【要約】      （修正有）【課題】マルチノードシステムへの電力を動的に調和させる。【解決手段】マザーボード１００において、シャーシ管理コントローラ１４２は、電源１０２、１０８から複数のノードの各々への電力を制御するように動作する。シャーシ管理コントローラは、複数のノードの各々の設定電力及び複数のノードの各々が消費する実際の電力を決定する。シャーシ管理コントローラは、実際の電力及び複数のノードの未使用電力と合計追加調和電力に基づいて、複数のノードの各々の次の設定電力を決定する。シャーシ管理コントローラは、複数のノードの各々の電力消費を最大でも設定電力とするように制御する命令をそのノードへ送る。【選択図】図１
2018181319.tif 000002
【特許請求の範囲】
【請求項１】
電力を動的に分配するマルチノードシステムであって、
複数のノード、
前記複数のノードの各々に電力を供給する電源、
前記電源と結合する管理コントローラ、
を有し、
前記管理コントローラは、前記複数のノードの各々へそのノードの電力消費を制御する命令を行うように動作可能で、かつ、
前記管理コントローラはさらに、
前記複数のノードの各々の設定電力及び前記複数のノードの各々によって消費される実際の電力を決定し、
前記実際の電力、及び、前記複数のノードの未使用合計電力と合計追加調和電力に基づいて前記複数のノードの各々の次の設定電力を決定し、かつ、
前記複数のノードの各々の前記電力消費を最大でもそのノードの前記次の設定電力となるように制御する命令をそのノードへ送る、
ことによって前記複数のノードの各々へ供給された前記電力を調和させるように動作可能である、
マルチノードシステム。
【請求項２】
請求項１に記載のマルチノードシステムであって、前記複数のノードの各々の前記次の設定電力が、前記複数のノードの各々の追加調和電力を決定し、前記複数のノードの各々の電力使用を、そのノードによって消費される実際の電力及びそのノードの前記設定電力に基づいて決定し、かつ、前記未使用合計電力と電力使用割合に基づいて前記複数のノードの各々の再追加調和電力を決定することに基づく、マルチノードシステム。
【請求項３】
請求項２に記載のマルチノードシステムであって、前記未使用合計電力が、前記電源の電力消費値から、前記複数のノードに結合されるセンサによって決定される当該システムの合計電力を減じることによって決定される、マルチノードシステム。
【請求項４】
請求項２に記載のマルチノードシステムであって、前記複数のノードの各々の前記追加調和電力が、そのノードの前記実際の電力の係数によって決定される、マルチノードシステム。
【請求項５】
請求項４に記載のマルチノードシステムであって、前記係数が一定値である、マルチノードシステム。
【請求項６】
請求項４に記載のマルチノードシステムであって、前記係数が変動する値である、マルチノードシステム。
【請求項７】
請求項１に記載のマルチノードシステムであって、前記複数のノードの各々が１つ以上のプロセッサを含み、かつ、
当該システムは、前記複数のノードの各々を含むマルチノードマザーボードである、
マルチノードシステム。
【請求項８】
請求項１に記載のマルチノードシステムであって、前記複数のノードのうちの少なくとも一がシステムデバイスである、マルチノードシステム。
【請求項９】
請求項１に記載のマルチノードシステムであって、前記管理コントローラがさらに、前記複数のノードの各々の前記設定電力用に前記複数のノードの各々の前記次の設定電力を用いることによって、前記複数のノードの各々に供給される前記電力の調和を反復するように動作し得る、マルチノードシステム。
【請求項１０】
各々が電力を消費する複数のノードを含むシステム内の電力を管理する方法であって、
前記複数のノードの各々の設定電力及び消費される実際の電力を決定するステップ、
前記実際の電力、及び、前記複数のノードの未使用合計電力と合計追加調和電力に基づいて次の設定電力を決定するステップ、並びに、
前記複数のノードの各々への前記実際の電力を最大でも前記次の設定電力となるように制御するステップ、
を有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は概して、マルチノードシステムにおける電力管理システムに関する。より具体的には、本開示の態様は、ノードへの電力の動的調和に基づいてマルチノードシステムにおける電力分配を管理するシステムに関する。
【背景技術】
【０００２】
様々なノード又はデバイス−たとえばコンピュータマザーボード上に存在するもの−への電力は通常、電源ユニット（ＰＳＵ）によって一元的に供給される。ＰＳＵは、複数のノード−たとえばコンピュータマザーボード上で処理装置を構成するコア−に電力を供給する。たとえば米国での先行技術文献（特許文献１：米国特許第７８２２９６７Ｂ２号公報）は、コンピュータシステム並びにデータ及び情報サーバにおける電力消費と負荷を管理するネットワークアーキテクチャ、コンピュータシステム及び／又はサーバ、回路、デバイス、装置、方法、及び、コンピュータプログラム、並びに制御機構を開示している。通常、他のＰＳＵもまたノードへ電力を供給するために接続される。二電力供給システムでは、一のＰＳＵにあるレベルの電力消費の余裕がある場合、前記ＰＳＵのうちの一が故障するときのシステム故障を回避するように、システム全体は、合計の電力消費が前記あるレベルを下回るように設計されてよい。一般的に、そのようなシステムの各ＰＳＵは、他のＰＳＵが故障するときに通常動作レベルでのマルチノードの動作を可能にするのに十分な電力を有するように構成される。
【０００３】
しかし状況によっては、単一のＰＳＵが所望のシステム動作を維持するのに十分な電力を供給できない。そのような状況下では、プロセッサの電力消費は、そのプロセッサのクロック速度を制御するか、あるいは単純にそのプロセッサの電力をあるレベルに制限することによって制限される。プロセッサの複数のコア間での電力消費を制限する方法には複数の知られた方法が存在する。一の方法は、プロセッサの各ノードへの電力を等しく制限することである。これは実装が容易だが、システム電力割り当ては最適化されない。その理由は、より多くの電力を必要とするノードが必要な電力を受け取らない一方で、この分配によって割り当てられる電力制限未満で動作しているノードに不必要な電力が供給される可能性があるからである。
【０００４】
適切な電力を保証する他の既知の方法は、ノード数で全電力消費を除することで各ノードの電力消費を設定し、かつ、各ノードの設定電力レベルに到達することである。システムは、シャーシ管理コントローラによって実行されるソフトウエアアルゴリズムによって目標電力レベルを満たす。コントローラは、シャーシ管理コントローラ（ＣＭＣ）に限定されるが、ベースボード管理コントローラ（ＢＭＣ）又はＰＳＵの制御装置であってよい。このような解決法は実装が単純だが、システム設計を制限し、かつ、各ノードの実際の電力使用を無視している。たとえば、システムが重い負荷の最小管理データ単位（ＳＫＵ）をサポートし、かつ、システム電力が完全に利用されていることが期待されることが望ましい場合、公平な分配では、重い負荷に十分電力を供給できない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第７８２２９６７Ｂ２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
よって複数のノード間での電力の効率的な調和を可能にするシステムが必要とされている。さらに、マルチノードシステム内の複数のノード間での電力を動的に調和させることを可能にするシステムが必要とされている。さらに、マルチノードシステム内の複数のノード間で余剰電力を効率的に分配することで電力分配を微調整するシステムが必要とされている。
【課題を解決するための手段】
【０００７】
一の開示された例は、電力を動的に分配するマルチノードシステムである。当該システムは、複数のノード及び該複数のノードの各々に電力を供給する電源を有する。シャーシ管理コントローラは、前記電源に結合される。前記シャーシ管理コントローラは、前記電源から前記複数のノードの各々への前記電力を制御するように動作し得る。前記シャーシ管理コントローラは、各ノードの設定電力及び各ノードが消費する実際の電力を決定することによって各ノードに供給される前記電力を調和させる。前記シャーシ管理コントローラは、前記実際の電力、並びに、前記複数のノードの各々の未使用合計電力及び合計追加調和電力に基づいて各ノードの次の設定電力を決定する。前記シャーシ管理コントローラは、前記次の設定電力の値を各ノードのベースボード管理コントローラに供する。前記ベースボード管理コントローラは、重要構成要素−たとえばＣＰＵ又はメモリ−の電力消費を最大でも前記複数のノードの前記次の設定電力の値までに制御する。
【０００８】
他の例は、各々が電力を消費する複数のノードを含むシステムでの電力を管理する方法である。各ノードの設定電力及び各ノードで消費される実際の電力が決定される。各ノードの次の設定電力は、前記実際の電力、並びに、前記複数のノードの各々の未使用合計電力及び合計追加調和電力に基づいて決定される。前記実際の電力は、最大でも前記複数のノードの各々への前記次の設定電力に制御される。
【０００９】
他の例は、複数のノードへ電力を割り当てる電源ユニットである。前記電源ユニットは、前記複数のノードの各々へ電力を供給する電源回路を有する。シャーシ管理コントローラは、前記電源回路を制御する。前記シャーシ管理コントローラは、前記複数のノードの各々によって消費される実際の電力を決定し、かつ、前記複数のノードのすべての未使用合計電力を決定するように動作する。前記シャーシ管理コントローラは、前記複数のノードの各々の追加調和電力を決定する。前記シャーシ管理コントローラは、前記複数のノードの各々の電力使用の割合を、そのノードによって消費される前記実際の電力及びそのノードの設定電力の値に基づいて決定する。前記シャーシ管理コントローラは、前記未使用合計電力及び前記電力使用の割合に基づいて各ノードの再追加調和電力を決定する。前記シャーシ管理コントローラは、各ノードの次の設定電力の値を、そのノードによって消費される実際の電力、そのノードの追加調和電力、及びそのノードの再追加調和電力に基づいて決定する。前記シャーシ管理コントローラは、前記次の設定電力の値を各ノードのベースボード管理コントローラへ供する。前記ベースボード管理コントローラは、最大で前記複数のノードの前記次の設定電力までに重要構成要素の電力消費を制御する。
【００１０】
上記まとめは、本開示の各実施形態又はすべての実施形態を表すことを意図していない。むしろ上記のまとめは単に、本開示で説明される新規な態様及び特徴の一部を例示しているに過ぎない。上記特徴及び利点並びに本開示の他の特徴及び利点は、添付図面及び請求項に関連付けられる際に、以下の本発明を実行する代表的実施形態及び態様についての詳細な説明からすぐに明らかとなる。
【図面の簡単な説明】
【００１１】
本開示は、本願の添付図面を参照しながら典型的実施形態についての以下の説明を読むことでより良く理解される。
【図１】ノード間での電力を動的に調和させる電力管理システムを備える典型的マルチノードシステムのブロック図である。
【図２Ａ】動的電力管理システムによって電力を調和させる一の動作例において図１のシステムのノードへ供給される電力レベルの表である。
【図２Ｂ】動的電力管理システムによって電力を調和させる一の動作例において図１のシステムのノードへ供給される電力レベルの表である。
【図３】図２Ａ，Ｂの表中の電力レベルに基づく様々な調和時間後に図１のシステムの各ノードに供給される電力のグラフである。
【図４Ａ】動的電力管理システムによって電力を調和させる他の動作例において図１のシステムのノードへ供給される電力レベルの表である。
【図４Ｂ】動的電力管理システムによって電力を調和させる他の動作例において図１のシステムのノードへ供給される電力レベルの表である。
【図４Ｃ】動的電力管理システムによって電力を調和させる他の動作例において図１のシステムのノードへ供給される電力レベルの表である。
【図５】図４Ａ−Ｃの表中の電力レベルに基づく様々な調和時間後に図１のシステムの各ノードに供給される電力のグラフである。
【図６】ｙの係数が調節されるときの、図２Ａの表中の電力レベルに基づく様々な調和時間後に図１のシステムの各ノードに供給される電力のグラフである。
【図７】ｙの係数が調節されるときの、図４Ａの表中の電力レベルに基づく様々な調和時間後に図１のシステムの各ノードに供給される電力のグラフである。
【図８】図１のマルチノードシステム中の様々なノードへの電力の割り当てを決定する方法の流れ図である。
【００１２】
本開示は、様々な修正型及び代替形態を許容する。一部の代表的実施形態は、図中の例によって示され、以降で詳細に説明される。しかし本発明は、開示されている特定の形態に限定されないことに留意して欲しい。むしろ本開示は、請求項によって定められる本発明の技術的思想及び技術的範囲に属するすべての修正型、均等物、及び代替型を網羅する。
【発明を実施するための形態】
【００１３】
本発明は多くの異なる形態で実施されてよい。代表的実施形態が図中に示され、かつ、以降で詳述される。以降での説明では、本開示は、その原則の例示又は図示とみなされ、かつ、本開示の広範な態様を図示された実施形態に限定することを意図していないことに留意して欲しい。その限りで、たとえば「要約」、「発明の概要」、及び「発明を実施するための形態」に開示されている要素並びに限定は、請求項中に明記されていないのであれば、示唆や推定等によって、個々であってもまとめてであっても、その請求項に加えられてはならない。
本願の詳細な説明の目的では、具体的に排除されていなければ、単数形は複数形を含み、かつ逆も真なりである。「含む／有する（ｉｎｃｌｕｄｉｎｇ）」という用語は、「制限なく含む」ことを意味する。しかも「約」、「およそ」、「実質的に」、「だいたい」等の近似を表す語句は本願では、たとえば「ほぼ」、「３〜５％の範囲内」若しくは「許容可能な製造公差」又はこれらの論理的結合の意味で用いられてよい。
【００１４】
図１は、マルチノードをサポートする、つまりはマルチノードシステムである典型的なシステム１００のブロック図を表している。
システム１００は、マザーボード１００上の構成要素へ電力を供給する電源ユニット（ＰＳＵ）１０２を含む。電源ユニット１０２と同一のバックアップ用電源ユニット１０８がバックアップ電源用に供されてよい。
【００１５】
システム１００は、複数のノード−たとえばノード１３０，１３２，１３４、及び１３６−を含む。複数のノードはこの例では、マルチノードシステム１４０を構成する。ノード１３０，１３２，１３４、及び１３６の各々は、マザーボードであるため、プロセッサ、メモリ、及びベースボード管理コントローラを有する。本願で説明される原則は、１つ以上の電源ユニットによって電力供給される任意の数のノードを有するマルチノードシステムの電力分配に適用され得ることに留意して欲しい。ノード１３０，１３２，１３４、及び１３６の電力消費は、これらのノードにそれぞれ対応する電流センサ１５０，１５２，１５４、及び１５６を介して決定されてよい。電流センサ１５０，１５２，１５４、及び１５６の出力は、シャーシ管理コントローラ１４２に結合され、かつ、シャーシ管理コントローラ１４２がノード１３０，１３２，１３４、及び１３６へ電力を割り当てるための電力消費データを提供してよい。
【００１６】
図１のシステム１００は、マルチノードマザーボード及び他の機能を実行する他のボード−たとえばメモリデバイス又はインターフェースデバイス−を含む情報処理システムの一部であってよい。この例では、マルチノードシステム１４０のノード１３０，１３２，１３４、及び１３６は、電源ユニット１０２によって電力供給される。よってシャーシ管理コントローラ１４２は、システム１００上のノード１３０，１３２，１３４、及び１３６並びに任意で他の構成要素へ供給される電力を制御してよい。
【００１７】
この例では、シャーシ管理コントローラ１４２は、管理コントローラとして動作し、かつ、アプリケーションソフトウエア用に各独立した再書き込み可能メモリ及び永久メモリを有してよい。シャーシ管理コントローラ１４２はまた、シャーシ管理コントローラと電力データバス−ＰＳＵの電力コントローラに結合され得るパワーマネジメントバス（ＰＭｂｕｓ）−との間での通信を可能にする通信インターフェースをも有して良い。他の通信インターフェースは、シャーシマネージャとデータバス−たとえばＭＢのＢＭＣに結合され得るＳＭＢｕｓ−との間での通信を可能にする。シャーシ管理コントローラ１４２は、目的−たとえばネットワーク動作、管理、又はトラブルシューティング−のためにデータバスから複数のプロセッサの性能データを受信してよい。当然のこととして、任意の適切な制御装置が、シャーシ管理コントローラ１４２用に用いられてよいことに留意して欲しい。たとえば電力を監視及び制御するシャーシ管理コントローラ１４２の機能は、複数のノードのうちの１つ−たとえばノード１３０−によって、又は、複数のノードのうちの一上のベースボード管理コントローラ若しくはＰＳＵ１０２の一部となり得る電力コントローラの一部として実行されてよい。
【００１８】
シャーシ管理コントローラ１４２によるシステム−たとえばシステム１００−内の複数のノード間での電力の分配方法は、この例では、複数のノード間での電力を動的に調和させることを可能にする。電力を動的に調和させるように動作可能なマルチノードシステムは、合計数がｎのノードを含む。各ノードは、１〜ｎのノード番号ｘを有する。たとえば図１のシステム１００の４つのコア１３０，１３２，１３４、及び１３６はそれぞれ、ノード１、ノード２、ノード３、及びノード４と指定されてよい。システム−たとえばシステム１００−の設定電力（ＳＰ）が設定される。設定電力とは、システムの電力消費を制限するためにある電力値に設定される電力値である。この例では、プロセッサ−たとえばマルチノードシステム１００−のコアは、電力消費が設定電力よりも大きい場合に、ノードの設定電力値に到達しようとして動作速度を減少させる。各ノードの設定電力はＳＰｘで表される。よってこの例では、ノード１の設定電力（ＳＰ１）は４５０Ｗとなり得る。
【００１９】
システムの実際の電力はＲＰで表される。各ノードの実際の電力はＲＰｘで表される。実際の電力とは、システムの電流センサ−たとえばシステム１００の電流センサ１５０，１５２，１５４、及び１５６−から読み取られる電力値である。よってノード１の実際の電力（ＲＰ１）は、設定電力未満の電力がそのノードによって消費されていることを示唆する３８０Ｗであり得る。システムの実際の電力はＴＰで表される。システムの合計電力（ＴＰ）は、ｎノードシステムによって消費される実際の合計電力（各ノードの実際の電力の合計）に他のボード及びデバイスの電力を加えた電力によって決定される。ｎノードシステムによって消費される実際の合計電力は次式で表されてよい。
【数１】
2018181319.tif 000003
【００２０】
他のボード及びデバイスの電力はＯＰで表されてよい。システムの合計電力（ＴＰ）は、電源ユニットの電流センサによって測定されてよい。よって他のボード及びデバイスの電力（ＯＰ）は、実際の合計電力からシステムの合計電力を減じることによって決定されてよい。実際の合計電力は、ノード１３０，１３２，１３４、及び１３６にそれぞれ対応する電流センサ１５０，１５２，１５４、及び１５６から読み取られる電力データ値に基づいて制御装置−たとえばシャーシ管理コントローラ１４２−によって決定される。
【００２１】
マルチノードシステムの未使用合計電力はＵＴＰで表される。未使用合計電力は、ＭＯＰで表される、電源ユニット−たとえば電源ユニット１０２−によって供給され得る合計電力消費（ＰＳＵの最大出力電力又はシステムが長時間動作しても安全だと判断される電力値）を決定し、かつ、システム合計電力（ＴＰ）を減じることによって決定される。よって未使用合計電力ＵＴＰは、最大出力電力からシステムの合計電力を減じることによって決定される（たとえばＵＴＰ＝ＭＯＰ−ＴＰ）。
【００２２】
続いて追加調和電力が供給されてよい。各ノードの追加調和電力はＳＢＰｘで表される。ＳＢＰｘは、ノードの実際の電力に係数ｙを乗じた値に等しい。よって各ノードでは、ＳＢＰｘ＝ｙＲＰｘである。係数ｙは、０より大きくかつ１未満の値で、かつ、一定値であっても良いしあるいは変動する値であってもよい。たとえば係数ｙは、ノード間でのすべての利用可能な電力を調和させるために相対的に高い値に設定されてよいが、需要の低いノードへの電力を減らしながらある需要の高いノードへの電力を最適化するために相対的に低い値で設定されてもよい。この例では、ｙが一定値０．１であると仮定するとノード１からの追加調和電力（ＳＢＰ１）は、０．１×３８０Ｗ＝３８Ｗと決定され得る。
【００２３】
追加調和電力は、電力割り当てプロセス前でのノード電力のｙ係数として表される比率分を取り出すことで、調和させるための予定消費電力を構成する。電力を調和させるための追加合計予定消費電力は、システム内の各ノードの調和電力を加えることによって決定される。これは次式で表される。
【数２】
2018181319.tif 000004
【００２４】
すべてのノードにとって必要な電力が、電源ユニット１０２から利用可能な電力を超える場合、電源ユニット１０２は、ノードにさらなる電力を供給できない。この場合、ノードの各設定電力の値は、調和させる目的で未使用合計電力を供給するように減少する。各ノードの減少する電力は、各ノードの負荷に比例する。たとえば負荷が重いノードは、より多くの追加調和電力を供給する。場合によっては、負荷の軽いノードは１００％の電力を必要としないので、予定消費電力は、負荷の軽いノードから利用可能な電力を反映したより多くの電力を必要とするノードへ、より多くの電力を供給するように構成されてよい。
【００２５】
よって合計追加予定消費電力（ＴＢＰ）は、未使用合計電力ＵＴＰを取得し、かつ、各ノードからの追加調和電力を加えることによって決定される。合計調和予定消費電力は次式によって計算される。
【数３】
2018181319.tif 000005
【００２６】
各ノードの電力使用の大きさはＰＵｘで表される。電力使用の大きさは、ノードの実際の電力（ＲＰｘ）をそのノードの設定電力（ＳＰｘ）で除した値である。よってノード１の電力使用の大きさは、３８０／４５０＝０．８４４となり得る。電力使用の大きさは、各ノードがどの程度の電力を必要としているのかを示し得る。あるノードについて電力使用の大きさが１以上である場合、そのノードが全設定電力又はそのノードの設定電力の値よりも大きな電力を必要とすることが示唆されている。この例では、ノード１の電力使用は１未満であるので、ノード１は設定電力未満の電力しか要求していない。
【００２７】
システム内のノードｘの電力使用の比率は、％（ＰＵｘ）で表され、かつ、そのノードの電力使用をすべてのノードの合計電力使用で除した値によって決定されてよい。よって電力使用の比率が最も高いノードは、マルチノードシステム内の他のノードと比較して最も電力を必要とするノードであることを示唆している。あるノードの電力使用の比率は、システム電力調和用にとっておいた予定消費電力を割り当てるのに用いられる。よってあるノードについて、電力使用の比率が大きければ大きいほど、シャーシ管理コントローラ１４２によってより多くの電力が割り当てられる。
【００２８】
各ノードの調和予定消費電力（ＡＢＰ）はＡＢＰｘで表される。調和予定消費電力は、合計調和予定消費電力ＴＢＰにノードの電力使用比率を乗じることによって決定される。これは次式で表され得る。
【数４】
2018181319.tif 000006
【００２９】
システムはまた、各ノードの次の設定電力をも決定する。次の設定電力は、ノードの実際の電力（ＲＰｘ）からそのノードの追加調和電力（ＳＢＰｘ）を減じ、かつ、そのノードの調和予定消費電力（ＡＰＢｘ）を加えることに基づいて決定される。これは次式で表され得る。
【数５】
2018181319.tif 000007
【００３０】
次の設定電力は、コントローラ−たとえばシャーシ管理コントローラ１４２−のメモリ内に格納され、かつ、ノード間での電力再割り当てを決定するのに用いられる。よってシャーシ管理コントローラ１４２は、ベースボード管理コントローラに、次の設定電力に従って、ノード１３０，１３２，１３４、及び１３６の各々へ電力を割り当てさせる。ノード１３０，１３２，１３４、及び１３６の各々の電力の変化によって、そのノードの電力需要に基づいて電力を動的に調和させることが可能となる。
【００３１】
図２Ａと図２Ｂは、図１の典型的なマザーボード１００内のノード１３０，１３２，１３４、及び１３６の各々の設定電力、実際の電力、追加調和電力、電力使用の大きさ、電力使用割合、追加調和予定消費電力、及び次の設定電力を示す表である。図２Ａと図２Ｂの値は、図１のノード１３０，１３２，１３４、及び１３６の各々が多量の電力を取り込む場合での高電力使用のシナリオを仮定している。図２Ａと図２Ｂの値は、電力モニタ１５０，１５２，１５４、及び１５６によって測定される各ノーによって消費される電力に基づいて、シャーシ管理コントローラ１４２によって決定される。
【００３２】
この例では、未使用合計電力ＵＴＰはゼロである。各ノードでは、係数ｙはこの例では０．３であるため、各ノードの追加調和電力は、そのノードの実際の電力の０．３である。各ノードの電力使用割合は、実際の電力が設定電力に等しいことを示す１である。図２Ａに示されるプロセス開始時点では、ノード１の電力は５００Ｗで、ノード２の電力は４００Ｗで、ノード３の電力は３００Ｗで、かつ、ノード４の電力は２００Ｗである。合計調和予定消費電力（ＴＢＰ）は４２０である。よって、合計ノード電力消費は１４００Ｗで、かつ、他のボードとデバイスの電力（ＯＰ）は２００Ｗである。従って合計電力消費は１６００Ｗであり、この値は利用可能電力である１６００Ｗと同一であるので、未使用合計電力ＵＴＰはゼロである。
【００３３】
図２Ｂは、上述の電力調和プロセスがシャーシ管理コントローラ１４２によって実行された後のノード１３０，１３２，１３４、及び１３６の調節値を示す表である。図２Ｂから見てとれるように、最も負荷の重いノード（ノード１とノード２）の設定電力が減少し、かつ、負荷の軽いノード（ノード３とノード４）の設定電力が増大した。たとえば、４５５である図２Ａの表中のノード１の次の設定電力は、５００であるノード１の実際の電力を取得し、１５０である追加調和電力値（ＳＢＰｘ）を減じ、かつ、１０５である調和予定消費電力（ＡＢＰｘ）を加える結果４５５である次の設定電力を得ることによって決定される。上で説明したように、ノード１の実際の電力−この例では５００−と、係数ｙ−この例では０．３−とを乗じた結果得られた１５０である追加調和電力値によって、１５０である追加調和電力値（ＳＢＰｘ）が得られる。上で説明したように、１０５である調和予定消費電力値は、４２０である合計調和予定消費電力と０．２５であるノード１の電力使用割合を乗じることによって得られる。
【００３４】
続いて図２Ａで得られた次の設定電力値は、図２Ｂで示されているように電力調和プロセスの次の反復における設定電力値として用いられる。図２Ｂに示されているように、プロセスを２回実行した後、負荷の重いノード１の次の設定電力はさらに減少して４２３．５となる一方、負荷の軽いノード４の次の設定電力はさらに増大して２７６．５となる。
【００３５】
続いてシャーシ管理コントローラ１４２は、図２Ｂの次の設定電力値を用いることによって同一の電力調和プロセスを実行してよい。このプロセスを反復実行することによって、図１のノード１３０，１３２，１３４、及び１３６へ動的に電力を割り当てることが可能となる。
【００３６】
図３は、上述の電力調和プロセスを１０度実行した後のノード１３０，１３２，１３４、及び１３６の各々の実際の電力値を示すグラフである。ノード１３０，１３２，１３４、及び１３６の実際の電力値はそれぞれ、線３００，３０２，３０４、及び３０６によって表される。図３から見て取れるように、各ノードについての実際の電力値が３５０Ｗへ収束することで、システムの負荷は調和する。
【００３７】
負荷を調和させる他の例は、あるノードの電力要求が低いときである。図４Ａ、図４Ｂ、及び図４Ｃは、上述の電力調和プロセスの実行中での図１の典型的システム１００中のノード１３０，１３２，１３４、及び１３６の各々の設定電力、実際の電力、追加調和電力、電力使用の大きさ、電力使用割合、追加調和予定消費電力、及び次の設定電力を示す表である。この例では、第１ノード１３０と第３ノード１３４の電力要求が高い一方で、第２ノード１３２と第４ノード１３６の電力要求は低い。
【００３８】
この例では、各ノードの係数ｙは０．１であるため、各ノードの追加調和電力は実際の電力の０．１である。ノード１とノード３の各々の電力使用割合は、実際の電力が設定電力に等しいことを示す１であり、かつ、ノード１とノード３の電力要求は高い。ノード２とノード４の電力使用割合は、ノード２とノード４の電力要求がノード１とノード３の電力要求よりも低いことを示す０．９である。図４Ａに示されているように、プロセスの開始時点では、ノード１の設定電力は５００で、ノード２の設定電力は５００で、ノード３の設定電力は３００で、かつ、ノード４の設定電力は３００である。対照的に、実際の電力は、ノード１では５００で、ノード２では４５０で、ノード３では３００で、かつ、ノード４では２７０である。合計調和予定消費電力（ＴＢＰ）は２３２である。合計ノード電力消費は１６００Ｗで、かつ、他のボード及びデバイスの電力（ＯＰ）は２００Ｗである。よって合計電力消費は利用可能な電力である１８００に等しく、かつ、未使用合計電力ＵＴＰはゼロである。
【００３９】
図４Ｂは、図４Ａでの値から上述の電力調和プロセスが実行された後の調節値を示す表である。図４Ａと比較した図４Ｂから見て取れるように、最も負荷の重いノード（ノード１とノード３）の設定電力は増大し、かつ、負荷の軽いノード（ノード２とノード４）の設定電力は減少した。たとえば、５１１である図４Ａの表中でのノード１の次の設定電力は、５００であるノード１の実際の電力を取得し、５０である追加調和電力値（ＳＢＰｘ）を減じ、かつ、６１．１である調和予定消費電力（ＡＢＰｘ）を加える結果得られる５１１であるノード１の次の設定電力によって決定される。上述したように、５０である追加調和電力値（ＳＢＰｘ）は、ノード１の実際の電力−この例では５００−と、係数ｙ−この例では０．１−とを乗じた結果得られた５０である追加調和電力値によって、５０である追加調和電力値（ＳＢＰｘ）が得られる。上で説明したように、６１．１である調和予定消費電力値は、４２０である合計調和予定消費電力と０．２５であるノード１の電力使用割合を乗じることによって得られる。
【００４０】
続いて図４Ａで得られた次の設定電力値は、図４Ｂで示されているように電力調和プロセスの次の反復における設定電力値として用いられる。図４Ｂに示されているように、負荷の重いノード１の次の設定電力はさらに増大して５２０．８となる。
【００４１】
逆に、電力要求の低いノードでは、次の設定電力値が減少する。たとえば、図４Ｂ中の表のノード２の設定値は４５９．９である。４５９．９というノード２の設定値は、４５０である図４Ａに示されているノード２の実際の電力を取得し、４５である追加調和電力値（ＳＢＰｘ）を減じ、かつ、５４．９である調和予定消費電力（ＡＢＰｘ）を加える結果得られる４５９．９である図４Ｂの次の設定電力によって決定される。上で説明したように、ノード２の実際の電力−この例では４５０−と、係数ｙ−この例では０．１−とを乗じた結果得られた４５である追加調和電力値によって、４５である追加調和電力値（ＳＢＰｘ）が得られる。上で説明したように、５４．９である調和予定消費電力値は、２３２である合計調和予定消費電力と０．２４であるノード２の電力使用割合を乗じることによって得られる。図４Ｂで示されているように、負荷の軽いノード２の次の設定電力はさらに減少して４３３．５となる。
【００４２】
図４Ｃは、３回目の電力調和アプリケーションが実行された後のノードの電力値を示している。電力要求の高いノード１とノード３の設定電力は図４Ｂでの値から増大した一方で、電力要求の低いノード２とノード４の設定電力は図４Ｂでの値から減少した。
【００４３】
図５は、図４Ａの表中の初期値から電力調和プロセスを１０回実行した後のノード１３０，１３２，１３４、及び１３６の各々の設定電力値を示すグラフである。ノード１３０，１３２，１３４、及び１３６の設定電力値はそれぞれ、線５００，５０２，５０４、及び５０によって表される。図５から見て取れるように、システム負荷は、ノード間での電力を調和させることで、電力要求の高いノード−たとえば線５００によって表されるノード１及び線５０４によって表されるノード３−の設定電力を増大させることを可能にする。電力要求の低いノード−たとえば線５０２によって表されるノード２及び線５０６によって表されるノード４−では設定電力は減少する。
【００４４】
上で説明したように、係数ｙは、システムの要求に依存して電力調和を最適化するように調節されてよい。図２Ａ−図２Ｂと図３に関連させて上述した例では、すべてのノードがより多くの電力を必要とする際に同一の平均電力を実現させることを可能にするため、係数ｙは０．３に設定される。図６は、図２Ａの開始値で上述の電力調和プロセスを１０回実行した後のノード１３０，１３２，１３４、及び１３６の各々の設定電力値を示すグラフである。ノード１３０，１３２，１３４、及び１３６の設定電力値は、係数ｙが０．１に設定されるときには、それぞれ線６００，６０２，６０４、及び６０６によって表される。図３と比較した図６から見て取れるように、システム負荷は低速で調和させるため、すべてのノードがさらなる電力を必要とするときには、大きなｙの値が電力を調和させる上では望ましい。
【００４５】
図４Ａ−図４Ｃと図５に関連させて上述した例では、電力要求の高いノードが受ける電力割り当てを多くし、かつ、電力要求の低いノードの受ける電力割り当てを少なくすることを可能にするため、係数ｙは０．１に設定される。図７は、図４Ａの開始値で上述の電力調和プロセスを１０回実行した後のノード１３０，１３２，１３４、及び１３６の各々の設定電力値を示すグラフである。係数ｙが０．３に設定されるときのノード１３０，１３２，１３４、及び１３６の設定電力値はそれぞれ、線７００，７０２，７０４、及び７０６によって表される。図５と比較して図７から見て取れるように、システムは、多くの電力を必要とするノードに割り当てる電力を少なくするので、一部のノードしかさらなる電力を必要としないときには、小さなｙの値が、電力を調和させるのには望ましい。
【００４６】
図８は、マルチノードシステムのノードに電力を動的に分配する管理コントローラ−たとえば図１のシャーシ管理コントローラ１４２−によって実行されるアルゴリズムの流れ図を示す。図８の流れ図は、マルチノードシステム−たとえば図１のシステム１００−典型的な機械可読命令を表す。この例では、機械可読命令は、（ａ）プロセッサ、（ｂ）コントローラ、及び／又は（ｃ）１つ以上の他の適切な処理装置によって実行されるアルゴリズムを含む。アルゴリズムは、有形媒体−たとえばフラッシュメモリ、ＣＤ−ＲＯＭ、フロッピーディスク、ハードドライブ、ディジタルビデオ（多目的）ディスク（ＤＶＤ）、又は他のメモリデバイス−上に格納されるソフトウエアによって実施されてよい。しかし当業者は、アルゴリズムの全部又は一部は、プロセッサ以外の装置によって実行され、かつ／あるいは、ファームウエア若しくは専用ハードウエアによって周知の方法で実施され得る（たとえば用途特定集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、フィールドプログラマブルロジックデバイス（ＦＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、個別論理素子等によって実装されてよい）ことを容易に理解する。たとえばインターフェースの構成要素のいずれも、ソフトウエア、ハードウエア、及び／又はファームウエアによって実装されてよい。また図８のフローチャートによって表される機械可読命令の一部又は全部は、手動で実施されてもよい。さらに図８に表されているフローチャートを参照しながら典型的なアルゴリズムが説明されているが、当業者は、典型的な機械可読命令を実施する他の多くの方法が用いられ得ることを容易に理解する。たとえばブロックの実効順序は変更されてよく、かつ／あるいは、記載されているブロックの一部は変更、削除、又は結合されてよい。
【００４７】
シャーシ管理コントローラ１４２は最初、電力調和処理を初期化する（８００）。電力調和処理は、マルチノードシステム用に規則的に実行されるか、あるいは、１つ以上のノードの動作の変更に応じて開始されてよい。シャーシ管理コントローラ１４２は、電源ユニット１０２（ＭＯＰ）の全電力の出力を取得し、かつ、ＴＰを減じることによって未使用合計電力を決定する（８０２）。続いてシャーシ管理コントローラ１４２は、各ノードの実際の電力に係数を乗じた値を加えることによって追加調和電力を決定する（８０４）。続いてシャーシ管理コントローラ１４２は、各ノードの電力使用割合を決定する（８０６）。あるノードの電力使用割合は、あるノードの電力使用の大きさＰＵｘをすべてのノードの電力使用の大きさの合計ＰＵで除することによって決定される。電力使用の大きさは、ノードの実際の電力（ＲＰｘ）をそのノードの設定電力（ＳＰｘ）で除すことによって決定される。
【００４８】
続いてシャーシ管理コントローラ１４２は、ノード間で合計調和予定消費電力を割り当てることによって、一旦取り除いた合計調和予定消費電力を各ノードに再度加える（８０８）。あるノードの再度加えられた合計調和電力（ＡＢＰｘ）は、合計調和予定消費電力（ＴＢＰ）を取得し、かつ、そのノードの電力使用の大きさ（％（ＰＵｘ））をＴＢＰに乗じることによって決定される。合計調和予定消費電力は、未使用合計電力（ＵＴＰ）を取得し、かつ、各ノードの実際の電力使用から決定される追加調和電力に係数ｙを乗じた値（ｙＲＰｘ）を加えることによって決定される。
【００４９】
続いてシャーシ管理コントローラ１４２は、各ノードの次の設定電力（ＮＳＰｘ）を決定する（８１０）。次の設定電力は、ノードの実際の電力（ＲＰｘ）からそのノードの追加調和電力（ＳＢＰｘ）を減じ、かつ、そのノードの合計調和電力（ＡＢＰｘ）を加えることによって決定される。続いてシャーシ管理コントローラ１４２は、システム内の各ノードへ供給される電力を最大でも次の設定電力となるように電源回路１０６を制御する。プロセスは続いて、最初に戻り、かつ、各ノードの次の設定電力に従って再度電力割り当てを調和させる。
【００５０】
本願で用いられているように、「構成要素」、「モジュール」、「システム」等の用語は概して、コンピュータに関連するもの−ハードウエア（たとえば回路）、ハードウエアとソフトウエアの結合、ソフトウエア、又は、１つ以上の具体的機能を備える操作機械に関連するもの−を指称することが意図されている。たとえば構成要素は、プロセッサ（ディジタル信号プロセッサ）上で動作するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、及び／又はコンピュータであってよいが、これらに限定されない。例として、コントローラ上で動作するアプリケーションとコントローラのいずれも構成要素であってよい。１つ以上の構成要素は、プロセス及び／又は実行スレッドの内部に存在してよい。構成要素は、一のコンピュータ上に局在するか、かつ／あるいいは、２つ以上のコンピュータ間で分配されてよい。さらに「デバイス」は、特別に設計されたハードウエア、ソフトウエアの実行によって特定の機能を実行することが可能となる特化する汎用ハードウエア、コンピュータ可読媒体上に格納されるソフトウエア、又は、これらの結合であってよい。
【００５１】
情報処理デバイスは一般的に様々な媒体を含む。様々な媒体は、コンピュータ可読媒体及び／又は通信媒体を含んでよい。コンピュータ可読媒体と通信媒体は、本願では、以下の通りそれぞれ異なる意味で用いられている。コンピュータ可読媒体は、コンピュータによってアクセス可能な任意の利用可能な記憶媒体であってよく、一般的には非一時的な性質を有し、かつ、揮発性媒体と不揮発性媒体の両方、取り外し可能媒体と非取り外し可能媒体の両方を含んでよい。限定ではない例として、コンピュータ可読媒体は、情報−たとえばコンピュータ可読命令、プログラムモジュール、構造化データ、又は未構造化データ−を記憶する任意の方法又は技術に関連して実装されてよい。コンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ若しくは他のメモリ技術、ＣＤ-ＲＯＭ、ディジタル多目的ディスク（ＤＶＤ）若しくは他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク、若しくは他の磁気記憶装置、又は、所望の情報の記憶に用いられ得る他の有形及び／又は非一時的媒体を含んでよいが、これらに限定されない。コンピュータ可読媒体は、媒体に格納されている情報に関して様々な操作を行うため、たとえばアクセス要求、クエリー、又は他のデータ検索プロトコルを介して１つ以上の局所又は遠隔情報処理デバイスによってアクセスされてよい。
【００５２】
本願で用いられているように、複数形であると明記されていない名詞はその複数形を含む。さらに明細書又は特許請求の範囲のいずれかで用いられる限りにおいて、「有する」、「備える」等の用語は、「含む」と同様に包括的であると意図される。
【００５３】
定義されない場合、本願で用いられるすべての用語（科学技術の専門用語を含む）は、当業者が一般的に理解するのと同じ意味を有する。さらに広く用いられている辞書で定義されている用語は、当技術分野における意味と整合する意味を有するもの解釈され、かつ、本願で明示的に定義されなければ、理想化された、あるいは、過度に形式的な意味で解釈されてはならないことに留意して欲しい。
【００５４】
本発明の様々な実施形態が上で説明されてきたが、これらの実施形態は単なる例示として与えられたのであって限定ではないことに留意して欲しい。開示された実施形態の様々な変化型が、本発明の技術的思想又は技術的範囲から逸脱することなく本願の開示に従って実現され得る。よって本発明の技術的範囲は、上述の実施形態によって限定されてはならない。むしろ本発明の技術的範囲は、特許請求の範囲の請求項及びその均等物に従って定められなければならない。
【００５５】
本発明は１つ以上の実施形態について図示及び説明されてきたが、本願明細書及び添付図面を読んで理解すれば、当業者には、均等な代替型及び修正型が思い浮かぶ。それに加えて、本発明のある特定の特徴が、複数の実施形態のうちの１つのみについて開示されてきたが、そのような特徴は、任意の所与の又は特定の用途にとって望ましく、かつ、有利になり得るものとして、他の実施形態の１つ以上の他の特徴と組み合わせられてよい。
【図１】
2018181319.tif 000008
【図２Ａ】
2018181319.tif 000009
【図２Ｂ】
2018181319.tif 000010
【図３】
2018181319.tif 000011
【図４Ａ】
2018181319.tif 000012
【図４Ｂ】
2018181319.tif 000013
【図４Ｃ】
2018181319.tif 000014
【図５】
2018181319.tif 000015
【図６】
2018181319.tif 000016
【図７】
2018181319.tif 000017
【図８】
2018181319.tif 000018
【外国語明細書】
2018181319000001.pdf