特許第6556283号(P6556283)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 廣逹電腦股▲ふん▼有限公司の特許一覧

特許6556283マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法
<>
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000007
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000008
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000009
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000010
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000011
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000012
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000013
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000014
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000015
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000016
  • 特許6556283-マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6556283
(24)【登録日】2019年7月19日
(45)【発行日】2019年8月7日
(54)【発明の名称】マルチノードシステム用動的電力キャッピング及び負荷調和管理システム並びに方法
(51)【国際特許分類】
   G06F 1/26 20060101AFI20190729BHJP
   G06F 1/28 20060101ALI20190729BHJP
【FI】
   G06F1/26
   G06F1/28
【請求項の数】10
【外国語出願】
【全頁数】15
(21)【出願番号】特願2018-55055(P2018-55055)
(22)【出願日】2018年3月22日
(65)【公開番号】特開2018-181319(P2018-181319A)
(43)【公開日】2018年11月15日
【審査請求日】2018年4月26日
(31)【優先権主張番号】62/487,053
(32)【優先日】2017年4月19日
(33)【優先権主張国】US
(31)【優先権主張番号】15/855,790
(32)【優先日】2017年12月27日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】508018934
【氏名又は名称】廣達電腦股▲ふん▼有限公司
【氏名又は名称原語表記】Quanta Computer Inc.
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】黄 仁▲ケン▼
(72)【発明者】
【氏名】林 發達
(72)【発明者】
【氏名】林 怡萍
【審査官】 白石 圭吾
(56)【参考文献】
【文献】 特開2013−143120(JP,A)
【文献】 特開2011−013764(JP,A)
【文献】 米国特許出願公開第2015/0177814(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 1/26 − 1/3296
(57)【特許請求の範囲】
【請求項1】
電力を動的に分配するマルチノードシステムであって、
複数のノード、
前記複数のノードの各々に電力を供給する電源、
前記電源と結合する管理コントローラ、
を有し、
前記管理コントローラは、前記複数のノードの各々へそのノードの電力消費を制御する命令を行うように動作可能で、かつ、
前記管理コントローラはさらに、
前記複数のノードの各々の設定電力及び前記複数のノードの各々によって消費される実際の電力を決定し、
前記実際の電力、及び、前記複数のノードの未使用合計電力と合計追加調和電力に基づいて前記複数のノードの各々の次の設定電力を決定し、かつ、
前記複数のノードの各々の前記電力消費を最大でもそのノードの前記次の設定電力となるように制御する命令をそのノードへ送る、
ことによって前記複数のノードの各々へ供給された前記電力を調和させるように動作可能である、
マルチノードシステム。
【請求項2】
請求項1に記載のマルチノードシステムであって、前記複数のノードの各々の前記次の設定電力が、
前記合計追加調和電力を構成する、前記複数のノードの各々の追加調和電力を決定し、
前記複数のノードの各々の電力使用割合を、そのノードによって消費される実際の電力及びそのノードの前記設定電力に基づいて決定し、かつ、
前記未使用合計電力と前記電力使用割合に基づいて前記複数のノードの各々の再追加調和電力を決定する、
ことに基づく、マルチノードシステム。
【請求項3】
請求項2に記載のマルチノードシステムであって、前記未使用合計電力が、前記電源の電力消費値から、前記複数のノードに結合されるセンサによって決定される当該システムの合計電力を減じることによって決定される、マルチノードシステム。
【請求項4】
請求項2に記載のマルチノードシステムであって、前記複数のノードの各々の前記追加調和電力が、そのノードの前記実際の電力の係数によって決定される、マルチノードシステム。
【請求項5】
請求項4に記載のマルチノードシステムであって、前記係数が一定値である、マルチノードシステム。
【請求項6】
請求項4に記載のマルチノードシステムであって、前記係数が変動する値である、マルチノードシステム。
【請求項7】
請求項1に記載のマルチノードシステムであって、前記複数のノードの各々が1つ以上のプロセッサを含み、かつ、
当該システムは、前記複数のノードの各々を含むマルチノードマザーボードである、
マルチノードシステム。
【請求項8】
請求項1に記載のマルチノードシステムであって、前記複数のノードのうちの少なくとも一がシステムデバイスである、マルチノードシステム。
【請求項9】
請求項1に記載のマルチノードシステムであって、前記管理コントローラがさらに、前記複数のノードの各々の前記設定電力用に前記複数のノードの各々の前記次の設定電力を用いることによって、前記複数のノードの各々に供給される前記電力の調和を反復するように動作し得る、マルチノードシステム。
【請求項10】
各々が電力を消費する複数のノードを含むシステム内の電力を管理する方法であって、
前記複数のノードの各々の設定電力及び消費される実際の電力を決定するステップ、
前記実際の電力、及び、前記複数のノードの未使用合計電力と合計追加調和電力に基づいて次の設定電力を決定するステップ、並びに、
前記複数のノードの各々への前記実際の電力を最大でも前記次の設定電力となるように制御するステップ、
を有する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は概して、マルチノードシステムにおける電力管理システムに関する。より具体的には、本開示の態様は、ノードへの電力の動的調和に基づいてマルチノードシステムにおける電力分配を管理するシステムに関する。
【背景技術】
【0002】
様々なノード又はデバイス−たとえばコンピュータマザーボード上に存在するもの−への電力は通常、電源ユニット(PSU)によって一元的に供給される。PSUは、複数のノード−たとえばコンピュータマザーボード上で処理装置を構成するコア−に電力を供給する。たとえば米国での先行技術文献(特許文献1:米国特許第7822967B2号公報)は、コンピュータシステム並びにデータ及び情報サーバにおける電力消費と負荷を管理するネットワークアーキテクチャ、コンピュータシステム及び/又はサーバ、回路、デバイス、装置、方法、及び、コンピュータプログラム、並びに制御機構を開示している。通常、他のPSUもまたノードへ電力を供給するために接続される。二電力供給システムでは、一のPSUにあるレベルの電力消費の余裕がある場合、前記PSUのうちの一が故障するときのシステム故障を回避するように、システム全体は、合計の電力消費が前記あるレベルを下回るように設計されてよい。一般的に、そのようなシステムの各PSUは、他のPSUが故障するときに通常動作レベルでのマルチノードの動作を可能にするのに十分な電力を有するように構成される。
【0003】
しかし状況によっては、単一のPSUが所望のシステム動作を維持するのに十分な電力を供給できない。そのような状況下では、プロセッサの電力消費は、そのプロセッサのクロック速度を制御するか、あるいは単純にそのプロセッサの電力をあるレベルに制限することによって制限される。プロセッサの複数のコア間での電力消費を制限する方法には複数の知られた方法が存在する。一の方法は、プロセッサの各ノードへの電力を等しく制限することである。これは実装が容易だが、システム電力割り当ては最適化されない。その理由は、より多くの電力を必要とするノードが必要な電力を受け取らない一方で、この分配によって割り当てられる電力制限未満で動作しているノードに不必要な電力が供給される可能性があるからである。
【0004】
適切な電力を保証する他の既知の方法は、ノード数で全電力消費を除することで各ノードの電力消費を設定し、かつ、各ノードの設定電力レベルに到達することである。システムは、シャーシ管理コントローラによって実行されるソフトウエアアルゴリズムによって目標電力レベルを満たす。コントローラは、シャーシ管理コントローラ(CMC)に限定されるが、ベースボード管理コントローラ(BMC)又はPSUの制御装置であってよい。このような解決法は実装が単純だが、システム設計を制限し、かつ、各ノードの実際の電力使用を無視している。たとえば、システムが重い負荷の最小管理データ単位(SKU)をサポートし、かつ、システム電力が完全に利用されていることが期待されることが望ましい場合、公平な分配では、重い負荷に十分電力を供給できない。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許第7822967B2号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
よって複数のノード間での電力の効率的な調和を可能にするシステムが必要とされている。さらに、マルチノードシステム内の複数のノード間での電力を動的に調和させることを可能にするシステムが必要とされている。さらに、マルチノードシステム内の複数のノード間で余剰電力を効率的に分配することで電力分配を微調整するシステムが必要とされている。
【課題を解決するための手段】
【0007】
一の開示された例は、電力を動的に分配するマルチノードシステムである。当該システムは、複数のノード及び該複数のノードの各々に電力を供給する電源を有する。シャーシ管理コントローラは、前記電源に結合される。前記シャーシ管理コントローラは、前記電源から前記複数のノードの各々への前記電力を制御するように動作し得る。前記シャーシ管理コントローラは、各ノードの設定電力及び各ノードが消費する実際の電力を決定することによって各ノードに供給される前記電力を調和させる。前記シャーシ管理コントローラは、前記実際の電力、並びに、前記複数のノードの各々の未使用合計電力及び合計追加調和電力に基づいて各ノードの次の設定電力を決定する。前記シャーシ管理コントローラは、前記次の設定電力の値を各ノードのベースボード管理コントローラに供する。前記ベースボード管理コントローラは、重要構成要素−たとえばCPU又はメモリ−の電力消費を最大でも前記複数のノードの前記次の設定電力の値までに制御する。
【0008】
他の例は、各々が電力を消費する複数のノードを含むシステムでの電力を管理する方法である。各ノードの設定電力及び各ノードで消費される実際の電力が決定される。各ノードの次の設定電力は、前記実際の電力、並びに、前記複数のノードの各々の未使用合計電力及び合計追加調和電力に基づいて決定される。前記実際の電力は、最大でも前記複数のノードの各々への前記次の設定電力に制御される。
【0009】
他の例は、複数のノードへ電力を割り当てる電源ユニットである。前記電源ユニットは、前記複数のノードの各々へ電力を供給する電源回路を有する。シャーシ管理コントローラは、前記電源回路を制御する。前記シャーシ管理コントローラは、前記複数のノードの各々によって消費される実際の電力を決定し、かつ、前記複数のノードのすべての未使用合計電力を決定するように動作する。前記シャーシ管理コントローラは、前記複数のノードの各々の追加調和電力を決定する。前記シャーシ管理コントローラは、前記複数のノードの各々の電力使用の割合を、そのノードによって消費される前記実際の電力及びそのノードの設定電力の値に基づいて決定する。前記シャーシ管理コントローラは、前記未使用合計電力及び前記電力使用の割合に基づいて各ノードの再追加調和電力を決定する。前記シャーシ管理コントローラは、各ノードの次の設定電力の値を、そのノードによって消費される実際の電力、そのノードの追加調和電力、及びそのノードの再追加調和電力に基づいて決定する。前記シャーシ管理コントローラは、前記次の設定電力の値を各ノードのベースボード管理コントローラへ供する。前記ベースボード管理コントローラは、最大で前記複数のノードの前記次の設定電力までに重要構成要素の電力消費を制御する。
【0010】
上記まとめは、本開示の各実施形態又はすべての実施形態を表すことを意図していない。むしろ上記のまとめは単に、本開示で説明される新規な態様及び特徴の一部を例示しているに過ぎない。上記特徴及び利点並びに本開示の他の特徴及び利点は、添付図面及び請求項に関連付けられる際に、以下の本発明を実行する代表的実施形態及び態様についての詳細な説明からすぐに明らかとなる。
【図面の簡単な説明】
【0011】
本開示は、本願の添付図面を参照しながら典型的実施形態についての以下の説明を読むことでより良く理解される。
図1】ノード間での電力を動的に調和させる電力管理システムを備える典型的マルチノードシステムのブロック図である。
図2A】動的電力管理システムによって電力を調和させる一の動作例において図1のシステムのノードへ供給される電力レベルの表である。
図2B】動的電力管理システムによって電力を調和させる一の動作例において図1のシステムのノードへ供給される電力レベルの表である。
図3図2A,Bの表中の電力レベルに基づく様々な調和時間後に図1のシステムの各ノードに供給される電力のグラフである。
図4A】動的電力管理システムによって電力を調和させる他の動作例において図1のシステムのノードへ供給される電力レベルの表である。
図4B】動的電力管理システムによって電力を調和させる他の動作例において図1のシステムのノードへ供給される電力レベルの表である。
図4C】動的電力管理システムによって電力を調和させる他の動作例において図1のシステムのノードへ供給される電力レベルの表である。
図5図4A−Cの表中の電力レベルに基づく様々な調和時間後に図1のシステムの各ノードに供給される電力のグラフである。
図6】yの係数が調節されるときの、図2Aの表中の電力レベルに基づく様々な調和時間後に図1のシステムの各ノードに供給される電力のグラフである。
図7】yの係数が調節されるときの、図4Aの表中の電力レベルに基づく様々な調和時間後に図1のシステムの各ノードに供給される電力のグラフである。
図8図1のマルチノードシステム中の様々なノードへの電力の割り当てを決定する方法の流れ図である。
【0012】
本開示は、様々な修正型及び代替形態を許容する。一部の代表的実施形態は、図中の例によって示され、以降で詳細に説明される。しかし本発明は、開示されている特定の形態に限定されないことに留意して欲しい。むしろ本開示は、請求項によって定められる本発明の技術的思想及び技術的範囲に属するすべての修正型、均等物、及び代替型を網羅する。
【発明を実施するための形態】
【0013】
本発明は多くの異なる形態で実施されてよい。代表的実施形態が図中に示され、かつ、以降で詳述される。以降での説明では、本開示は、その原則の例示又は図示とみなされ、かつ、本開示の広範な態様を図示された実施形態に限定することを意図していないことに留意して欲しい。その限りで、たとえば「要約」、「発明の概要」、及び「発明を実施するための形態」に開示されている要素並びに限定は、請求項中に明記されていないのであれば、示唆や推定等によって、個々であってもまとめてであっても、その請求項に加えられてはならない。
本願の詳細な説明の目的では、具体的に排除されていなければ、単数形は複数形を含み、かつ逆も真なりである。「含む/有する(including)」という用語は、「制限なく含む」ことを意味する。しかも「約」、「およそ」、「実質的に」、「だいたい」等の近似を表す語句は本願では、たとえば「ほぼ」、「3〜5%の範囲内」若しくは「許容可能な製造公差」又はこれらの論理的結合の意味で用いられてよい。
【0014】
図1は、マルチノードをサポートする、つまりはマルチノードシステムである典型的なシステム100のブロック図を表している。
システム100は、マザーボード100上の構成要素へ電力を供給する電源ユニット(PSU)102を含む。電源ユニット102と同一のバックアップ用電源ユニット108がバックアップ電源用に供されてよい。
【0015】
システム100は、複数のノード−たとえばノード130,132,134、及び136−を含む。複数のノードはこの例では、マルチノードシステム140を構成する。ノード130,132,134、及び136の各々は、マザーボードであるため、プロセッサ、メモリ、及びベースボード管理コントローラを有する。本願で説明される原則は、1つ以上の電源ユニットによって電力供給される任意の数のノードを有するマルチノードシステムの電力分配に適用され得ることに留意して欲しい。ノード130,132,134、及び136の電力消費は、これらのノードにそれぞれ対応する電流センサ150,152,154、及び156を介して決定されてよい。電流センサ150,152,154、及び156の出力は、シャーシ管理コントローラ142に結合され、かつ、シャーシ管理コントローラ142がノード130,132,134、及び136へ電力を割り当てるための電力消費データを提供してよい。
【0016】
図1のシステム100は、マルチノードマザーボード及び他の機能を実行する他のボード−たとえばメモリデバイス又はインターフェースデバイス−を含む情報処理システムの一部であってよい。この例では、マルチノードシステム140のノード130,132,134、及び136は、電源ユニット102によって電力供給される。よってシャーシ管理コントローラ142は、システム100上のノード130,132,134、及び136並びに任意で他の構成要素へ供給される電力を制御してよい。
【0017】
この例では、シャーシ管理コントローラ142は、管理コントローラとして動作し、かつ、アプリケーションソフトウエア用に各独立した再書き込み可能メモリ及び永久メモリを有してよい。シャーシ管理コントローラ142はまた、シャーシ管理コントローラと電力データバス−PSUの電力コントローラに結合され得るパワーマネジメントバス(PMbus)−との間での通信を可能にする通信インターフェースをも有して良い。他の通信インターフェースは、シャーシマネージャとデータバス−たとえばMBのBMCに結合され得るSMBus−との間での通信を可能にする。シャーシ管理コントローラ142は、目的−たとえばネットワーク動作、管理、又はトラブルシューティング−のためにデータバスから複数のプロセッサの性能データを受信してよい。当然のこととして、任意の適切な制御装置が、シャーシ管理コントローラ142用に用いられてよいことに留意して欲しい。たとえば電力を監視及び制御するシャーシ管理コントローラ142の機能は、複数のノードのうちの1つ−たとえばノード130−によって、又は、複数のノードのうちの一上のベースボード管理コントローラ若しくはPSU102の一部となり得る電力コントローラの一部として実行されてよい。
【0018】
シャーシ管理コントローラ142によるシステム−たとえばシステム100−内の複数のノード間での電力の分配方法は、この例では、複数のノード間での電力を動的に調和させることを可能にする。電力を動的に調和させるように動作可能なマルチノードシステムは、合計数がnのノードを含む。各ノードは、1〜nのノード番号xを有する。たとえば図1のシステム100の4つのコア130,132,134、及び136はそれぞれ、ノード1、ノード2、ノード3、及びノード4と指定されてよい。システム−たとえばシステム100−の設定電力(SP)が設定される。設定電力とは、システムの電力消費を制限するためにある電力値に設定される電力値である。この例では、プロセッサ−たとえばマルチノードシステム100−のコアは、電力消費が設定電力よりも大きい場合に、ノードの設定電力値に到達しようとして動作速度を減少させる。各ノードの設定電力はSPxで表される。よってこの例では、ノード1の設定電力(SP1)は450Wとなり得る。
【0019】
システムの実際の電力はRPで表される。各ノードの実際の電力はRPで表される。実際の電力とは、システムの電流センサ−たとえばシステム100の電流センサ150,152,154、及び156−から読み取られる電力値である。よってノード1の実際の電力(RP1)は、設定電力未満の電力がそのノードによって消費されていることを示唆する380Wであり得る。システムの実際の電力はTPで表される。システムの合計電力(TP)は、nノードシステムによって消費される実際の合計電力(各ノードの実際の電力の合計)に他のボード及びデバイスの電力を加えた電力によって決定される。nノードシステムによって消費される実際の合計電力は次式で表されてよい。
【数1】
【0020】
他のボード及びデバイスの電力はOPで表されてよい。システムの合計電力(TP)は、電源ユニットの電流センサによって測定されてよい。よって他のボード及びデバイスの電力(OP)は、実際の合計電力からシステムの合計電力を減じることによって決定されてよい。実際の合計電力は、ノード130,132,134、及び136にそれぞれ対応する電流センサ150,152,154、及び156から読み取られる電力データ値に基づいて制御装置−たとえばシャーシ管理コントローラ142−によって決定される。
【0021】
マルチノードシステムの未使用合計電力はUTPで表される。未使用合計電力は、MOPで表される、電源ユニット−たとえば電源ユニット102−によって供給され得る合計電力消費(PSUの最大出力電力又はシステムが長時間動作しても安全だと判断される電力値)を決定し、かつ、システム合計電力(TP)を減じることによって決定される。よって未使用合計電力UTPは、最大出力電力からシステムの合計電力を減じることによって決定される(たとえばUTP=MOP−TP)。
【0022】
続いて追加調和電力が供給されてよい。各ノードの追加調和電力はSBPで表される。SBPは、ノードの実際の電力に係数yを乗じた値に等しい。よって各ノードでは、SBP=yRPである。係数yは、0より大きくかつ1未満の値で、かつ、一定値であっても良いしあるいは変動する値であってもよい。たとえば係数yは、ノード間でのすべての利用可能な電力を調和させるために相対的に高い値に設定されてよいが、需要の低いノードへの電力を減らしながらある需要の高いノードへの電力を最適化するために相対的に低い値で設定されてもよい。この例では、yが一定値0.1であると仮定するとノード1からの追加調和電力(SBP1)は、0.1×380W=38Wと決定され得る。
【0023】
追加調和電力は、電力割り当てプロセス前でのノード電力のy係数として表される比率分を取り出すことで、調和させるための予定消費電力を構成する。電力を調和させるための追加合計予定消費電力は、システム内の各ノードの調和電力を加えることによって決定される。これは次式で表される。
【数2】
【0024】
すべてのノードにとって必要な電力が、電源ユニット102から利用可能な電力を超える場合、電源ユニット102は、ノードにさらなる電力を供給できない。この場合、ノードの各設定電力の値は、調和させる目的で未使用合計電力を供給するように減少する。各ノードの減少する電力は、各ノードの負荷に比例する。たとえば負荷が重いノードは、より多くの追加調和電力を供給する。場合によっては、負荷の軽いノードは100%の電力を必要としないので、予定消費電力は、負荷の軽いノードから利用可能な電力を反映したより多くの電力を必要とするノードへ、より多くの電力を供給するように構成されてよい。
【0025】
よって合計追加予定消費電力(TBP)は、未使用合計電力UTPを取得し、かつ、各ノードからの追加調和電力を加えることによって決定される。合計調和予定消費電力は次式によって計算される。
【数3】
【0026】
各ノードの電力使用の大きさはPUで表される。電力使用の大きさは、ノードの実際の電力(RPx)をそのノードの設定電力(SP)で除した値である。よってノード1の電力使用の大きさは、380/450=0.844となり得る。電力使用の大きさは、各ノードがどの程度の電力を必要としているのかを示し得る。あるノードについて電力使用の大きさが1以上である場合、そのノードが全設定電力又はそのノードの設定電力の値よりも大きな電力を必要とすることが示唆されている。この例では、ノード1の電力使用は1未満であるので、ノード1は設定電力未満の電力しか要求していない。
【0027】
システム内のノードxの電力使用の比率は、%(PU)で表され、かつ、そのノードの電力使用をすべてのノードの合計電力使用で除した値によって決定されてよい。よって電力使用の比率が最も高いノードは、マルチノードシステム内の他のノードと比較して最も電力を必要とするノードであることを示唆している。あるノードの電力使用の比率は、システム電力調和用にとっておいた予定消費電力を割り当てるのに用いられる。よってあるノードについて、電力使用の比率が大きければ大きいほど、シャーシ管理コントローラ142によってより多くの電力が割り当てられる。
【0028】
各ノードの調和予定消費電力(ABP)はABPで表される。調和予定消費電力は、合計調和予定消費電力TBPにノードの電力使用比率を乗じることによって決定される。これは次式で表され得る。
【数4】
【0029】
システムはまた、各ノードの次の設定電力をも決定する。次の設定電力は、ノードの実際の電力(RP)からそのノードの追加調和電力(SBP)を減じ、かつ、そのノードの調和予定消費電力(APB)を加えることに基づいて決定される。これは次式で表され得る。
【数5】
【0030】
次の設定電力は、コントローラ−たとえばシャーシ管理コントローラ142−のメモリ内に格納され、かつ、ノード間での電力再割り当てを決定するのに用いられる。よってシャーシ管理コントローラ142は、ベースボード管理コントローラに、次の設定電力に従って、ノード130,132,134、及び136の各々へ電力を割り当てさせる。ノード130,132,134、及び136の各々の電力の変化によって、そのノードの電力需要に基づいて電力を動的に調和させることが可能となる。
【0031】
図2A図2Bは、図1の典型的なマザーボード100内のノード130,132,134、及び136の各々の設定電力、実際の電力、追加調和電力、電力使用の大きさ、電力使用割合、追加調和予定消費電力、及び次の設定電力を示す表である。図2A図2Bの値は、図1のノード130,132,134、及び136の各々が多量の電力を取り込む場合での高電力使用のシナリオを仮定している。図2A図2Bの値は、電力モニタ150,152,154、及び156によって測定される各ノーによって消費される電力に基づいて、シャーシ管理コントローラ142によって決定される。
【0032】
この例では、未使用合計電力UTPはゼロである。各ノードでは、係数yはこの例では0.3であるため、各ノードの追加調和電力は、そのノードの実際の電力の0.3である。各ノードの電力使用割合は、実際の電力が設定電力に等しいことを示す1である。図2Aに示されるプロセス開始時点では、ノード1の電力は500Wで、ノード2の電力は400Wで、ノード3の電力は300Wで、かつ、ノード4の電力は200Wである。合計調和予定消費電力(TBP)は420である。よって、合計ノード電力消費は1400Wで、かつ、他のボードとデバイスの電力(OP)は200Wである。従って合計電力消費は1600Wであり、この値は利用可能電力である1600Wと同一であるので、未使用合計電力UTPはゼロである。
【0033】
図2Bは、上述の電力調和プロセスがシャーシ管理コントローラ142によって実行された後のノード130,132,134、及び136の調節値を示す表である。図2Bから見てとれるように、最も負荷の重いノード(ノード1とノード2)の設定電力が減少し、かつ、負荷の軽いノード(ノード3とノード4)の設定電力が増大した。たとえば、455である図2Aの表中のノード1の次の設定電力は、500であるノード1の実際の電力を取得し、150である追加調和電力値(SBP)を減じ、かつ、105である調和予定消費電力(ABP)を加える結果455である次の設定電力を得ることによって決定される。上で説明したように、ノード1の実際の電力−この例では500−と、係数y−この例では0.3−とを乗じた結果得られた150である追加調和電力値によって、150である追加調和電力値(SBP)が得られる。上で説明したように、105である調和予定消費電力値は、420である合計調和予定消費電力と0.25であるノード1の電力使用割合を乗じることによって得られる。
【0034】
続いて図2Aで得られた次の設定電力値は、図2Bで示されているように電力調和プロセスの次の反復における設定電力値として用いられる。図2Bに示されているように、プロセスを2回実行した後、負荷の重いノード1の次の設定電力はさらに減少して423.5となる一方、負荷の軽いノード4の次の設定電力はさらに増大して276.5となる。
【0035】
続いてシャーシ管理コントローラ142は、図2Bの次の設定電力値を用いることによって同一の電力調和プロセスを実行してよい。このプロセスを反復実行することによって、図1のノード130,132,134、及び136へ動的に電力を割り当てることが可能となる。
【0036】
図3は、上述の電力調和プロセスを10度実行した後のノード130,132,134、及び136の各々の実際の電力値を示すグラフである。ノード130,132,134、及び136の実際の電力値はそれぞれ、線300,302,304、及び306によって表される。図3から見て取れるように、各ノードについての実際の電力値が350Wへ収束することで、システムの負荷は調和する。
【0037】
負荷を調和させる他の例は、あるノードの電力要求が低いときである。図4A図4B、及び図4Cは、上述の電力調和プロセスの実行中での図1の典型的システム100中のノード130,132,134、及び136の各々の設定電力、実際の電力、追加調和電力、電力使用の大きさ、電力使用割合、追加調和予定消費電力、及び次の設定電力を示す表である。この例では、第1ノード130と第3ノード134の電力要求が高い一方で、第2ノード132と第4ノード136の電力要求は低い。
【0038】
この例では、各ノードの係数yは0.1であるため、各ノードの追加調和電力は実際の電力の0.1である。ノード1とノード3の各々の電力使用割合は、実際の電力が設定電力に等しいことを示す1であり、かつ、ノード1とノード3の電力要求は高い。ノード2とノード4の電力使用割合は、ノード2とノード4の電力要求がノード1とノード3の電力要求よりも低いことを示す0.9である。図4Aに示されているように、プロセスの開始時点では、ノード1の設定電力は500で、ノード2の設定電力は500で、ノード3の設定電力は300で、かつ、ノード4の設定電力は300である。対照的に、実際の電力は、ノード1では500で、ノード2では450で、ノード3では300で、かつ、ノード4では270である。合計調和予定消費電力(TBP)は232である。合計ノード電力消費は1600Wで、かつ、他のボード及びデバイスの電力(OP)は200Wである。よって合計電力消費は利用可能な電力である1800に等しく、かつ、未使用合計電力UTPはゼロである。
【0039】
図4Bは、図4Aでの値から上述の電力調和プロセスが実行された後の調節値を示す表である。図4Aと比較した図4Bから見て取れるように、最も負荷の重いノード(ノード1とノード3)の設定電力は増大し、かつ、負荷の軽いノード(ノード2とノード4)の設定電力は減少した。たとえば、511である図4Aの表中でのノード1の次の設定電力は、500であるノード1の実際の電力を取得し、50である追加調和電力値(SBP)を減じ、かつ、61.1である調和予定消費電力(ABP)を加える結果得られる511であるノード1の次の設定電力によって決定される。上述したように、50である追加調和電力値(SBP)は、ノード1の実際の電力−この例では500−と、係数y−この例では0.1−とを乗じた結果得られた50である追加調和電力値によって、50である追加調和電力値(SBP)が得られる。上で説明したように、61.1である調和予定消費電力値は、420である合計調和予定消費電力と0.25であるノード1の電力使用割合を乗じることによって得られる。
【0040】
続いて図4Aで得られた次の設定電力値は、図4Bで示されているように電力調和プロセスの次の反復における設定電力値として用いられる。図4Bに示されているように、負荷の重いノード1の次の設定電力はさらに増大して520.8となる。
【0041】
逆に、電力要求の低いノードでは、次の設定電力値が減少する。たとえば、図4B中の表のノード2の設定値は459.9である。459.9というノード2の設定値は、450である図4Aに示されているノード2の実際の電力を取得し、45である追加調和電力値(SBP)を減じ、かつ、54.9である調和予定消費電力(ABP)を加える結果得られる459.9である図4Bの次の設定電力によって決定される。上で説明したように、ノード2の実際の電力−この例では450−と、係数y−この例では0.1−とを乗じた結果得られた45である追加調和電力値によって、45である追加調和電力値(SBP)が得られる。上で説明したように、54.9である調和予定消費電力値は、232である合計調和予定消費電力と0.24であるノード2の電力使用割合を乗じることによって得られる。図4Bで示されているように、負荷の軽いノード2の次の設定電力はさらに減少して433.5となる。
【0042】
図4Cは、3回目の電力調和アプリケーションが実行された後のノードの電力値を示している。電力要求の高いノード1とノード3の設定電力は図4Bでの値から増大した一方で、電力要求の低いノード2とノード4の設定電力は図4Bでの値から減少した。
【0043】
図5は、図4Aの表中の初期値から電力調和プロセスを10回実行した後のノード130,132,134、及び136の各々の設定電力値を示すグラフである。ノード130,132,134、及び136の設定電力値はそれぞれ、線500,502,504、及び50によって表される。図5から見て取れるように、システム負荷は、ノード間での電力を調和させることで、電力要求の高いノード−たとえば線500によって表されるノード1及び線504によって表されるノード3−の設定電力を増大させることを可能にする。電力要求の低いノード−たとえば線502によって表されるノード2及び線506によって表されるノード4−では設定電力は減少する。
【0044】
上で説明したように、係数yは、システムの要求に依存して電力調和を最適化するように調節されてよい。図2A図2B図3に関連させて上述した例では、すべてのノードがより多くの電力を必要とする際に同一の平均電力を実現させることを可能にするため、係数yは0.3に設定される。図6は、図2Aの開始値で上述の電力調和プロセスを10回実行した後のノード130,132,134、及び136の各々の設定電力値を示すグラフである。ノード130,132,134、及び136の設定電力値は、係数yが0.1に設定されるときには、それぞれ線600,602,604、及び606によって表される。図3と比較した図6から見て取れるように、システム負荷は低速で調和させるため、すべてのノードがさらなる電力を必要とするときには、大きなyの値が電力を調和させる上では望ましい。
【0045】
図4A図4C図5に関連させて上述した例では、電力要求の高いノードが受ける電力割り当てを多くし、かつ、電力要求の低いノードの受ける電力割り当てを少なくすることを可能にするため、係数yは0.1に設定される。図7は、図4Aの開始値で上述の電力調和プロセスを10回実行した後のノード130,132,134、及び136の各々の設定電力値を示すグラフである。係数yが0.3に設定されるときのノード130,132,134、及び136の設定電力値はそれぞれ、線700,702,704、及び706によって表される。図5と比較して図7から見て取れるように、システムは、多くの電力を必要とするノードに割り当てる電力を少なくするので、一部のノードしかさらなる電力を必要としないときには、小さなyの値が、電力を調和させるのには望ましい。
【0046】
図8は、マルチノードシステムのノードに電力を動的に分配する管理コントローラ−たとえば図1のシャーシ管理コントローラ142−によって実行されるアルゴリズムの流れ図を示す。図8の流れ図は、マルチノードシステム−たとえば図1のシステム100−典型的な機械可読命令を表す。この例では、機械可読命令は、(a)プロセッサ、(b)コントローラ、及び/又は(c)1つ以上の他の適切な処理装置によって実行されるアルゴリズムを含む。アルゴリズムは、有形媒体−たとえばフラッシュメモリ、CD−ROM、フロッピーディスク、ハードドライブ、ディジタルビデオ(多目的)ディスク(DVD)、又は他のメモリデバイス−上に格納されるソフトウエアによって実施されてよい。しかし当業者は、アルゴリズムの全部又は一部は、プロセッサ以外の装置によって実行され、かつ/あるいは、ファームウエア若しくは専用ハードウエアによって周知の方法で実施され得る(たとえば用途特定集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルロジックデバイス(FPLD)、フィールドプログラマブルゲートアレイ(FPGA)、個別論理素子等によって実装されてよい)ことを容易に理解する。たとえばインターフェースの構成要素のいずれも、ソフトウエア、ハードウエア、及び/又はファームウエアによって実装されてよい。また図8のフローチャートによって表される機械可読命令の一部又は全部は、手動で実施されてもよい。さらに図8に表されているフローチャートを参照しながら典型的なアルゴリズムが説明されているが、当業者は、典型的な機械可読命令を実施する他の多くの方法が用いられ得ることを容易に理解する。たとえばブロックの実効順序は変更されてよく、かつ/あるいは、記載されているブロックの一部は変更、削除、又は結合されてよい。
【0047】
シャーシ管理コントローラ142は最初、電力調和処理を初期化する(800)。電力調和処理は、マルチノードシステム用に規則的に実行されるか、あるいは、1つ以上のノードの動作の変更に応じて開始されてよい。シャーシ管理コントローラ142は、電源ユニット102(MOP)の全電力の出力を取得し、かつ、TPを減じることによって未使用合計電力を決定する(802)。続いてシャーシ管理コントローラ142は、各ノードの実際の電力に係数を乗じた値を加えることによって追加調和電力を決定する(804)。続いてシャーシ管理コントローラ142は、各ノードの電力使用割合を決定する(806)。あるノードの電力使用割合は、あるノードの電力使用の大きさPUをすべてのノードの電力使用の大きさの合計PUで除することによって決定される。電力使用の大きさは、ノードの実際の電力(RP)をそのノードの設定電力(SP)で除すことによって決定される。
【0048】
続いてシャーシ管理コントローラ142は、ノード間で合計調和予定消費電力を割り当てることによって、一旦取り除いた合計調和予定消費電力を各ノードに再度加える(808)。あるノードの再度加えられた合計調和電力(ABP)は、合計調和予定消費電力(TBP)を取得し、かつ、そのノードの電力使用の大きさ(%(PU))をTBPに乗じることによって決定される。合計調和予定消費電力は、未使用合計電力(UTP)を取得し、かつ、各ノードの実際の電力使用から決定される追加調和電力に係数yを乗じた値(yRP)を加えることによって決定される。
【0049】
続いてシャーシ管理コントローラ142は、各ノードの次の設定電力(NSP)を決定する(810)。次の設定電力は、ノードの実際の電力(RP)からそのノードの追加調和電力(SBP)を減じ、かつ、そのノードの合計調和電力(ABP)を加えることによって決定される。続いてシャーシ管理コントローラ142は、システム内の各ノードへ供給される電力を最大でも次の設定電力となるように電源回路106を制御する。プロセスは続いて、最初に戻り、かつ、各ノードの次の設定電力に従って再度電力割り当てを調和させる。
【0050】
本願で用いられているように、「構成要素」、「モジュール」、「システム」等の用語は概して、コンピュータに関連するもの−ハードウエア(たとえば回路)、ハードウエアとソフトウエアの結合、ソフトウエア、又は、1つ以上の具体的機能を備える操作機械に関連するもの−を指称することが意図されている。たとえば構成要素は、プロセッサ(ディジタル信号プロセッサ)上で動作するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、及び/又はコンピュータであってよいが、これらに限定されない。例として、コントローラ上で動作するアプリケーションとコントローラのいずれも構成要素であってよい。1つ以上の構成要素は、プロセス及び/又は実行スレッドの内部に存在してよい。構成要素は、一のコンピュータ上に局在するか、かつ/あるいいは、2つ以上のコンピュータ間で分配されてよい。さらに「デバイス」は、特別に設計されたハードウエア、ソフトウエアの実行によって特定の機能を実行することが可能となる特化する汎用ハードウエア、コンピュータ可読媒体上に格納されるソフトウエア、又は、これらの結合であってよい。
【0051】
情報処理デバイスは一般的に様々な媒体を含む。様々な媒体は、コンピュータ可読媒体及び/又は通信媒体を含んでよい。コンピュータ可読媒体と通信媒体は、本願では、以下の通りそれぞれ異なる意味で用いられている。コンピュータ可読媒体は、コンピュータによってアクセス可能な任意の利用可能な記憶媒体であってよく、一般的には非一時的な性質を有し、かつ、揮発性媒体と不揮発性媒体の両方、取り外し可能媒体と非取り外し可能媒体の両方を含んでよい。限定ではない例として、コンピュータ可読媒体は、情報−たとえばコンピュータ可読命令、プログラムモジュール、構造化データ、又は未構造化データ−を記憶する任意の方法又は技術に関連して実装されてよい。コンピュータ可読媒体は、RAM、ROM、EEPROM、フラッシュメモリ若しくは他のメモリ技術、CD-ROM、ディジタル多目的ディスク(DVD)若しくは他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク、若しくは他の磁気記憶装置、又は、所望の情報の記憶に用いられ得る他の有形及び/又は非一時的媒体を含んでよいが、これらに限定されない。コンピュータ可読媒体は、媒体に格納されている情報に関して様々な操作を行うため、たとえばアクセス要求、クエリー、又は他のデータ検索プロトコルを介して1つ以上の局所又は遠隔情報処理デバイスによってアクセスされてよい。
【0052】
本願で用いられているように、複数形であると明記されていない名詞はその複数形を含む。さらに明細書又は特許請求の範囲のいずれかで用いられる限りにおいて、「有する」、「備える」等の用語は、「含む」と同様に包括的であると意図される。
【0053】
定義されない場合、本願で用いられるすべての用語(科学技術の専門用語を含む)は、当業者が一般的に理解するのと同じ意味を有する。さらに広く用いられている辞書で定義されている用語は、当技術分野における意味と整合する意味を有するもの解釈され、かつ、本願で明示的に定義されなければ、理想化された、あるいは、過度に形式的な意味で解釈されてはならないことに留意して欲しい。
【0054】
本発明の様々な実施形態が上で説明されてきたが、これらの実施形態は単なる例示として与えられたのであって限定ではないことに留意して欲しい。開示された実施形態の様々な変化型が、本発明の技術的思想又は技術的範囲から逸脱することなく本願の開示に従って実現され得る。よって本発明の技術的範囲は、上述の実施形態によって限定されてはならない。むしろ本発明の技術的範囲は、特許請求の範囲の請求項及びその均等物に従って定められなければならない。
【0055】
本発明は1つ以上の実施形態について図示及び説明されてきたが、本願明細書及び添付図面を読んで理解すれば、当業者には、均等な代替型及び修正型が思い浮かぶ。それに加えて、本発明のある特定の特徴が、複数の実施形態のうちの1つのみについて開示されてきたが、そのような特徴は、任意の所与の又は特定の用途にとって望ましく、かつ、有利になり得るものとして、他の実施形態の1つ以上の他の特徴と組み合わせられてよい。
図1
図2A
図2B
図3
図4A
図4B
図4C
図5
図6
図7
図8