(57)【特許請求の範囲】
【請求項１】
分散コンピューティングのための設備であって、当該設備は、
複数の計算ノードを含み、コンピューティングに関する複数のジョブを実行するように構成されるシステムと、
コードを格納するように構成されるメモリと、を含み、
前記コードは、前記複数の計算ノードによって又はプロセッサによって実行可能であり、当該設備の電力消費は、当該設備の前記電力消費を電力帯の範囲内に又は電力の傾き限度の範囲内に維持するように、設備レベルの電力マネージャ(FPM)、1つ又は複数のシステムレベルの電力パフォーマンスマネージャ(SPPM)、及び1つ又は複数のノードレベルの電力パフォーマンスマネージャ(NPPM)を使用することによって管理され、前記電力帯は、電力の指定された最小限度と電力の指定された最大限度との間で定義され、前記FPMは、
前記電力消費の突然の増加又は著しい増加を緩和するために局所的な発電器を起動し、電力を蓄えるために局所的なエネルギー蓄積を使用し、そして、電力を浪費するために冷却システムを起動するステップと、
当該設備の中の複数のシステムにシステムレベルの電力部分を割り当てるステップであって、前記システムレベルの電力部分の合計は、前記電力帯の範囲内の電力値となる、ステップと、
当該設備の中の各々のシステムの前記システムレベルの電力部分をモニタリングして、前記電力値にしたがって、システムレベルの電力の使用量の変動を検出するステップと、
前記電力帯の前記指定された最小限度を下回る前記システムレベルの電力部分の検出に基づいて、環境にやさしくない動作を実行して、前記電力帯の前記指定された最小限度を上回る前記システムレベルの電力部分の電力値を維持するステップと、
前記電力帯の前記指定された最大限度を上回る前記システムレベルの電力部分の検出に基づいて、環境にやさしい動作を実行して、前記電力帯の前記指定された最大限度を下回る前記システムレベルの電力部分の電力値を維持するステップと、を実行し、
前記環境にやさしい動作は、ノードの診断、前記ノードの較正、局所的な記憶装置の保守管理、又は、システムメモリの保守管理、のうちの少なくとも1つを実行し、前記環境にやさしくない動作は、電力低減機能の無効化、又は、電力を消費するが、前記システムに関する作業出力を生成しないプログラムの実行、のうちの少なくとも1つを実行する、
設備。
【請求項２】
前記コンピューティングは、分散コンピューティングを含み、前記ジョブは、分散コンピューティングジョブを含み、電力消費を管理することは、設備レベル、システムレベル、及びノードレベルの電力消費を管理することと、局所的な電力蓄積又は局所的な電力生成、或いは局所的な電力蓄積及び局所的な電力生成の両方を利用することと、を含む、請求項１に記載の設備。
【請求項３】
前記コードは、電力バルーンを含み、電力消費を管理することは、前記電力バルーンによって前記電力消費を調整することを含む、請求項１に記載の設備。
【請求項４】
前記電力バルーンによって前記電力消費を調整することは、前記電力消費の変化率を制御することを含む、請求項３に記載の設備。
【請求項５】
前記電力バルーンは、ノード電力バルーンを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項６】
前記電力バルーンは、システム電力バルーンを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項７】
前記電力バルーンによって前記電力消費を調整することは、環境にやさしい技術を実装することを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項８】
前記電力バルーンによって前記電力消費を調整することは、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない動作を実装することを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項９】
前記電力バルーンによって前記電力消費を調整することは、環境にやさしくない技術を実装することを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項１０】
前記電力バルーンによって前記電力消費を調整することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含み、前記動作は、エネルギーを消費して、当該設備における前記電力消費を、前記電力帯の最小限度を上回る値に維持するように構成される、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項１１】
前記電力バルーンによって前記電力消費を調整することは、診断を起動すること又は保守管理を実行すること、或いは、診断を起動すること及び保守管理を実行することの組み合わせを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項１２】
前記電力バルーンによって前記電力消費を調整することは、割り当てられていない電源を切られているノードの電源をオンにすることを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項１３】
前記電力バルーンによって前記電力消費を調整することは、電力熱公益事業施設のプロセスを起動させて、計算ノードのエネルギー消費を増加させることを含む、請求項３及び４のうちのいずれか１項に記載の設備。
【請求項１４】
電力消費を管理することは、前記電力消費の変化率を制御することを含む、請求項１及び２のいずれか１項に記載の設備。
【請求項１５】
前記電力消費の変化率を制御することは、前記複数の計算ノードの動作周波数を調整して、電力に関する優先順位付けを変化させ、ジョブを開始することによって生じる初期の電力消費を減少させることを含む、請求項１４に記載の設備。
【請求項１６】
分散コンピューティングのための設備であって、
複数の計算ノードを含む複数のシステムであって、各々のシステムは、複数の計算ノードを含み、分散コンピューティングに関する複数のジョブを実行するように構成される、複数のシステムと、
実行可能なコードを格納するように構成されるメモリと、を含み、
前記実行可能なコードは、当該設備における電力消費を管理し、当該設備の電力消費は、当該設備の前記電力消費を電力帯の範囲内に又は電力の傾き限度の範囲内に維持するように、設備レベルの電力マネージャ(FPM)、1つ又は複数のシステムレベルの電力パフォーマンスマネージャ(SPPM)、及び1つ又は複数のノードレベルの電力パフォーマンスマネージャ(NPPM)を使用することによって管理され、前記電力帯は、電力の指定された最小限度と電力の指定された最大限度との間で定義され、前記FPMは、
前記電力消費の突然の増加又は著しい増加を緩和するために局所的な発電器を起動し、電力を蓄えるために局所的なエネルギー蓄積を使用し、そして、電力を浪費するために冷却システムを起動するステップと、
当該設備の中の複数のシステムにシステムレベルの電力部分を割り当てるステップであって、前記システムレベルの電力部分の合計は、前記電力帯の範囲内の電力値となる、ステップと、
当該設備の中の各々のシステムの前記システムレベルの電力部分をモニタリングして、前記電力値にしたがって、システムレベルの電力の使用量の変動を検出するステップと、
前記電力帯の前記指定された最小限度を下回る前記システムレベルの電力部分の検出に基づいて、環境にやさしくない動作を実行して、前記電力帯の前記指定された最小限度を上回る前記システムレベルの電力部分の電力値を維持するステップと、
前記電力帯の前記指定された最大限度を上回る前記システムレベルの電力部分の検出に基づいて、環境にやさしい動作を実行して、前記電力帯の前記指定された最大限度を下回る前記システムレベルの電力部分の電力値を維持するステップと、を実行し、
前記環境にやさしい動作は、ノードの診断、前記ノードの較正、局所的な記憶装置の保守管理、又は、システムメモリの保守管理、のうちの少なくとも1つを実行し、前記環境にやさしくない動作は、電力低減機能の無効化、又は、電力を消費するが、前記システムに関する作業出力を生成しないプログラムの実行、のうちの少なくとも1つを実行する、
設備。
【請求項１７】
前記動作は、複数の計算ノードを含むシステムにおいて動作するか又は計算ノードにおいて動作するか、或いは、システム及び計算ノードの双方において動作し、当該設備は、クラウドコンピューティング設備、分散コンピューティング設備、高性能コンピューティング(HPC)設備、ビッグデータ分析設備、又は、前記クラウドコンピューティング設備、前記分散コンピューティング設備、前記高性能コンピューティング(HPC)設備、及び前記ビッグデータ分析設備のいずれかの組み合わせを含む、請求項１６に記載の設備。
【請求項１８】
実行可能なコードは、前記動作を開始する電力バルーンを含む、請求項１６及び１７のいずれか１項に記載の設備。
【請求項１９】
分散コンピューティングの方法であって、複数の計算ノードを含み、コンピューティングに関する複数のジョブを実行するように構成されるシステムを含む設備の電力消費は、前記設備の前記電力消費を電力帯の範囲内に又は電力の傾き限度の範囲内に維持するように、設備レベルの電力マネージャ(FPM)、1つ又は複数のシステムレベルの電力パフォーマンスマネージャ(SPPM)、及び1つ又は複数のノードレベルの電力パフォーマンスマネージャ(NPPM)を使用することによって管理され、前記電力帯は、電力の指定された最小限度と電力の指定された最大限度との間で定義され、当該方法は、
前記電力消費の突然の増加又は著しい増加を緩和するために局所的な発電器を起動し、電力を蓄えるために局所的なエネルギー蓄積を使用し、そして、電力を浪費するために冷却システムを起動するステップと、
前記設備の中の複数のシステムにシステムレベルの電力部分を割り当てるステップであって、前記システムレベルの電力部分の合計は、前記電力帯の範囲内の電力値となる、ステップと、
前記設備の中の各々のシステムの前記システムレベルの電力部分をモニタリングして、前記電力値にしたがって、システムレベルの電力の使用量の変動を検出するステップと、
前記電力帯の前記指定された最小限度を下回る前記システムレベルの電力部分の検出に基づいて、環境にやさしくない動作を実行して、前記電力帯の前記指定された最小限度を上回る前記システムレベルの電力部分の電力値を維持するステップと、
前記電力帯の前記指定された最大限度を上回る前記システムレベルの電力部分の検出に基づいて、環境にやさしい動作を実行して、前記電力帯の前記指定された最大限度を下回る前記システムレベルの電力部分の電力値を維持するステップと、を含み、
前記環境にやさしい動作は、ノードの診断、前記ノードの較正、局所的な記憶装置の保守管理、又は、システムメモリの保守管理、のうちの少なくとも1つを実行し、前記環境にやさしくない動作は、電力低減機能の無効化、又は、電力を消費するが、前記システムに関する作業出力を生成しないプログラムの実行、のうちの少なくとも1つを実行する、
方法。
【請求項２０】
電力消費を管理するステップは、電力バルーンによって電力消費を管理するステップを含む、請求項１９に記載の方法。
【請求項２１】
前記電力バルーンは、システムレベルの電力バルーン、又はノードレベルの電力バルーン、或いは、システムレベル及びノードレベルの双方の電力バルーンであり、電力バルーンによって電力消費を管理するステップは、環境にやさしい動作を実装するステップを含み、前記環境にやさしい動作は、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない、請求項２０に記載の方法。
【請求項２２】
電力バルーンによって電力消費を管理するステップは、環境にやさしくない動作を実装するステップを含み、前記環境にやさしくない動作は、役に立つ作業結果を全く生成しないとともに追加の計算出力を全く生成せず、前記環境にやさしくない動作は、エネルギーを消費して、前記設備における前記電力消費を、前記電力帯の最小限度を上回る値に維持するために実装される、請求項２０に記載の方法。
【請求項２３】
プロセッサによって実行可能な複数の命令を含むコンピュータプログラムであって、
前記複数の命令は、前記プロセッサで実行されると、前記プロセッサに、設備の電力消費の管理を実行させ、前記設備の電力消費は、前記設備の前記電力消費を電力帯の範囲内に維持するとともに、前記設備による電力消費の変化率を制御するように、設備レベルの電力マネージャ(FPM)、1つ又は複数のシステムレベルの電力パフォーマンスマネージャ(SPPM)、及び1つ又は複数のノードレベルの電力パフォーマンスマネージャ(NPPM)を使用することによって管理され、前記電力帯は、電力の指定された最小限度と電力の指定された最大限度との間で定義され、前記設備は、複数の計算ノードを有する複数の分散コンピューティングシステムを有し、前記FPMは、
前記電力消費の突然の増加又は著しい増加を緩和するために局所的な発電器を起動し、電力を蓄えるために局所的なエネルギー蓄積を使用し、そして、電力を浪費するために冷却システムを起動するステップと、
前記設備の中の複数のシステムにシステムレベルの電力部分を割り当てるステップであって、前記システムレベルの電力部分の合計は、前記電力帯の範囲内の電力値となる、ステップと、
前記設備の中の各々のシステムの前記システムレベルの電力部分をモニタリングして、前記電力値にしたがって、システムレベルの電力の使用量の変動を検出するステップと、
前記電力帯の前記指定された最小限度を下回る前記システムレベルの電力部分の検出に基づいて、環境にやさしくない動作を実行して、前記電力帯の前記指定された最小限度を上回る前記システムレベルの電力部分の電力値を維持するステップと、
前記電力帯の前記指定された最大限度を上回る前記システムレベルの電力部分の検出に基づいて、環境にやさしい動作を実行して、前記電力帯の前記指定された最大限度を下回る前記システムレベルの電力部分の電力値を維持するステップと、を実行し、
前記環境にやさしい動作は、ノードの診断、前記ノードの較正、局所的な記憶装置の保守管理、又は、システムメモリの保守管理、のうちの少なくとも1つを実行し、前記環境にやさしくない動作は、電力低減機能の無効化、又は、電力を消費するが、前記システムに関する作業出力を生成しないプログラムの実行、のうちの少なくとも1つを実行する、
コンピュータプログラム。
【請求項２４】
前記プロセッサによって実行可能な前記複数の命令は、電力バルーンを含み、電力消費の管理を実行させることは、環境にやさしい動作を実装する前記電力バルーンにより電力消費の調整を実行させることを含み、前記環境にやさしい動作は、役に立つ作業結果を生成するが、ユーザのために計算出力を全く生成しない、請求項２３に記載のコンピュータプログラム。
【請求項２５】
前記プロセッサによって実行可能な前記複数の命令は、電力バルーンを含み、電力消費の管理を実行させることは、環境にやさしくない動作を実装する前記電力バルーンにより電力消費の調整を実行させることを含み、前記環境にやさしくない動作は、役に立つ作業結果を全く生成しないとともに追加の計算出力を全く生成せず、前記環境にやさしくない動作は、エネルギーを消費して、前記設備における前記電力消費を、前記電力帯の指定された最小限度を上回る値に維持するために実装される、請求項２３及び２４のいずれか１項に記載のコンピュータプログラム。
【請求項２６】
請求項２３乃至２５のいずれか１項に記載のコンピュータプログラムを格納している非一時的コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、2014年12月24日付で出願された米国特許出願第14/582,985号に基づく優先権の利益を主張し、米国特許出願第14/582,985号の内容は、本願の参照として取り入れられる。
【０００２】
本発明の技術は、概して、分散コンピューティングを実行する設備への電気の供給に関し、より具体的には、本発明の技術は、その設備の電力消費の管理に関する。
【背景技術】
【０００３】
種々多様なコンピューティング構成及びコンピューティングシステムは、比較的大きな電力量を消費することがある。そのようなシステムは、クラウドコンピューティング、ビッグデータ分析、Webサービス、企業向けサービス、分散コンピューティング、高性能コンピューティング(HPC)等のためのシステムを含んでもよい。それらのシステムを収容する設備は、有意な量のエネルギーを必要とする可能性がある。
【０００４】
分散コンピューティング、HPCシステム、及び他の上記の構成は、科学者やエンジニアが、複数のアプリケーションを使用することによって、複雑な科学的な問題、工学的な問題、及び業務用の問題を解くことを容易にし、それらの複数のアプリケーションは、広帯域且つ低遅延のネットワーク接続及び極めて高い計算能力から恩恵を受けている。これらのシステムは、データ記憶及びデータ検索を実行してもよく、より単純な複数のタスクを実行する等してもよい。上記でも述べたが、複数のタスクを実行する数百或いは数千にも及ぶプロセッサ、サーバ、又は計算ノードを有する可能性がある分散コンピューティングシステム、HPCシステム、及びその他のシステム等のシステムは、残念なことに、通常、有意な量の電力を消費する。そのような問題は、特に、"ビッグデータ"の時代においては解決が困難となる可能性がある。さらに、電力消費の多様性及び電力割り当ての問題も、また、解決が困難となる可能性がある。
【０００５】
データサービスやコンピューティングサービスといった競争の激しい業種は、製造業者を、製造コストを下げ、信頼性のあるサービスを配信することを目的とした彼らのプロセス及び製品の絶え間ない改善に駆り立てている。まさに、データ、コンピューティング、及び通信に関するサービスの領域では、技術が進歩するにしたがい、サービスの整合性及び電力利用の効率を持続的に高めるための競争の必要性が存在する。
【図面の簡単な説明】
【０００６】
【図１】本発明の複数の実施形態にしたがった1つの例示的な分散コンピューティングシステムのダイヤグラム表現である。
【図２】本発明の複数の実施形態にしたがった分散コンピューティングのための1つの例示的な設備のブロック図である。
【図３】本発明の複数の実施形態にしたがった分散コンピューティングのための1つの例示的な設備のダイヤグラム表示である。
【図４】本発明の複数の実施形態にしたがった分散コンピューティングのための1つの例示的な設備のシステムレベル及びノードレベルのダイヤグラム表示である。
【図５Ａ】本発明の複数の実施形態にしたがった電力管理階層及び電力管理動作の1つの例のフローチャートである。
【図５Ｂ】本発明の複数の実施形態にしたがった電力管理階層及び電力管理動作の1つの例のフローチャートである。
【図６】本発明の複数の実施形態にしたがったシステムレベル及びノードレベルでの例示的なマネージャ及び機能のブロック図である。
【図７】本発明の複数の実施形態にしたがった分散コンピューティングの2つの例示的なジョブの電力消費を比較している棒グラフである。
【図８】本発明の複数の実施形態にしたがった非一時的コンピュータ読み取り可能な有体的な媒体の1つの例を図示しているブロック図であり、その非一時的コンピュータ読み取り可能な有体的な媒体は、分散コンピューティングシステムの電力管理を容易にしてもよい。
【０００７】
同様の構成要素及び特徴に言及するために、複数の同じ番号が、明細書及び図面を通じて使用される。100番台の連続番号は、図1に当初から記載されており、200番台の連続番号は、図2に当初から記載されている複数の特徴を指している等である。
【発明を実施するための形態】
【０００８】
本発明の複数の実施形態は、複数の計算ノードを含み、コンピューティングの複数のジョブを実行するように構成されるシステムを有する設備に関している。ある電力帯の範囲内となるように及び/又は電力の変化が望ましい又は指定された傾き又は変化率の範囲内となるように、上記の設備での電力消費を管理し或いは制御する。電力の変化の変化率は、例えば、単位分ごとの又は単位時間ごとのある大きさのワット数であってもよい。ある電力帯の範囲内又はある傾きの範囲内への電力消費の管理又は制御は、設備レベル、システムレベル、及びジョブ/ノードレベルで行われてもよい。
【０００９】
さらに、電力消費をある電力帯の範囲内となるように制御することは、従来から行われているように単により少ない電力或いはより小さな電気を使用するように試みることよりもより一層困難であるということに留意すべきである。むしろ、例えば、電力帯は、電力のある指定された最小値からある指定された最大値までの範囲にあってもよいが、複数の実施形態においては、その電力帯は、比較的狭い範囲である。例えば、上記の電力帯は、公益事業提供者との間で交渉された範囲と関連付けられていてもよい。交渉されて公益事業提供者から設備の側に割り当てられる電力量は、(例えば、8.5[MW]まで低下することは許されるが8.5[MW]を下回ることは許されない10[MW]の割り当て等の)電力の比較的狭い範囲となってもよい。このようにして、上記の電力帯では、電力帯の最大限度は、(例えば、10[MW]等の)電力消費の割り当てられた量であってもよい。電力帯の最小限度は、割り当ての際に交渉され、電力消費が到達するべき(例えば、8.5[MW]等の)より小さな量であってもよい。エネルギーの局所的な生成及び蓄積を設備が使用すると、その設備での電力消費及び公益事業提供者との間で交渉された割り当てを満たすことに関して、(例えば、設備レベルでの制御に使用される電力帯をわずかに広げる等の)柔軟性を提供することができるということに留意すべきである。それでもなお、エネルギーの局所的な生成/蓄積の有無にかかわらず、設備は、電力帯の範囲内となるようにその設備での電力消費を制御する動作を実装してもよい。
【００１０】
電力消費を調整する様々な動作を実装してもよい。設備レベルの動作の1つの例は、冷却システムの温度を必要とされる温度をこえて下げることにより電力を浪費することであってもよい。設備の電力消費が電力帯の範囲内にとどまるように電力消費を増加させるそのような動作を実装してもよい。設備レベルの動作の他の例は、エネルギーの局所的な生成/蓄積を起動し又は調整して、電力消費を電力帯の範囲内に或いは電力の傾き限度又は電力の傾き目標に維持することであってもよい。エネルギーの生成は、例えば、その設備に対して局所的な位置に位置する再生可能なエネルギー源及び/又は再生可能でないエネルギー源からの生成であってもよい。エネルギーの蓄積は、(例えば、バッテリー等の)電力の蓄積、(凍結された液体、冷却された液体等の)熱蓄積等を伴ってもよい。
【００１１】
電力消費を管理するとともに制御するために、低い優先順位の計算出力を有しているか又は計算出力を全く有していない動作をシステムレベル及びジョブ/ノードレベルで実装して、電力消費を変化させてもよい。以下で説明するように、システムレベルで及びジョブ/ノードレベルで、電力バルーンモジュールによってそのような動作を実装してもよい。それらの動作は、電力帯及び電力の変化の変化率の双方に関して、電力消費を増加させ又は減少させることであってもよい。例えば、電力バルーンは、エネルギーを浪費して、電力の突然の減少を減速させる動作を指定し又は開始してもよい。他の例では、マネージャモジュールは、電力を増加させるが、計算出力を全く有していない動作を開始してもよい。例えば、そのような動作は、(アイドルなノードでジョブを実行することなく)そのアイドルなノードに給電して、電力を浪費し/費やし、それによって、指定された最小の目標値を上回るまでシステムの電力消費を増加させることであってもよい。
【００１２】
再び、電力バルーンモジュール又はマネージャモジュールは、計算出力/作業出力をほとんど又は全く有していない動作、或いは、追加的な計算出力を全く有していない動作を開始して、システムレベルで及び/又はノードレベルで電力を調整し、制御してもよい。これらの動作は、"環境にやさしい(green)"動作及び"環境にやさしくない(non-green)"動作を含んでもよい。
【００１３】
環境にやさしい技術は、役立つが、クライアントのためにまったく計算出力を生成しないか、又は新たな計算ジョブ出力を全く生成しないか、或いは、新たなジョブ作業結果を全く生成しない。言い換えると、複数の特定の実施形態において、環境にやさしい動作は、役立つ機能を提供するが、ユーザ又はクライアントのための計算出力を全く生成しなくてもよい。(電力バルーンモジュール又はマネージャモジュールによって実行されて、電力を調整する/制御する)環境にやさしい技術の複数の例は、ノードにおける又は複数のノードからなるシステムにおける診断動作及び保守管理動作である。システムレベルでは、電力バルーンモジュール又はマネージャモジュールによる環境にやさしい動作は、システム診断、割り当てられてはいないが(ノード電力によって)給電されているノードの較正、ストレージシステムの(圧縮、ウィルススキャン、エラー検出及びエラー訂正等の)保守管理、システムメモリの(エラー検出及びエラー訂正等の)保守管理、低い優先順位のジョブの起動(running)等を含んでもよい。ノードレベルでは、電力バルーンモジュール又はマネージャモジュールによって開始される環境にやさしい動作は、ノード診断、ノードの較正、ローカルストレージの(圧縮、ウィルススキャン、エラー検出及びエラー訂正等の)保守管理、システムメモリの(エラー検出及びエラー訂正等の)保守管理を含んでもよい。
【００１４】
対照的に、環境にやさしくない技術は、エネルギーを浪費することにより電力消費を増加させる非効率なエネルギーとなるように意図されている目的を有している場合のみに役立つ動作であり、それ以外の目的には役に立たない動作である。電力バルーンモジュール又はマネージャモジュールによって実行される環境にやさしくない動作は、役立つ機能を全く提供せず、出力を全く生成しないか又は少なくとも作業出力を全く生成せず、計算出力(又は、追加の計算出力)を全く生成しない。電力バルーンモジュール又はマネージャモジュールは、環境にやさしくない動作を実行してエネルギーを消費し、それによって、ノード又はシステムでの(したがって、設備での)電力消費を、電力帯の下限値又は下側の目標値を上回る値に維持し、或いは、電力の変化の変化率の上限値又は上側の目標値を下回る値に維持する。
【００１５】
ジョブ/ノードレベルでは、電力バルーンモジュール又はマネージャモジュールによって開始される環境にやさしくない動作は、(例えば、電力を低減し、計算負荷及び構成要素の利用に比例するエネルギー消費を進展させる特徴等の)さまざまな電力特徴の電源を遮断すること、及びさまざまな電力ウィルスプロセスを起動すること(running)等を含んでもよい。システムレベルでは、電力を制御する電力バルーンモジュールによって開始され又は実行される環境にやさしくない動作は、電力を切られ割り当てられていないノードの電力をオンにすること、(ノード電力により)ダミージョブをオンにすること、(より小さなエネルギーによる効率的な方法でジョブが起動されるようにする)ジョブのエネルギーポリシーを変更することを含んでもよい。
【００１６】
構成及び動作においては、電力バルーンモジュール又は適切なマネージャモジュールは、いずれの電力バルーン動作を適用するべきかを選択する。上記の選択は、その動作によって消費されるであろう電力量と、設備、システム、又はノードによって消費されるのが望ましい電力量と、(例えば、役に立つ動作の優先順位等の)動作の優先順位と、その他の判断基準とに基づいていてもよい。
【００１７】
分散コンピューティング、高性能コンピューティング(HPC)又はビッグデータ分析、クラウドコンピューティング等のコンピューティングに関して、電気又は電力と関連付けられた設備又はデータセンターへのエネルギーのコストは、計測器による課金及び需要による課金の双方に関していてもよい。計測器による課金は、ある時間期間にわたって使用されるエネルギーの量に比例していてもよい。需要による課金は、電力の割り当てについての指定された需要、需要のうちのある割合として実際に使用される電力量、電力消費の変化率の変動又は変化等の関数であってもよい。
【００１８】
今日、例えば、そのような設備又はデータセンターによって通常指定される需要は、おおむね1メガワット(MW)の電力であってもよい。将来的には、例えば、特に、高性能コンピューティング(HPC)を取り扱い又はスーパーコンピュータを収容し、及び/又はビッグデータ分析を実行する設備又はデータセンターについては、需要は、45[MW]と同等か或いはそれよりも大きく成長することが見込まれる。そのような大きさの需要の場合は、需要の課金は、計測器による課金よりもより大きなものとなる。大きなあらかじめ定められた需要を有するデータセンターを含むデータセンターにおける需要により課金を管理し制御するために、複数の例では、データセンターは、以下のような基準、すなわち、(1)  X[MW]の電力が割り当てられた場合には、電力消費は、通常、XからYを減算したメガワット数よりも下回る値となることが許されず、XからYを減算したメガワット数は、電力帯と称され、(2)  電力の変動又は変化は、単位分ごとの電力及び単位時間ごとの電力等の変化率によって時間にわたって制限される必要がある、という基準によって恩恵を受けてもよい。
【００１９】
現在のところ、電圧レギュレータ(VR)、電源、及び無停電電源(UPS)等の蓄電装置は、小さな継続時間の間の電力消費の相対的に小さい変動に対して保護を提供する。残念なことに、UPS又はバッテリーが大きなメガワット数の電力消費をサポートするためには、大きな床面積又は大規模な不動産を必要とし、多くの場合に購入不可能となるほど高価なものとなるであろう。従来の解決方法によっては、将来的なデータセンターにおいて、或いは、比較的大きな電力需要及び電力の比較的大きな実際の消費量を有するデータセンターにおいては、電力消費の変化率を制御することを達成することは不可能であろう。
【００２０】
本発明の複数の実施形態にしたがって、エネルギーの蓄積及びエネルギーの生成等を使用してコンピューティングシステムによる電力消費を制御することを組み合わせることで、電力消費の変化率の管理を一般的に達成しそして実装してもよい。エネルギー保全/環境保護の視点から、複数の制御を環境にやさしい(green)制御又は環境にやさしくない(non-green)制御に一般的に分類してもよい。特に、環境にやさしいメカニズムは、通常は、役に立つ目的のためにエネルギーを費やすことを容易にする。これに対して、環境にやさしくないメカニズムは、電力を増加させる或いは電力の減少を減速させるといった意図された目的のエネルギーの浪費的な出費又は非効率な出費につながる可能性がある。設備レベル、システムレベル、及びジョブ/ノードレベルで、環境にやさしい動作及び環境にやさしくない動作を実装してもよい。設備レベルの環境にやさしい動作は、(1)  バッテリーを充電して電気的エネルギーを蓄積する、(2)  液体を冷却して、(例えば、冷却システムに補充する等の)後の使用のために、冷却された液体を容器の中に蓄積する、及び(3)  氷を生成して、熱エネルギーを蓄積する、のに余剰のエネルギーを使用することを含んでもよい。設備レベルの環境にやさしい動作は、また、(例えば、太陽光発電器、風力発電器、地熱発電器等の)再生可能なエネルギー源及び/又はディーゼル発電器等の伝統的なエネルギー源を動作させることを伴うエネルギーの局所的な生成を使用することを含んでもよい。設備レベルの環境にやさしくない動作は、(窓を解放したまま空調を動作させることによりエネルギーを浪費することに類似している可能性がある)低い温度で設備のラック及びデータセンターを動作させることを含んでもよい。
【００２１】
本明細書で説明されるいくつかの実施形態は、電力消費の変化率を管理する階層的な構造を採用してもよい。その階層的な構造は、設備の電力管理、システムの電力−パフォーマンス管理、ジョブの電力−パフォーマンス管理等を伴ってもよい。以下で説明されるように、さまざまなメカニズム及び構造を実装して、例えば、マネージャ階層の中の複数の異なるレベルにおいて、電力消費の変化率を制御してもよい。
【００２２】
示されているように、例えば、バッテリーを有する電圧レギュレータ(VR)、電源、電力分散ユニット(PDU)、無停電電源(UPS)等のさまざまな電力配送レベルの蓄電装置が、エネルギーの局所的な蓄積及び局所的な放電を提供してもよい。構成要素レベル及びシステムレベルでは、それらの蓄電装置は、マイクロ秒オーダーでの及びミリ秒オーダーでの過渡的な状態変化を抑制してもよい。1つの特定の例では、1[MW]のデータセンターのために、UPSが、数分間の間のエネルギーの損失を支援してもよい。10[MW]乃至45[MW]のデータセンター等によって次回のユーザの要求に対処するために、例えば、伝統的なアプローチを拡張することは、通常、比較的高価且つ不十分となる可能性がある。他の特定の例では、1つのHPCジョブが故障する(crash)又は終了する(finish)(完了する(complete))場合には、例えば、データセンターは、数ミリ秒以内に電力消費の4[MW]から6[MW]の下降を経験する可能性がある。従来のメカニズムは、そのような不幸なそして可能性のあるシナリオに対してデータセンターを保護することはなく、又は、そのようなシナリオに対処することはない。対照的に、本明細書で説明されるように、本発明の複数の実施形態は、HPC及びビッグデータ分析を含む分散コンピューティングのためのデータセンター及び設備における電力消費の突然の比較的大きな変化を保護し又はそのような変化に対処する。
【００２３】
歴史的に、電力消費を管理する試みは、電力帯を考慮することなく、電力消費を低減することに重点を置いてきた。対照的に、本明細書における複数の実施形態は、(電力等の)公益事業会社又は公益事業提供者から引き出した電力を、データセンターの電力割り当てにより近い範囲に維持するという必要性にこたえる。再度記載するが、本発明のいくつかの実施形態は、データセンター又は同様の設備における電力消費の変化率を管理し或いは制御する階層的な目標及び階層的な制御を採用してもよい。
【００２４】
1つの設備又はデータセンターは、通常、複数の計算システム、エネルギー生成器、(例えば、バッテリー等の)電力蓄積装置、冷却ユニット等を収容している。複数の実施形態において、その設備は、設備レベルの電力マネージャ(FPM)を有してもよく、設備レベルの電力マネージャ(FPM)は、例えば、単位分ごとの又は単位時間ごとの変動に対するユーザの要求を満たすように構成されるとともに、公益事業提供者のエンティティによる割り当てに基づいて、設備の電力消費を最大−最小レベルに又はある範囲内に維持するように構成されてもよい。設備レベルの電力マネージャ(FPM)は、システムレベルの制御のために、複数の目標を生成し、システムレベルの電力−パフォーマンスマネージャ(SPPM)にそれらの目標を提供してもよい。FPM及びSPPMは、電力消費の変動を管理してもよい。SPPMは、例えば、あるシステムの複数のノードのみならずジョブレベルの電力−パフォーマンスマネージャ又はコントローラとともに動作してもよく、ノードレベルの電力−パフォーマンスマネージャ(NPPM)に電力消費目標を提供してもよい。システムレベルの電力−パフォーマンスマネージャ(SPPM)及びジョブレベルの電力−パフォーマンスマネージャ(JPPM)の双方は、以下で説明されるように、さまざまなスキームを実行するために、アーキテクチャ、電力使用量、及び局所的なエネルギーの蓄積を把握してもよい。再度記載するが、このようにして、階層的な目標及び階層的なコントローラを実装してもよく、それらの階層的な目標及び階層的なコントローラは、電力消費を電力帯の範囲内に制御するとともに電力消費の変化率を制御するための階層を含んでもよい。
【００２５】
図1は、分散コンピューティングシステム、データセンター、1つ又は複数のスーパーコンピュータ、ビッグデータ分析センター、クラウドコンピューティング、企業向けサービス、高性能コンピューティング(HPC)センター等のコンピューティングのための例示的なシステム100である。設備の電力レベル及びシステムの電力レベルに関連付けられている本明細書の複数の実施形態は、通常、さまざまなコンピューティング構成に適用可能である。図示されている実施形態において、システム100は、設備102を有し、設備102は、複数のノード108からなる1つ又は複数のシステム106を含むコンピューティングアーキテクチャ104を有している。1つの例では、設備102は、3つのシステム106を含み、それらのシステム106の各々は、20,000個のノード108を有している。代替的な実施形態においては、複数のノード108のグループ分けが、ジョブごとにといったように時間にわたり変化してもよいという意味で、システムレベルは、流動的であってもよい。ノード108は、一般的に、計算ノードであってもよいが、オペレーティングシステム(OS)ノード、入力/出力(I/O)ノード、及び他のノードを含んでもよい。各々のノード108は、1つ又は複数のプロセッサ110を含んでもよく、各々のプロセッサ110は、1つ又は複数のプロセッシングコア112を有してもよい。
【００２６】
各々のノード108は、プロセッサ110によって実行可能なコード116を格納するメモリ114を含んでもよい。ノード108は、追加のハードウェア、ソフトウェア、ファームウェア等を含んでもよい。コンピューティングアーキテクチャ104は、サーバ、ホスト等の1つ又は複数のコンピューティングデバイス118を含んでもよく、それらのコンピューティングデバイス118の各々は、少なくとも1つのプロセッサ120及びメモリ122を含んでもよく、メモリ122は、プロセッサ120によって実行可能なコード124を格納していてもよい。
【００２７】
格納されている実行可能なコード116及び124は、さまざまなマネージャ又は制御モジュールを含んでもよく、それらのマネージャ又は制御モジュールは、階層の中の複数の異なるレベルにある複数のマネージャを含んでもよい。上記のように、例示的なマネージャは、それぞれ、破線のボックス126，128、及び130で表されているように、ノードレベルの電力−パフォーマンスマネージャ(NPPM)、システムレベルの電力−パフォーマンスマネージャ(SPPM)、及び設備レベルの電力マネージャ(FPM)、及び他のモジュールを含んでもよい。複数の実施形態において、複数のノード108の間で(図示されていない)ジョブレベルの電力−パフォーマンスマネージャ(JPPM)が分散されてもよい。個々のノードにおいて起動されているそのJPPMの部分は、NPPMと称される。再び記載するが、これらの制御モジュール又はマネージャ126、128、及び130は、(例えば、114及び/又は124等の)メモリに格納されている(例えば、116及び/又は126等の)実行可能なコードであってもよい。マネージャ126、128、及び130は、他のモジュールの一部であってもよいサブモジュールを有していてもよい。さらに、示されているように、マネージャ126，128、130、及び他の制御モジュールは、電力に関して階層的な管理又は制御を提供してもよい。さらに、マネージャ126、128、130、及び/又は他のコントローラ及びマネージャのそれぞれの変形は、帯域内制御又は帯域外制御を提供してもよい。
【００２８】
図から理解できるように、設備102におけるコンピューティングアーキテクチャ104は、電力を消費してもよい。さらに、設備102は、ビルディング冷却システム、照明等の電力の他の消費構成要素132を含んでもよい。設備102は、例えば、1つ又は複数の公益事業会社又は公益事業提供者136から電気又は電力134を受信してもよい。受信される電力134は、必要に応じて、設備102での変換の対象となってもよい。さらに、設備102は、局所的に及び/又は遠隔に配置される(例えば、ディーゼル発電器等の)電力生成設備138を有していてもよい。さらに、設備102は、バッテリー等の電力蓄積装置140及び冷却液のための容器等の他のエネルギー蓄積装置を有していてもよい。最後に、設備102は、(例えば、データセンター、スーパーコンピュータ、ビッグデータ分析センター等の)他の分散コンピューティングシステム144、又は(例えば、クライアント位置、公益事業会社、又は公益事業分配者等の位置にある)非分散又は伝統的なコンピューティングシステム又はコンピューティングデバイス146と(ネットワーク142を介して)通信してもよい。
【００２９】
図2は、分散コンピューティングのための1つの例示的な設備102のダイヤグラム表示である。上記のように、いくつかの実施形態において、1つの階層を実装して、設備102を含む(例えば、データセンター、スーパーコンピュータ等の)分散コンピューティングシステム100について電力消費の変化率を管理し又は制御してもよい。設備レベルでは、設備レベルの電力マネージャ(FPM)130は、(例えば、単位分ごと及び単位時間ごと等の)時間ごとの設備の電力の変動に対する要求にこたえて、その設備102における電力消費を、最小電力消費と最大電力消費との間に維持してもよい。上記の範囲は、公益事業会社又は公益事業提供者による電力の割り当て、或いは、(例えば、人間の管理者等の)設備マネージャによる電力の割り当てに基づいていてもよい。
【００３０】
設備レベルの電力マネージャ(FPM)130は、システムレベルの電力のために、(例えば、電力消費及び電力の変動の双方について)複数の電力目標を生成して、システムレベルの電力−パフォーマンスマネージャ(SPPM)128にこれらの複数の電力目標を提供してもよい。FPM130及びSPPM128は、電力消費の変動を管理してもよい。SPPM128によって明確に示された制約及び目標及び/又は他の要因に基づいて、SPPM128は、SPPM128のそれぞれのシステム106のノード108の電力消費を管理してもよい。
【００３１】
図3は、分散コンピューティングのための1つの例示的な設備102である。上記で説明したように、設備レベルの電力マネージャ(FPM)130は、システム106のノードについて複数のシステムレベルの電力−パフォーマンスマネージャ(SPPM)128に指示を与える。さらに、FPM130は、人間の管理者130、公益事業会社又は公益事業提供者302等と通信して、人間の管理者300、公益事業会社又は公益事業提供者302等により設定された複数のポリシー/ルールを有してもよい。複数の例では、FPM130は、公益事業会社又は公益事業提供者302への需要/応答インターフェイスを使用するか又は需要/応答インターフェイスであってもよい。さらに、FPM130は、設備102における電力及び冷却の課金、並びにその他同様の処理を実行してもよく、これらの処理は、能力及び要求を通信することを含んでもよい。FPM130は、冷却システム132Cの動作を把握し、(例えば、発電器138における)エネルギーのコジェネレーションを管理し、1つ又は複数のSPPM128に電力の割当量(準備量)を配分する等してもよい。
【００３２】
FPM130は、さまざまなメカニズムを使用して、単位分ごとのデルタワット[ΔW/分]又は単位時間ごとのデルタワット[ΔW/時]等の電力消費の変化に関するデータセンターのオペレータによる要求を満たしてもよい。データセンターのオペレータは、FPM130が、設備レベルの電力消費を、公益事業会社又は公益事業提供者302による電力割り当ての値に維持するようにさせ、或いは、その電力割り当ての値をわずかに下回る値に維持する維持するようにさせてもよい。エネルギー効率を高く保つ目標に対して、FPM130は、環境にやさしくないメカニズムを用いる前に、環境にやさしいメカニズムを使用することを試みてもよい。
【００３３】
局所的な発電器138を有する設備102については、FPM130は、設備レベルの電力制御のために局所的な発電器138を使用してもよい。特定の設備102に応じて、さまざまなタイプの局所的な発電器138が存在してもよい。局所的な発電器138の複数の例は、ディーゼルエンジン、太陽光発電等であってもよい。ある特定の例では、例えば、設備102によって公益事業会社又は公益事業提供者302との間で交渉された電力需要がおおよそ12[MW]に設定され、設備102が2[MW]の局所的な発電器を有する場合には、その設備102は、代わりに、公益事業会社又は公益事業提供者302との間で10[MW]の需要について交渉してもよい。上記の条件にしたがう場合には、公益事業会社又は公益事業提供者302は、例えば、公益事業会社又は公益事業提供者302から(例えば、15%の変動が許される)8.5[MW]乃至10[MW]の電力帯の電力を引き出すように設備102に要求してもよい。上記の数的な例では、2[MW]の局所的な発電器によって、(30%までの変動が許される)8.5[MW]乃至12[MW]のデータセンターの設備102レベルの変動を可能にすることができる。したがって、局所的な発電器によって電力のレベルの柔軟性を増加させることが可能になるとともに、局所的な発電器が長期間にわたる(例えば、ΔW/時等の)制限された変動の1つ又は複数の目標を満たすことに役立つことが可能である。
【００３４】
局所的な電力蓄積装置140を有する設備102については、FPM130は、(例えば、バッテリー、局所的な冷凍機等の)電力蓄積装置を使用してもよい。設備102レベルの実際の電力消費が(上記の数的な例におけるおおよそ8.5[MW]の)最小の需要を下回る可能性がある場合には、FPM130は、エネルギーを、電力蓄積装置140のバッテリー140Bの部分を充電するのに向けてもよい。結果として生じるバッテリー充電は、後に、設備102の実際の電力需要が増大する場合に使用されてもよい。エネルギー蓄積の他のアプローチは、(例えば、設備の実際の電力消費が交渉された需要よりも下に下降する場合に)液体を冷却し或いは氷を生成するのに余剰のエネルギーを使用することであってもよい。氷又は冷却された液体を蓄積しておくことができ、例えば、後に、設備102の実際の電力消費が、需要、すなわち、電力帯の上側の限界値に近づくか又は超える場合に、冷却のためにその氷又は冷却された液体を使用して、冷却システム132Cによるエネルギー消費を低減してもよい。
【００３５】
FPM132が採用してもよいメカニズムの他の例は、FPM132が、冷却システム132Cの中の冷却液、気体、又は水の温度又は温度の設定点を調節するとったように、冷却システム132Cでの設定を指定することであってもよい。そのような制御は、計算システムを含むコンピューティングアーキテクチャ104及び冷却システム132Cの双方によって消費される電力に影響を与えることができる。例えば、設備の電力消費を増加させるために、FPM130は、冷却システム132Cの中の空調ユニットの出口空気の温度を下げてもよい。上記のメカニズムは環境にやさしくないメカニズムであるが、上記のように冷却空気の温度を下げると、その空気によって冷却される(例えば、コンピューティングアーキテクチャ104等の中の)構成要素の寿命を延ばすのに役立つことができる。したがって、上記の環境にやさしくない動作は、通常は、役に立たない一方で、電力消費を電力帯の内側に上昇させることとは別の恩恵をもたらすことができる。
【００３６】
図4は、分散コンピューティングのための1つの例示的な設備102のシステムレベル及びノードレベルのダイヤグラム表現400である。例えば、データセンターマネージャ406及びラックコントローラ又はラックマネージャ402は、システムレベルで共有される電力供給404及びノード108のラックの冷却等をモニタリングする。ラックマネージャ402は、例えば、ノード108の電力のモニタリングに関して、(例えば、帯域外ノードマネージャ等の)ノードマネージャ403に指示してもよい。帯域内管理及び帯域外管理の双方、モニタリング、及び制御が同時に行われてもよい。例えば、データセンターマネージャ406は、帯域外管理階層の一部であってもよい。データセンターマネージャ406は、SPPM128に電力及び冷却システムの健全性及び能力を通信する。
【００３７】
複数の例では、ノードマネージャ403、ラックマネージャ402、及びデータセンターマネージャ406は、帯域外マネージャであり、システムソフトウェアの直接的な部分ではない。代わりに、これらの3つのマネージャ402，403、及び406は、独立したメカニズムの部分であってもよく、その独立したメカニズムは、例えば、障害について電力及び冷却の基盤設備をモニタリングしてもよい。電力供給又は冷却の障害が発生した場合には、ラックマネージャ402は、結果として生じる望ましくないイベントを減少させ又は防止する動作を行ってもよく、ジョブマネージャ、リソースマネージャ、及びSPPMと通信してもよく、それによって、ジョブマネージャ、リソースマネージャ、及びSPPMが、(障害に起因する)より低い電力/冷却能力を把握しているシステム及びノードを動作させる。
【００３８】
図1乃至3に関連して説明されたように、設備102レベルの又はデータセンターレベルの能力と、例えば、電力及び冷却システム、ビルディング等における損失等の設備102のエネルギーのコストとを把握する際に、FPM130は、(図1乃至3に示されている)それぞれのSPPM128及びシステム106のノード108のために、電力量又は電力レベルについての1つ又は複数の目標及び電力の変動についての1つ又は複数の目標を生成してもよい。システム106レベルの電力管理及び制御のために、これらの目標をSPPM128に通信してもよい。
【００３９】
図5A及び図5Bは、複数の例示的な動作502を有する1つの例示的な管理階層500のフローチャートである。図5Aは、フローチャートの上側部分である。図5Bは、フローチャートの下側部分である。管理階層500の中のエンティティは、上記の設備レベルの電力マネージャ(FPM)130、システムレベルの電力−パフォーマンスマネージャ(SPPM)128、ジョブレベルの電力−パフォーマンスマネージャ(JPPM)504、及びノードレベルの電力−パフォーマンスマネージャ(NPPM)126、又はそれらの変形を含んでもよい。動作では、FPM130は、設備102レベルのリソースを管理し、1つ又は複数のSPPM128へのシステム電力の準備量を定義してもよい。システムレベルにおいては、(個別に示されてはいない)リソースマネージャは、例えば、SPPM128及びJPPM504を含んでもよく、(変動量を含む)電力消費に関して、1つ又は複数のNPPM126に指示してもよい。システムレベル及びジョブレベルの上記の電力消費は、複数のノード108での分散コンピューティングジョブの実装又は実行の際のように、システム106の中の複数のノード108についての電力消費であってもよい。管理階層の中の追加のエンティティは、(例えば、自動化された監理者又は人間の管理者等の)設備マネージャ、(例えば、公益事業会社又は公益事業提供者等の)エネルギー公益事業施設508、ビルディング管理510等を含んでもよい。
【００４０】
上記の複数の図に関連して説明されたように、FPM130は、通常、需要/応答インターフェイスを介してエネルギー公益事業施設508と通信してもよく、設備マネージャ506に関する複数のルール及び複数のポリシーを受信して設定し、そして、設備102レベルのエネルギーリソースを管理してもよい。FPM130は、設備102レベルの電力及び冷却を担ってもよく、上記の電力及び冷却は、能力の必要性及び要求を通信し、局所的なエネルギーの使用を管理し、そして、システムに(すなわち、リソースマネージャ又はSPPM128に)電力の準備量を割り当てることを含んでもよい。
【００４１】
図5Aの図示されている実施形態において、複数の動作502によって説明されているように、FPM130は、予想されるシステム電力情報をSPPM128に問い合わせて、その予想されるシステム電力情報をSPPM128から受信してもよい。SPPM128は、システム需要予測を作成してもよい。FPM130は、現在のシステム電力情報及び過去に使用されたシステム電力情報をSPPM128に問い合わせて、SPPM128からそれらのシステム電力情報を受信してもよい。さらに、FPM130は、電力及び冷却基盤設備の状態をビルディング管理510に問い合わせて、ビルディング管理510からその電力及び冷却基盤設備の状態を受信してもよい。FPM130は、局所的なエネルギーの蓄積及び生成の状態を問い合わせて、ビルディング管理510からその蓄積及び生成の状態を受信してもよい。
【００４２】
さらに、図5Aに示されているように、設備マネージャ506は、電力の傾き及び電力帯についてのポリシーを受信し、次に、設備マネージャ506は、電力の傾き及び電力帯に関する制御についての複数のポリシー及び複数のルールを設定し、それらをFPM130に送ってもよい。FPM130は、エネルギー公益事業施設508から、電力の使用量及び変動に関するエネルギー公益事業施設による予測とともに、エネルギーに関する価格情報及びインセンティブを受信してもよい。言うまでもないが、FPM130が、設備マネージャ506及びエネルギー公益事業施設508に同様の情報、及び他のデータ及び情報を提供するように、反対方向の通信を実現してもよい。
【００４３】
引き続き、図5Bのフローチャートを参照すると、FPM130は、受信した上記のさまざまな情報及び他の情報に基づいて、設備レベルの需要予測を作成し、局所的なエネルギーの蓄積/生成についての複数の目標及び計画を作成し、ビルディング管理510へのこれらの目標を設定し、そして、電力帯及び電力の傾きについてのシステムレベルの目標を作成して、SPPM128へのこれらに関する制限を設定してもよい。上記のFPM130の動作に応答して、SPPM128は、複数のジョブの電力に関する優先順位付けについての複数のポリシーを作成し、"環境にやさしい"電力動作及び"環境にやさしくない"電力動作の使用についての複数のポリシーを作成し、JPPM502へのジョブレベルの電力帯及び電力の傾きに関する制限を設定してもよい。
【００４４】
図5Aにおいて複数の動作502として示されているように、JPPM502は、NPPM126への(例えば、電力準備量とともに提供される)ノードレベルの電力帯及び電力の傾きに関する制限を設定してもよい。JPPM502は、環境にやさしいアプローチ及び環境にやさしくないアプローチを含むとともに電力の傾き及び電力帯を管理するための複数のポリシーを、NPPM126へと通信してもよい。NPPM126は、1つ又は複数のそれぞれのノードにおける電力消費を、電力帯の範囲内に及び傾きの目標値又は傾きの制限値に維持してもよい。最後に、複数のラベル、レベル、及び構成を含み、図5には示されていない他の管理階層が、本発明に適用可能であるということに留意すべきである。
【００４５】
図6は、システムレベル及びノードレベルにおける複数の例示的なマネージャ及び複数の機能のブロック図である。システム106において、比較的高いエネルギー効率を与えるシステム106レベルの電力−パフォーマンスを、システム106レベルの電力準備量(電力割り当て量)の範囲内に維持するメカニズムが存在してもよい。SPPM128は、例えば、電力消費の変化率についての要求を満たすように、リソースマネージャ600とともに動作してもよい。(例えば、プロセッサに命令する実行可能なコード等の)リソースマネージャ600は、(図示されていない)ジョブスケジューラ、(図示されていない)ジョブランチャー等の複数の要素を有してもよく、ユーザが提示した複数のジョブを管理し、例えば、複数のノードのうちの95%よりも多くが計算のために使用されるといった目的を満たすような方法で優先順位付けされた順序にしたがってそれらの複数のジョブを立ち上げてもよい。リソースマネージャ(RM)600は、(図5A及び図5Bの502に類似していてもよい)システムレベルの電力−パフォーマンスマネージャ(SPPM)128及びジョブレベルの電力−パフォーマンスマネージャ(JPPM)604等の複数の構成要素を有していてもよく、ジョブの電力−パフォーマンスを管理してもよい。リソースマネージャ(RM)600は、さまざまなタイプのジョブを選択し、ジョブの電力の緩やかな増加を制御することにより、電力消費のシステム106レベルの目標を満たすのを支援してもよい。
【００４６】
ジョブの選択に関しては、RM600は、キューからジョブ606を選択し、実行のためにそれらのジョブ606をスケジューリングしてもよい。複数の実施形態において、RM600は、複数のツールにアクセスしてもよく、それらの複数のツールは、複数のジョブについて必要とされる電力を推定してもよい。これらの推定値は、RM600が複数のジョブの組み合わせを選択するのを支援してもよく、これらの複数のジョブの組み合わせは、電力制御のためのシステム106レベルの電力要求を満たすように起動されてもよい。
【００４７】
RM600は、あるジョブについて電力に関する優先順位付け608に取り組んでもよい。ある特定の例では、ある1つのジョブがおおよそ20,000個のノード108において開始される場合には、システム106及び設備102における電力消費の突然の増加が生じる可能性がある。ある複数の実施形態において、RM600は、上記の電力の増加をより緩やかにする複数の技術を採用してもよい。例えば、RM600は、PFM130と連携して、体系立てられた電力に対処し、電力消費をシステム106のためにより緩やかにしてもよい。PFM130は、局所的なエネルギーの蓄積140及び局所的なエネルギーの生成138を使用することにより、電力消費の突然の増加又は著しい増加を緩和してもよい。システム電力の増加をより緩やかにするための他の例では、RM600は、そのジョブを起動している(run)計算ノード108が(例えば、最も低い周波数等の)低い周波数でそのジョブを開始するといった方法で、それらの計算ノード108のパフォーマンスを制御してもよい。RM600は、その後、そのジョブを実行している計算ノード108の周波数を、制御された方法で段階的に増加させてもよい。
【００４８】
重要でないジョブ610に関しては、RM600は、前のジョブが終了したときに、重要でないジョブの起動を指定してもよく、役立つジョブであるといえる。そのようなジョブ610の複数の例は、システムの健全性チェック、診断、セキュリティスキャン、ノード108の電力パフォーマンスの較正、記憶装置のデフラグメンテーション、システムメモリ及び記憶装置の中のエラーのスキャン及び訂正等であってもよい。これらは、環境にやさしいメカニズムであってもよく、これらの環境にやさしいメカニズムは、システム106及び設備102レベルの他のシステムの信頼性を改善してもよい。
【００４９】
電力制御ジョブ612は、役立つ作業結果をほとんど或いは全く生成することなく、電力帯の最小値を超えた値に電力レベルを維持するようにエネルギーを消費するジョブであってもよい。これらの電力制御ジョブ612は、明らかに環境にやさしくないオプションであろう。にもかかわらず、そのような電力制御ジョブ612は、システム106レベルの電力消費を目標の範囲内に維持するのに役立つ場合がある。ある複数の実施形態において、以下でより詳細に説明されるように、(例えば、実行可能なコード等の)システム電力バルーンアプリケーション614によってこれらの種類の動作を実装してもよい。
【００５０】
ノード108についての電力消費目標に関しては、RM600は、JPPM604等のジョブレベルのマネージャ又は作業負荷マネージャによって、ノード106の電力パフォーマンスを制御してもよい。ある複数の実施形態において、RM600は、例えば、JPPM604によって、複数の特定の目標を提供してもよく、それによって、ノード108レベルの電力消費は、大幅にかつ突然には変化しないようになる。再び記載するが、電力変化の傾き又は電力帯の目標を満たすために、(メモリの中に格納されている実行可能なコード又はモジュール等の)電力バルーン技術又は電力バルーンメカニズムによって、電力の変化率の突然の変化を回避するように意図される(と同時に、電力消費を電力帯の範囲内となるように管理するように意図される)ある動作を実装してもよい。ある複数の実施形態において、システムレベル及びノードレベルの双方において、電力バルーンが存在してもよい。図示されている実施形態は、システム電力バルーン614及びノード電力バルーン622を図示している。
【００５１】
ジョブレベルのマネージャすなわちJPPM604によって提供される目標の範囲内にノード108レベルの電力消費を維持するために、ブロック618に示されている電力管理(PM)特徴の制御に取り組んでもよい。ノード108レベルの電力の低減は、ノード又はプラットフォームにおける電力管理(PM)技術又は電力低減技術の結果であってもよい。これらの技術により、構成要素の使用量又は計算負荷が減少する場合に、構成要素レベルの電力を減少させることが可能となる。いくつかの実施形態において、電力管理(PM)特徴を無効化することにより、構成要素レベルの電力を一定又はほぼ一定に維持することができる。しかしながら、RM600及び/又はノード電力バルーン622は、PMに、電力を徐々に減少させるためのより緩やかなアプローチを指示してもよい。より緩やかなアプローチは、電力の変化率についての目的を満たすのに役立つとともにエネルギーの観点からより効率的であってもよい。
【００５２】
さらに、保守管理のために重要でないアプリケーションが存在してもよい。ノード108での電力の下降を伴う複数の例において、RM600は、ノード電力バルーン622によって、重要ではないが役立つアプリケーション620を起動してもよい。そのような重要でないアプリケーション620は、いずれのユーザにも計算出力を生成しないが、そのようなアプリケーション620は、保守管理を実行してもよく、したがって、ノード108の信頼性を改善することができる。そのようなアプリケーションの例は、ノードの健全性チェック、診断、セキュリティスキャン、ノードの較正、記憶装置のデフラグメンテーション、システムメモリ及び記憶装置の中のエラーのスキャン及び訂正等であってもよい。
【００５３】
例えば、SPPM128は、(例として図7に示されている)電力バルーンと称される本発明にしたがった技術を実装してもよい。電力バルーン614及び622は、環境にやさしいアプリケーション及び環境にやさしくないアプリケーションを管理して、(1)  システム電力を電力帯の範囲内に維持し、(2)  システムレベルの電力の変動を管理してもよく、合わせて、他の結果を得てもよい。環境にやさしいアプリケーションの例は、重要でないアプリケーション620として上記で示唆されているように、システムの健全性チェック、診断、セキュリティスキャン、ノードの較正、記憶装置のデフラグメンテーション、システムメモリ及び記憶装置の中のエラーのスキャン及び訂正等であってもよい。電力バルーンアプリケーションによって実装されるアプリケーション等の環境にやさしくないアプリケーションの例は、(割り当てられていないノードは、通常、エネルギーを節約するために電源を切られているが)割り当てられていないノードに給電すること、電力ウィルス等のダミージョブを起動すること、エネルギーの観点から効率的でないジョブを起動するようにジョブマネージャ(又はJPPM502又は604)に依頼すること等であってもよい。図6において言及され図示されているように、電力バルーン614及び622は、それぞれ、システムレベル及びノードレベルで動作してもよい。ノードレベルに関しては、ノード電力バルーン622は、ノード108において局所的な技術を提供してもよい。複数の特定の例では、ノード電力バルーン622は、そのノードが電力バルーンの動作に応答して役に立つ計算出力を生成しなくてもよいという点で、環境にやさしくない技術であってもよい。ノード電力バルーン622は、また、環境にやさしい動作を実装してもよい。システム電力バルーン614によって(環境にやさしい動作及び環境にやさしくない動作等の)同じ又は同様の動作をシステムレベルで実装してもよい。
【００５４】
図7は、ノード108レベルの電力を電力帯の範囲内に有益な方法で維持するのに、ノード電力バルーン622をどのように使用することができるかを図示している。いくつかの実施形態において、上記のメカニズムは、例えば、数ミリ秒の時間長の電力消費の変化が存在する場合であっても、応答することができる。電力バルーン622は、オペレーティングシステムによって、或いは、帯域外メカニズム又はファームウェアによって呼び出されてもよい。図示されている実施形態において、帯域外ノードマネージャ616は、電力バルーン622を呼び出してもよい。一般的に、電力バルーンは、電力を増加させるか又は減少させるかのいずれかを行って、電力の傾きに関する要求及び電力帯の制御に関する要求を満たす。さらに、ノードレベルで又はシステムレベルで電力バルーンを実装してもよい。図7の特定の図示されている実施形態において、電力バルーンは、ノードレベルで実装され、電力を増加させて、電力帯の制限を満たす。しかしながら、電力バルーンの実装は、システムレベルにおいて、同じ方法で又は同様の方法で適用可能であってもよく、或いは、システムレベルで採用されてもよく、電力の傾き、すなわち、(増加又は減少等の)電力の変化率を調整し或いは制御してもよい。
【００５５】
図7は、分散コンピューティングシステム106の中の計算ノード108において実行される2つの例示的な計算ジョブ702及び704の電力消費、又は異なる時間に分散コンピューティングシステム106の中のノード108において実行される同じ計算ジョブの電力消費を比較する棒グラフ700である。ノード108レベルの電力についての望ましい範囲又は望ましい電力帯は、最小電力708から最大電力710までの範囲である。第1の計算ジョブ702は、望ましい電力帯の範囲内で実行される。対照的に、第2の計算ジョブ704は、ノード108についての望ましい最小電力708を下回る電力で実行される。しかしながら、上記の電力バルーンアプリケーション622の実装により、第2の計算ジョブ704を実行する際のノード108の電力は、追加される電力706によって示されているように、最小電力708のレベルに等しい値に又は最小電力708のレベルを上回る値に増加させられ、電力消費を望ましい電力帯の範囲内に維持してもよい。
【００５６】
要約すると、ノードレベルの電力バルーン622は、環境にやさしい動作及び環境にやさしくない動作を実装して、電力帯及び電力の変動を管理してもよい。環境にやさしい動作又は環境にやさしい方法は、ノード較正、診断、エラーを検出して訂正するためのメモリスキャン又はディスクスキャン、ウィルススキャン等を起動することを含んでもよい。環境にやさしくない動作は、電力低減特徴を無効にする又はオフにすること、電力を消費するが作業出力を全く生成しない(例えば、電力ウィルス等の)ダミープログラムを起動すること等を含んでもよい。ノードレベルにおいて図7に示されている結果をもたらす上記の動作を実装する電力バルーンを、(図6に示されているシステム電力バルーン614によって)システムレベルで実装してもよい。
【００５７】
図8は、本発明の複数の実施形態にしたがった有体的な非一時的コンピュータ読み取り可能な媒体の1つの例を示すブロック図であり、その有体的な非一時的コンピュータ読み取り可能な媒体は、分散コンピューティングシステムの電力管理を容易にすることが可能である。プロセッサ802は、コンピュータ相互接続804を介してコンピュータ読み取り可能な媒体800にアクセスしてもよい。プロセッサ802は、(例えば、プロセッサ110等の)1つ又は複数の計算ノードプロセッサ、(例えば、プロセッサ110及び120等の)サーバプロセッサ、又は他のプロセッサであってもよい。有体的な非一時的コンピュータ読み取り可能な媒体800は、複数の実行可能な命令又はコードを含んでもよく、本明細書において説明される技術にしたがった動作を実行するようにプロセッサ802に指示してもよい。
【００５８】
図8に示されている有体的な非一時的コンピュータ読み取り可能な媒体800に、本明細書で説明されたさまざまなソフトウェア構成要素を格納してもよい。例えば、(実行可能なコード/命令であってもよい)電力管理/制御モジュール806は、分散コンピューティング設備における電力消費及び電力の変動を管理し制御するように、プロセッサ802に指示してもよい。実際に、電力管理/制御モジュール806は、実行可能な命令又はコードの形態で、設備レベルの電力マネージャ(FPM)、リソースマネージャ、システムレベルの電力−パフォーマンスマネージャ(SPPM)、ジョブレベルの電力−パフォーマンスマネージャ(JPPM)、ノードレベルの電力−パフォーマンスマネージャ(NPPM)、システム電力バルーン、ノード電力バルーン等を含んでもよい。そのようなコード又はモジュール806は、図1における上記の実行可能なコード116、124と同様であるか、又は同じであってもよい。アプリケーションに応じて、有体的な非一時的コンピュータ読み取り可能な媒体800に、図8に示されていないいずれかの数の追加のソフトウェア構成要素を含んでもよいということを理解すべきである。
【００５９】
ハードウェア、ファームウェア、及びソフトウェアのうちの1つ又はこれらの組み合わせによっていくつかの実施形態を実装してもよい。機械読み取り可能な媒体に格納される複数の命令としていくつかの実施形態を実装してもよく、機械読み取り可能な媒体に格納される命令は、コンピューティングプラットフォームによって読み取られて実行され、本明細書で説明された動作を実行してもよい。機械読み取り可能な媒体は、例えば、コンピュータ等の機械によって読み取り可能な形態で情報を格納し又は送信するいずれかのメカニズムを含んでもよい。例えば、機械読み取り可能な媒体は、特に、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、或いは、電気信号、光信号、音響信号、又は、搬送波、赤外線信号、ディジタル信号、信号を送信し及び/又は受信するインターフェイス等の伝搬している信号の他の形態を含んでもよい。
【００６０】
ある1つの実施形態は、1つの実装又は例である。本明細書における"ある実施形態"、"1つの実施形態"、"いくつかの実施形態"、"さまざまな実施形態"、又は"他の実施形態"への言及は、本発明の複数の実施形態との関連で説明されたある特定の特徴、構造、又は特性が、少なくともいくつかの実施形態に含まれているが、必ずしもすべての実施形態に含まれているわけではないということを意味してもよい。さまざまな形態で"ある実施形態"、"1つの実施形態"、又は"いくつかの実施形態"が出現した場合には、必ずしも、これらのすべてがいくつかの実施形態に言及しているわけではない。ある実施形態の要素又は態様を、他の実施形態の要素又は態様と組み合わせてもよい。
【００６１】
本明細書で説明され図示された構成要素、特徴、構造、特性等のすべてが、ある特定の実施形態又は複数の実施形態に含まれることを必要とするわけではない。例えば、本明細書において、ある構成要素、特徴、構造、又は特性が、"含まれてもよい"、"含まれる可能性がある"、"含まれ得る"、又は"含まれ得るであろう"と記載している場合には、その特定の構成要素、特徴、構造、又は特性は、含まれることを要するわけではない。明細書又は特許請求の範囲において、"1つの要素"に言及している場合には、その言及は、1つのみの要素が存在するということを意味するわけではない。明細書又は特許請求の範囲において、"1つの追加の"要素に言及している場合には、その言及は、1つよりも多くの追加の要素が存在するということを除外するわけではない。
【００６２】
特定の実装を参照して、いくつかの実施形態が説明されてきたが、それらのいくつかの実施形態にしたがって他の実施形態を実装可能であるということに留意すべきである。さらに、本明細書において説明され及び/又は複数の図面に図示されている回路素子又は他の特徴の配列及び/又は順序は、本明細書において説明されそして図面に図示された特定の方法で配列される必要があるわけではない。いくつかの実施形態にしたがって、多くの他の配列が可能である。
【００６３】
ある図面に示されている各々のシステムにおいては、いくつかの場合における複数の要素の各々が、同一の参照番号を付されてもよく、或いは、異なる参照番号を付されてもよく、参照番号によってあらわされるそれらの要素が、異なる要素であってもよく、及び/又は同様の要素であってもよいということを示唆してもよい。しかしながら、ある1つの要素は、複数の異なる実装を有して、本明細書で示され説明されたシステムのうちのいくつか又はすべてと連携することができるだけの柔軟性を有していてもよい。複数の図面に示されているさまざまな要素は、同じ要素であっても異なる要素であってもよい。いずれが第1の要素と称され、いずれが第2の要素と称されるかは、任意である。
【００６４】
複数の例が提供される。例1は、コンピューティングのための設備であって、当該設備は、複数の計算ノードを含み、コンピューティングに関する複数のジョブを実行するように構成されるシステムを有する。そのコンピューティング設備は、コードを格納するメモリを有し、コードは、複数の計算ノード又はプロセッサによって実行可能であり、当該設備の電力消費を管理して、電力消費が電力帯の範囲内にあるようにし、電力消費を管理することは、電力バルーンによって電力消費を調整することを含む。実行可能なコードは、電力バルーンを含む。
【００６５】
例2は、例1の主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、電力消費の変化率を制御することを含む。
【００６６】
例3は、例1及び例2のいずれかの組み合わせの主題を含んでもよい。この例では、コンピューティングは、分散コンピューティングを含み、ジョブは、分散コンピューティングジョブを含む。さらに、電力消費を管理することは、設備レベル、システムレベル、及びノードレベルの電力消費を管理することを含み、電力帯は、最小の電力消費から最大の電力消費までの範囲を含む。
【００６７】
例4は、例1乃至例3のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、ノード電力バルーンであってもよい。
【００６８】
例5は、例1乃至例4のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、システム電力バルーンであってもよい。
【００６９】
例6は、例1乃至例5のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、環境にやさしい技術を実装することを含む。
【００７０】
例７は、例１乃至例６のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない動作を実装することを含む。
【００７１】
例8は、例1乃至7のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、環境にやさしくない技術を実装することを含む。
【００７２】
例9は、例1乃至例8のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含み、その動作は、エネルギーを消費して、当該設備における電力消費を、電力帯の最小限度を上回る値に維持するように構成される。
【００７３】
例10は、例1乃至例9のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、診断を起動すること又は保守管理を実行すること、或いは、診断を起動すること及び保守管理を実行することの組み合わせを含む。
【００７４】
例11は、例1乃至例10のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、割り当てられていない電源を切られているノードの電源をオンにすることを含む。
【００７５】
例12は、例1乃至例11のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、電力熱公益事業施設のプロセスを起動させて、計算ノードのエネルギー消費を増加させることを含む。
【００７６】
例13は、コンピューティングのための設備であって、当該設備は、複数の計算ノードを含む複数のシステムを有し、各々のシステムは、複数の計算ノードを含み、分散コンピューティングに関する複数のジョブを実行する。コンピューティングのための当該設備は、実行可能なコードを格納するメモリを含み、実行可能なコードは、当該設備における電力消費を管理し、電力消費を管理することは、当該設備の電力消費を調整する動作を開始することにより、当該設備の電力消費を、電力帯の範囲内に入るように制御するとともに、当該設備の電力消費の変化率を制御することを含み、上記の動作は、計算出力を全く与えない動作である。
【００７７】
例14は、例13の主題を含んでもよい。この例では、上記の動作は、複数の計算ノードを含むシステムにおいて動作するか又は計算ノードにおいて動作するか、或いは、システム及び計算ノードの双方において動作し、当該設備は、クラウドコンピューティング設備、分散コンピューティング設備、高性能コンピューティング(HPC)設備、ビッグデータ分析設備、又は、クラウドコンピューティング設備、分散コンピューティング設備、高性能コンピューティング(HPC)設備、及びビッグデータ分析設備のいずれかの組み合わせを含む。
【００７８】
例15は、例13及び例14のいずれかの組み合わせの主題を封組んでもよい。この例では、実行可能なコードは、上記の動作を開始する電力バルーンを含む。
【００７９】
例16は、コンピューティングの方法であって、当該方法は、設備でのコンピューティングに関する複数のシステムでコンピューティングに関する複数のジョブを実行するステップを含み、各々のシステムは、複数の計算ノードを含む。当該方法は、プロセッサを使用して、環境にやさしい動作及び環境にやさしくない動作を実装する電力バルーンによって、設備の電力消費を管理して、電力消費が電力帯の範囲内に入るようにするステップを含む。
【００８０】
例17は、例16の主題を含んでもよい。この例では、電力消費を管理するステップは、電力消費の変化率を制御するステップを含む。
【００８１】
例18は、例16及び例17のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、ノードレベルの電力バルーンであってもよい。
【００８２】
例19は、例16乃至例18のいずれかの組み合わせを含んでもよい。この例では、電力バルーンは、システムレベルの電力バルーンであってもよい。
【００８３】
例20は、例16乃至例19のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、役立つ作業結果を生成するが、クライアントのための計算出力を全く生成しない動作を実装するステップを含む。
【００８４】
例21は、例16乃至例20のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装するステップを含み、その動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するために実装される。
【００８５】
例22は、例16乃至例21のいずれかの組み合わせの主題を含んでもよい。この例では、コンピューティングは、分散コンピューティングを含み、システムは、分散コンピューティングシステムを含み、設備は、分散コンピューティング設備を含む。
【００８６】
例23は、プロセッサによって実行可能な複数の命令を含む非一時的コンピュータ読み取り可能な媒体であって、プロセッサは、環境にやさしい技術及び環境にやさしくない技術を実装する電力バルーンにより、分散コンピューティングのための設備における電力消費を管理して、その電力消費が電力帯の範囲内にあるようにし、設備は、複数の計算ノードを含む複数のシステムを含み、電力消費を管理することは、設備レベル、システムレベル、及び計算ノードレベルの電力消費の変化率を制御することを含む。実行可能な複数の命令は、電力バルーンを含む。
【００８７】
例24は、例23の主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、役立つ作業結果を生成するが、ユーザのために計算出力を全く生成しない動作を、設備において複数の計算ノードを含むシステムで実装することを含み、電力帯は、最小の電力消費から最大の電力消費までの範囲を含む。
【００８８】
例25は、例23及び例24のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を、設備において複数の計算ノードを含むシステムで開始することを含み、その動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するために実装される。
【００８９】
例26は、分散コンピューティングのための設備における電力消費を管理する装置であって、
環境にやさしい技術及び環境にやさしくない技術を実装する電力バルーンにより、前記設備の電力消費を管理して、前記電力消費が電力帯の範囲内に入るようにする手段を含み、前記設備は、複数の計算ノードを含む複数のシステムを含み、
電力消費を管理することは、設備レベル、システムレベル、及び計算ノードレベルの電力消費の変化率を制御することを含む。
【００９０】
例27は、例26の主題を含んでもよい。この例では、電力バルーンにより前記設備の電力消費を管理する手段は、役立つ作業結果を生成するが、ユーザのために計算出力を全く生成しない動作を、前記設備において複数の計算ノードを含むシステムで実装する手段を含み、前記電力帯は、最小の電力消費から最大の電力消費までの範囲を含む。
【００９１】
例28は、例26及び例27のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンにより前記設備の電力消費を管理する手段は、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を、前記設備において複数の計算ノードを含むシステムで開始する手段を含み、前記動作は、エネルギーを消費して、前記設備における電力消費を、前記電力帯の最小限度を上回る値に維持するために実装される。
【００９２】
例29は、コンピューティングのための設備であって、当該設備は、複数の計算ノードを含み、コンピューティングに関する複数のジョブを実行するように構成されるシステムを有する。そのコンピューティング設備は、実行可能なコードを格納するメモリを有し、その実行可能なコードは、当該設備の電力消費を管理して、電力消費が電力帯の範囲内にあるようにし、電力消費を管理することは、電力消費の変化率を制御することを含むとともに、電力バルーンによって電力消費を調整することを含む。
【００９３】
例30は、例29の主題を含んでもよい。この例では、コンピューティングは、分散コンピューティングを含み、ジョブは、分散コンピューティングジョブを含み、電力消費を管理することは、設備レベル、システムレベル、及びノードレベルの電力消費を管理することを含み、電力帯は、最小の電力消費から最大の電力消費までの範囲を含む。
【００９４】
例31は、例29及び例30のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、ノード電力バルーンを含んでもよい。
【００９５】
例32は、例29乃至例31のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、システム電力バルーンを含んでもよい。
【００９６】
例33は、例29乃至例32のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない動作を実装することを含む環境にやさしい技術を実装することを含む。
【００９７】
例34は、例29乃至33のいずれかの組み合わせの主題を含む。この例では、電力バルーンによって電力消費を調整することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含む環境にやさしくない技術を実装することを含み、その動作は、エネルギーを消費して、当該設備における電力消費を、電力帯の最小限度を上回る値に維持するように構成される。
【００９８】
例35は、例29乃至例34のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、診断を起動すること又は保守管理を実行すること、或いは、診断を起動すること及び保守管理を実行することの組み合わせを含む。
【００９９】
例36は、例29乃至例35のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、電力熱公益事業施設のプロセスを起動させて、計算ノードのエネルギー消費を増加させることを含む。
【０１００】
例37は、コンピューティングの方法であって、当該方法は、設備でのコンピューティングに関する複数のシステムでコンピューティングに関する複数のジョブを実行するステップを含み、各々のシステムは、複数の計算ノードを含む。当該方法は、電力バルーンによって、設備の電力消費を管理して、電力消費の変化率を制御するとともに、電力帯の範囲内に入るように電力消費を制御するステップを含み、電力バルーンは、環境にやさしい動作及び環境にやさしくない動作を実装する。
【０１０１】
例38は、例37の主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、役立つ作業結果を生成するが、クライアントのための計算出力を全く生成しない動作を実装するステップを含む。
【０１０２】
例39は、例37及び例38のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装するステップを含み、その動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するために実装される。
【０１０３】
例40は、例37乃至例39のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、割り当てられていない電源を切られているノードの電源をオンにするステップを含む。
【０１０４】
例41は、電力バルーンを含むとともにプロセッサによって実行可能な複数の命令を含む非一時的コンピュータ読み取り可能な媒体であって、前記プロセッサは、
設備の電力消費を管理して、前記設備の前記電力消費の変化率を制御するとともに、電力帯の範囲内に入るように前記設備の前記電力消費を制御するように構成され、
前記電力バルーンは、環境にやさしい動作及び環境にやさしくない動作を実装し、前記設備は、分散コンピューティング設備を含む。
【０１０５】
例42は、例41の主題を含んでもよく。この例では、電力バルーンによって電力消費を管理することは、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない動作を実装することを含む。
【０１０６】
例43は、例41及び例42のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含み、その動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するために実装される。
【０１０７】
例44は、例41乃至例43のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、割り当てられていない電源を切られているノードの電源をオンにすることを含む。
【０１０８】
例45は、例41乃至例44のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、ノードレベルのために構成される。
【０１０９】
例46は、例41乃至例45のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、システムレベルのために構成される。
【０１１０】
例47は、例41乃至例46のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含む。
【０１１１】
例48は、例41乃至例47のいずれかの組み合わせの主題を含んでもよい。この例では、分散コンピューティング設備は、複数の計算ノードを含む複数の高性能コンピューティング(HPC)システムを含む。
【０１１２】
例49は、例41乃至例48のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理することは、環境にやさしい技術を実装することを含む。
【０１１３】
例50は、例41乃至例49のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を調整することは、環境にやさしくない技術を実装することを含む。
【０１１４】
例51は、コンピューティングのための設備であって、当該設備は、
複数の計算ノードを含み、コンピューティングに関する複数のジョブを実行するように構成されるシステムと、
コードを格納するメモリと、を含み、
前記コードは、前記複数の計算ノード又はプロセッサによって実行可能であり、当該設備の電力消費を管理して、前記電力消費が電力帯の範囲内にあるようにする、設備である。
【０１１５】
例52は、例51の主題を含んでもよい。この例では、前記コンピューティングは、分散コンピューティングを含み、前記ジョブは、分散コンピューティングジョブを含み、電力消費を管理することは、設備レベル、システムレベル、及びノードレベルの電力消費を管理することと、局所的な電力蓄積又は局所的な電力生成、或いは局所的な電力蓄積及び局所的な電力生成の両方を利用することと、を含む。
【０１１６】
例53は、例51及び例52のいずれかの組み合わせの主題を含んでもよい。この例では、前記コードは、電力バルーンを含み、電力消費を管理することは、前記電力バルーンによって前記電力消費を調整することを含む。
【０１１７】
例54は、例51乃至例53のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、前記電力消費の変化率を制御することを含む。
【０１１８】
例55は、例51乃至例54のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンは、ノード電力バルーンを含む。
【０１１９】
例56は、例51乃至例54のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンは、システム電力バルーンを含む。
【０１２０】
例57は、例51乃至例56のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、環境にやさしい技術を実装することを含む。
【０１２１】
例58は、例51乃至例57のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない動作を実装することを含む。
【０１２２】
例59は、例51乃至例58のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、環境にやさしくない技術を実装することを含む。
【０１２３】
例60は、例51乃至例59のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、役に立つ作業結果を全く生成せず、追加の計算出力を全く生成しない動作を実装することを含み、前記動作は、エネルギーを消費して、当該設備における前記電力消費を、前記電力帯の最小限度を上回る値に維持するように構成される。
【０１２４】
例61は、例51乃至例60のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、診断を起動すること又は保守管理を実行すること、或いは、診断を起動すること及び保守管理を実行することの組み合わせを含む。
【０１２５】
例62は、例51乃至例61のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、割り当てられていない電源を切られているノードの電源をオンにすることを含む。
【０１２６】
例63は、例51乃至例62のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力バルーンによって前記電力消費を調整することは、電力熱公益事業施設のプロセスを起動させて、計算ノードのエネルギー消費を増加させることを含む。
【０１２７】
例64は、例51乃至例63のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理することは、前記電力消費の変化率を制御することを含む。
【０１２８】
例65は、例51乃至例64のいずれかの組み合わせの主題を含んでもよい。この例では、前記電力消費の変化率を制御することは、前記複数の計算ノードの動作周波数を調整して、電力に関する優先順位付けを変化させ、ジョブを開始することによって生じる初期の電力消費を減少させることを含む。
【０１２９】
例66は、例51乃至例65のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理することは、局所的なエネルギーの蓄積を利用することを含む。
【０１３０】
例67は、例51乃至例66のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理することは、局所的なエネルギーの生成を利用することを含む。
【０１３１】
例68は、コンピューティングの方法であって、当該方法は、設備でのコンピューティングに関する複数のシステムでコンピューティングに関する複数のジョブを実行するステップを含み、各々のシステムは、複数の計算ノードを含む。当該方法は、プロセッサによって、設備の電力消費を管理して、電力消費が電力帯の範囲内に入るようにするとともに、電力消費の変化率を制御するステップを含む。
【０１３２】
例69は、例68の主題を含んでもよい。この例では、電力消費を管理するステップは、電力バルーンによって電力消費を管理するステップを含む。
【０１３３】
例70は、例69の主題を含んでもよい。この例では、電力バルーンは、システムレベルの電力バルーン、又はノードレベルの電力バルーン、或いは、システムレベル及びノードレベルの双方の電力バルーンであり、電力バルーンによって電力消費を管理するステップは、環境にやさしい動作を実装するステップを含み、環境にやさしい動作は、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない。
【０１３４】
例71は、例69及び例70のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンによって電力消費を管理するステップは、環境にやさしくない動作を、複数の計算ノードを含むシステムで実装するステップを含み、前記環境にやさしくない動作は、役に立つ作業結果を全く生成しないとともに追加の計算出力を全く生成せず、前記環境にやさしくない動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するために実装される。
【０１３５】
例72は、例68乃至例71のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理するステップは、設備レベル、システムレベル、ジョブレベル、及び計算ノードレベルの電力消費の変化率を制御するステップを含む。
【０１３６】
例73は、例68乃至例71のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理するステップは、ジョブレベルで電力消費の変化率を制御するステップを含む。
【０１３７】
例74は、例68乃至例73のいずれかの主題を含んでもよい。この例では、システムは、高性能コンピューティング(HPC)システムを含む。
【０１３８】
例75は、例68乃至例74のいずれかの組み合わせの主題を含んでもよい。この例では、電力バルーンは、システムレベルの電力バルーン又はノードレベルの電力バルーン、或いは、システムレベル及びノードレベルの双方の電力バルーンであってもよい。
【０１３９】
例76は、コンピューティングのための設備であって、当該設備は、
複数の計算ノードを含み、分散コンピューティングに関する複数のジョブを実行するように構成されるシステムと、
コードを格納するメモリと、を含み、
前記コードは、前記複数の計算ノード又はプロセッサによって実行可能であり、当該設備の電力消費を管理して、前記電力消費が電力帯の範囲内に入るようにするとともに、前記電力消費の変化率を制御するように構成される、設備である。
【０１４０】
例77は、例76の主題を含んでもよい。この例では、電力消費を管理することは、設備レベル、システムレベル、及びノードレベルの電力消費を管理することと、局所的な電力蓄積又は局所的な電力生成、或いは局所的な電力蓄積及び局所的な電力生成の両方を利用することと、を含む。
【０１４１】
例78は、例76及び例77のいずれかの組み合わせの主題を含んでもよい。この例では、コードは、電力バルーンを含み、電力消費を管理することは、環境にやさしい動作を実装する電力バルーンによって電力消費を調整することを含み、環境にやさしい動作は、役立つ作業結果を生成するが、クライアントのために計算出力を全く生成しない。
【０１４２】
例79は、例76乃至例78のいずれかの組み合わせの主題を含んでもよい。この例では、コードは、電力バルーンを含み、電力消費を管理することは、環境にやさしくない動作を実装する電力バルーンにより電力消費を調整することを含み、環境にやさしくない動作は、役に立つ作業結果を全く生成しないとともに追加の計算出力を全く生成せず、その環境にやさしくない動作は、エネルギーを消費して、設備における電力消費を、電力帯の最小限度を上回る値に維持するように構成される。
【０１４３】
例80は、例76乃至例79のいずれかの組み合わせの主題を含んでもよい。この例では、環境にやさしくない動作は、割り当てられていない電源を切られているノードの電源をオンにすることを含む。
【０１４４】
例81は、例76乃至例80のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費を管理することは、電力熱公益事業施設により電力消費を調整して、計算ノードの電力消費を増加させることを含む。
【０１４５】
例82は、例76乃至例81のいずれかの組み合わせの主題を含んでもよい。この例では、電力消費の変化率を制御することは、複数の計算ノードの動作周波数を調整して、電力に関する優先順位付けを変化させ、分散コンピューティングジョブを開始することによって生じる初期の電力消費を減少させることを含む。
【０１４６】
例83は、プロセッサによって実行可能な複数の命令を含む非一時的コンピュータ読み取り可能な媒体であって、
前記プロセッサは、設備による電力消費を管理して、前記電力消費が電力帯の範囲内にあるようにするとともに、前記設備による前記電力消費の変化率を制御するように構成され、
前記設備は、複数の計算ノードを有する複数の分散コンピューティングシステムを有する、非一時的コンピュータ読み取り可能な媒体である。
【０１４７】
例84は、例83の主題を含んでもよい。この例では、電力消費を管理することは、設備レベル、システムレベル、及び計算ノードレベルの電力消費を管理することを含み、電力帯は、指定された最小の電力消費から指定された最大の電力消費までの範囲を含む。
【０１４８】
例85は、例83及び例84のいずれかの組み合わせの主題を含んでもよい。この例では、プロセッサによって実行可能な複数の命令は、電力バルーンを含み、電力消費を管理することは、環境にやさしい動作を実装する電力バルーンにより電力消費を調整することを含み、環境にやさしい動作は、役に立つ作業結果を生成するが、ユーザのために計算出力を全く生成しない。
【０１４９】
例86は、例83乃至例85のいずれかの組み合わせの主題を含んでもよい。この例では、プロセッサによって実行可能な複数の命令は、電力バルーンを含み、電力消費を管理することは、環境にやさしくない動作を実装する電力バルーンにより電力消費を調整することを含み、環境にやさしくない動作は、役に立つ作業結果を全く生成しないとともに追加の計算出力を全く生成せず、前記環境にやさしくない動作は、エネルギーを消費して、設備における電力消費を、電力帯の指定された最小限度を上回る値に維持するために実装される。
【０１５０】
1つ又は複数の実施形態のうちのいずれの実施形態においても、上記の複数の例の中の細部を使用してもよいということを理解すべきである。例えば、本明細書で説明された方法又はコンピュータ読み取り可能な媒体のいずれかに関して、上記で説明されたコンピューティングデバイスの任意的な特徴のすべてを実装してもよい。さらに、本明細書においては、複数の実施形態を説明する目的で、フローチャート及び/又は状態図を使用してきたが、本発明は、これらのフローチャート及び状態図或いは本明細書中の対応する記載に限定されるべきではない。例えば、処理のフローは、図示されているボックス又は状態の各々を通って進む必要はなく、或いは、本明細書で図示されそして説明されているのと厳密に同じ順序で進む必要もない。
【０１５１】
本発明は、本明細書に列記されている特定の細部に限定されるべきではない。実際に、本開示の恩恵を受ける当業者は、本発明の範囲を逸脱することなく、上記の説明及び図面から他の多くの変形を導き出すことが可能であるということを理解するであろう。したがって、本発明の範囲を規定するのは、いずれかの補正も含めた以下の特許請求の範囲である。
【図１】
0006605609.tif 000002
【図２】
0006605609.tif 000003
【図３】
0006605609.tif 000004
【図４】
0006605609.tif 000005
【図５Ａ】
0006605609.tif 000006
【図５Ｂ】
0006605609.tif 000007
【図６】
0006605609.tif 000008
【図７】
0006605609.tif 000009
【図８】
0006605609.tif 000010