(57)【要約】  本発明のコンピュータ実施の方法によれば、コンピュータの温度を示す測定値が受信され、その測定値に基づいてコンピュータについての熱的健全性値が計算される。即ち、本発明のコンピュータ実施の方法は、コンピュータの温度を示す測定値を受信するステップと、前記測定値に基づいて前記コンピュータの熱的健全性値を計算するステップとを備える。例えば、前記熱的健全性値を計算するステップが前記測定値と格納されたしきい値とを比較するステップを含む。
2011526395.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの温度を示す測定値を受信するステップと、
前記測定値に基づいて前記コンピュータの熱的健全性値を計算するステップとを備える、コンピュータ実施の方法。
【請求項２】
前記熱的健全性値を計算するステップが前記測定値と格納されたしきい値とを比較するステップを含む、請求項1に記載の方法。
【請求項３】
前記測定値が温度、前記コンピュータの使用電力、前記コンピュータの利用率、または前記コンピュータのファンの回転速度のうちの１つまたは複数を備える、請求項1に記載の方法。
【請求項４】
異なるタイプの複数の測定値を受信するステップをさらに備え、前記熱的健全性値を計算するステップが前記複数の測定値を結合する、請求項3に記載の方法。
【請求項５】
前記測定値が、前記コンピュータの中央処理装置、前記コンピュータのディスクドライブ、前記コンピュータのメモリモジュール、前記コンピュータのマザーボード、または前記コンピュータ付近の空気のうちの１つまたは複数の温度測定値を備える、請求項1に記載の方法。
【請求項６】
前記熱的健全性値が無次元値である、請求項1に記載の方法。
【請求項７】
前記熱的健全性値が0から1の範囲の数である、請求項6に記載の方法。
【請求項８】
前記熱的健全性値が0から10の範囲の数である、請求項6に記載の方法。
【請求項９】
前記熱的健全性値についての記述子を、記述子の有限集合から選択するステップをさらに備える、請求項1に記載の方法。
【請求項１０】
前記熱的健全性値を計算するステップが前記コンピュータのプラットフォームタイプを標準化するステップを含む、請求項1に記載の方法。
【請求項１１】
前記熱的健全性値がしきい値を超えるとアラームを生成するステップをさらに備える、請求項1に記載の方法。
【請求項１２】
電力、冷却、または利用率のうちの１つまたは複数を、前記熱的健全性値に基づいて調整するステップをさらに備える、請求項1に記載の方法。
【請求項１３】
複数のコンピュータのそれぞれから前記コンピュータの前記温度を示す前記測定値を受信するステップと、
複数のコンピュータのそれぞれについて熱的健全性値を計算するステップとをさらに備える、請求項1に記載の方法。
【請求項１４】
前記複数のコンピュータのうちの少なくともいくつかが異なるプラットフォームであり、複数のコンピュータのそれぞれについて熱的健全性値を計算するステップがそれぞれの熱的健全性値が値の同じ範囲内に収まるように標準化するステップを含む、請求項13に記載の方法。
【請求項１５】
値の前記範囲が、異なるプラットフォームにわたって一様であるコンピュータ挙動に対するマッピングをもたらす、請求項14に記載の方法。
【請求項１６】
前記熱的健全性値を集約するステップをさらに備える、請求項13に記載の方法。
【請求項１７】
電力ドメイン、冷却ドメイン、論理ドメイン、および物理的位置ドメインのうちの１つまたは複数にわたって前記熱的健全性を集約するステップをさらに備える、請求項16に記載の方法。
【請求項１８】
プロセッサに、
コンピュータの温度を示す測定値を受信させ、
前記コンピュータについての熱的健全性値を計算させる命令を備える、マシン可読記憶メディアに有形に実施されたコンピュータプログラム製品。
【請求項１９】
前記熱的健全性値を計算する命令が前記測定値と格納されたしきい値とを比較する命令を含む、請求項18に記載のコンピュータプログラム製品。
【請求項２０】
前記測定値が温度、前記コンピュータの使用電力、前記コンピュータの利用率、または前記コンピュータのファンの回転速度のうちの１つまたは複数を備える、請求項18に記載のコンピュータプログラム製品。
【請求項２１】
異なるタイプの複数の測定値を受信する命令をさらに備え、前記熱的健全性値を計算する命令が前記複数の測定値を結合する命令を含む、請求項20に記載のコンピュータプログラム製品。
【請求項２２】
前記測定値が、前記コンピュータの中央処理装置、前記コンピュータのディスクドライブ、前記コンピュータのメモリモジュール、前記コンピュータのマザーボード、または前記コンピュータ付近の空気のうちの１つまたは複数の温度測定値を備える、請求項20に記載のコンピュータプログラム製品。
【請求項２３】
前記熱的健全性値が無次元値である、請求項18に記載のコンピュータプログラム製品。
【請求項２４】
前記熱的健全性値が0から1の範囲の数である、請求項23に記載のコンピュータプログラム製品。
【請求項２５】
前記熱的健全性値が0から10の範囲の数である、請求項23に記載のコンピュータプログラム製品。
【請求項２６】
前記熱的健全性値についての記述子を、記述子の有限集合から選択する命令をさらに備える、請求項18に記載のコンピュータプログラム製品。
【請求項２７】
前記熱的健全性値を計算する命令が前記コンピュータのプラットフォームタイプを標準化する命令を含む、請求項18に記載のコンピュータプログラム製品。
【請求項２８】
前記熱的健全性値がしきい値を超えるとアラームを生成する命令をさらに備える、請求項18に記載のコンピュータプログラム製品。
【請求項２９】
電力、冷却、および利用率のうちの１つまたは複数を、前記熱的健全性値に基づいて調整する命令をさらに備える、請求項18に記載のコンピュータプログラム製品。
【請求項３０】
複数のコンピュータのそれぞれから前記コンピュータの前記温度を示す前記測定値を受信して、複数のコンピュータのそれぞれについて熱的健全性値を計算する命令をさらに備える、請求項18に記載のコンピュータプログラム製品。
【請求項３１】
前記複数のコンピュータのうちの少なくともいくつかが異なるプラットフォームであり、複数のコンピュータのそれぞれについて熱的健全性値を計算する前記命令がそれぞれの熱的健全性値が値の同じ範囲に収まるように標準化する命令を含む、請求項30に記載のコンピュータプログラム製品。
【請求項３２】
値の前記範囲が、異なるプラットフォームにわたって一様であるコンピュータ挙動に対するマッピングをもたらす、請求項31に記載のコンピュータプログラム製品。
【請求項３３】
前記熱的健全性値を集約する命令をさらに備える、請求項31に記載のコンピュータプログラム製品。
【請求項３４】
電力ドメイン、冷却ドメイン、論理ドメイン、および物理的位置ドメインのうちの１つまたは複数にわたって前記熱的健全性を集約する命令をさらに備える、請求項33に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、コンピュータの熱監視(thermal monitoring)に関する。
【背景技術】
【０００２】
マイクロプロセッサによって消費される電力は熱に変換される。単一のマザーボード上に搭載された1対のマイクロプロセッサは、200〜400ワット、またはそれ以上の電力を使うことがある。データセンタ内のコンピュータについて説明するために、使用電力(power draw)を数千(または数万)倍すると、発熱の可能性を理解することができる。データセンタオペレータは、コンピュータを動作させるための電力に対してだけでなく、コンピュータを冷却するためにも支出しなければならない。熱を除去するためのコストが、大型データセンタの運営の主要コストとなる場合がある。
【０００３】
さらに、マイクロプロセッサ、メモリ、またはディスクドライブなどのコンピュータのコンポーネントは、高熱にさらされると故障しやすい。熱を逃がすために、ファンがコンピュータのコンポーネントにわたって一定の空気流を送ることができ、周囲の空気への熱伝達を改善するために、いくつかのコンポーネント、特にマイクロプロセッサにヒートシンクを取り付けることができる。これらの予防措置にもかかわらず、特に高い利用率で動作しているとき、コンピュータコンポーネントは依然として過熱し、障害を起こすことがある。
【発明の概要】
【課題を解決するための手段】
【０００４】
一態様では、本方法はコンピュータの温度を示す測定値を受信するステップ、およびその測定値に基づいてコンピュータの熱的健全性値を計算するステップを含む。
【０００５】
本発明の実施形態は、以下の特徴のうちの１つまたは複数を含むことができる。熱的健全性値を計算するステップは、測定値と格納されたしきい値とを比較するステップを含みうる。測定値は温度、コンピュータの使用電力、コンピュータの利用率、またはコンピュータのファンの回転速度のうちの１つまたは複数であってもよい。異なるタイプの複数の測定値を受信してもよく、熱的健全性値を計算するステップは複数の測定値を結合してもよい。測定値は、コンピュータの中央処理装置、コンピュータのディスクドライブ、コンピュータのメモリモジュール、コンピュータのマザーボード、またはコンピュータ付近の空気のうちの１つまたは複数の温度測定値であってもよい。熱的健全性値は、たとえば0から1の範囲または0から10の範囲の数などの無次元値であってもよい。熱的健全性値についての記述子は、記述子の有限集合から選択されてもよい。熱的健全性値を計算するステップは、コンピュータのプラットフォームタイプを標準化するステップを含むことができる。熱的健全性値がしきい値を超えると、アラームが生成されてもよい。電力、冷却、および利用率のうちの１つまたは複数が、熱的健全性値に基づいて調整されてもよい。複数のコンピュータのそれぞれからコンピュータの温度を示す測定値が受信されてもよく、複数のコンピュータのそれぞれについて熱的健全性値が計算されてもよい。複数のコンピュータのうちの少なくともいくつかは異なるプラットフォームでよく、複数のコンピュータのそれぞれについて熱的健全性値を計算するステップは、それぞれの熱的健全性値が値の同じ範囲内に収まるように標準化するステップを含むことができる。値の範囲は、異なるプラットフォームにわたって一様であるコンピュータ挙動にマッピングしてもよい。熱的健全性値は集約されてもよく、たとえば、複数のコンピュータについての熱的健全性値を生成するために複数のコンピュータの熱的健全性値が平均化されてもよい。電力ドメイン、冷却ドメイン、論理ドメイン、および物理的位置ドメインのうちの１つまたは複数にわたって熱的健全性値が集約されてもよい。
【０００６】
他の態様では、マシン可読記憶メディア内に有形に実施されたコンピュータプログラム製品が、プロセッサにこれらの方法を実行させるための命令を備える。
【０００７】
諸利点には以下のうちの１つまたは複数が含まれうる。データセンタ内のコンピュータの熱的健全性を、オペレータが異なる集合体レベルで容易に評価できる。熱的健全性値を経時的に監視することができ、過去の挙動は将来の熱的健全性を予測するために使用できる。コンピュータが故障の危機にあることを熱的健全性変数が示すと是正措置をとることができ、したがって信頼性を改善し、データセンタのダウンタイムを減らす。
【０００８】
１つまたは複数の実施形態の詳細は、添付の図面および以下の記述において説明する。他の諸特徴、諸目的、および諸利点は、記述および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【０００９】
【図１Ａ】データセンタとして動作しているファシリティの側断面図である。
【図１Ｂ】データセンタとして動作しているファシリティの平面図である。
【図１Ｃ】データセンタ内のコンピュータのコンポーネントの概略図である。
【図２】監視コンピュータに温度情報を提供するように構成されたデータセンタのコンピュータの概略図である。
【図３】コンピュータコンポーネントについての故障温度のデータを収集する方法を示す流れ図である。
【図４】データパワーセンタを熱的に監視する方法を示す流れ図である。
【発明を実施するための形態】
【００１０】
大規模インターネットサービス、およびそれをサポートすることが必要とされる大規模並列計算インフラストラクチャは、数千または数万の計算ノードで構成されているデータセンタファシリティ、それらの関連記憶階層、および相互接続インフラストラクチャなどの、ウェアハウスサイズの計算システムの設計を必要とすることがある。データセンタは異なるタイプのコンピュータなど、多くの異なるタイプのコンピュータ機器を含むことができ、一般的にそれぞれの機器は複数のより小さい電子コンポーネントで構成される。
【００１１】
上述のように、コンピュータコンポーネントは熱を発生させる。たとえば、コンピュータコンポーネントの温度が短期的な性能低下または長期的な信頼性低下をもたらすのに十分なほど上昇する状態である熱イベントは、冷却プラントの故障、非常に多数のコンピュータを近接して展開すること(その結果、冷却システムの局所的な冷却能力よりも局所熱の方が大きくなる)、過剰利用、および季節変動などの様々な要因によって引き起こされうる。
【００１２】
異なるコンピュータは高温に対する敏感性が異なる可能性があり、たとえばコンポーネントが故障し、低下した性能または長期的信頼性損失を被る温度、および故障の性質は、異なる構成のプラットフォームによってそれぞれ異なる。さらに、未処理の温度測定値によって表されるコンピュータへの脅威を理解できるのは専門家だけである可能性が高い。温度データを非専門家であるオペレータにとってより有益にするために、たとえば人間がリアルタイムで意思決定するために、または事前にプログラムされた応答を形成するために、コンピュータまたはコンピュータのグループの温度データを熱的健全性値(a thermal health value)に変換することができる。
【００１３】
熱的健全性値は単一のマシンについて生成できるが、熱的健全性は多数のマシン、たとえばクラスタ全体を評価するために特に有益である。
【００１４】
熱的健全性値はマージン、たとえばコンピュータまたはコンピュータのグループが低下した性能にどれだけ「近い」か示すことができる。データセンタの全体的な熱的健全性は、単一の最悪の場合または最大値よりもむしろ分散によって決定されうる。
【００１５】
熱監視問題への序論として、例示的なデータセンタファシリティを説明する。
【００１６】
図1Aおよび1Bは、データセンタとして機能する例示的ファシリティ10を示すための側面図および平面図である。ファシリティ10は密閉空間12を含み、基本的に建物全体、あるいは建物内の１つまたは複数の部屋を占めることができる。密閉空間12は、コンピュータ機器の多数(数十、数百、または数千)のラックを設置するのに十分に大きく、したがって数百、数千、または数万のコンピュータを収容できる。
【００１７】
ラックマウントコンピュータのモジュール、たとえばケージ20は、アクセス通路24によって分離された列22内のスペースに配置される。それぞれのケージ20は、複数のラック26、たとえば4から8個のラックを含むことができ、それぞれのラックは複数のコンピュータ28、たとえばトレイを含む。
【００１８】
図1Cはラックからのコンピュータの概略図である。一般的に、それぞれのコンピュータ28はマザーボードなどの回路基板50を含むことができ、その上に中央処理装置(CPU)52、メモリ54、１つまたは複数のディスクドライブ56、およびコンピュータをデータセンタ内の他のコンピュータのネットワークに接続するための入力/出力ポート58などの様々なコンピュータ関連コンポーネントが搭載されている。
【００１９】
図1Aおよび1Bに戻ると、ファシリティはもう１つの熱交換処理を介してデータセンタから熱を除去するための冷却システム、たとえば部屋に冷気を入れるための空気調節システム、またはラックを越えて冷却液を運ぶ冷却コイル、およびラックマウントコンピュータに接続して、コンピュータと外部ネットワーク、たとえばインターネットとの間でデータを搬送するためのデータグリッド40(図1C参照)も含む。
【００２０】
上述のように、マイクロプロセッサ、メモリ、またはディスクドライブなどのコンピュータのコンポーネントは高温にさらされると故障することがある。一般的にコンポーネントの故障は、コンポーネントの性能が変わる(一般的に減少する)第1温度ゾーン、コンポーネントのエラー率、たとえばディスクドライブの読出し/書込みエラーが著しく増加する、より高い第2温度ゾーン、および、コンポーネントが完全に故障する、さらに高い第3温度ゾーンなどの複数のモードを含む。コンポーネントが異なるモードの故障を示す温度は、実験的手段を通じて独立に特徴づけることができる。しかし、コンポーネントデューティサイクル、電圧、および製造上のばらつきを含む、性能に影響を与えうる他の問題点がありうる。
【００２１】
温度に応じてコンポーネントが故障する順番は、異なるプラットフォームにわたって同様であることも異なることもあり、たとえばいくつかのプラットフォームでは温度が上昇すると最初にメモリが故障し、次にディスクドライブ、続いてCPUが故障することがある。他の順番も可能である。たとえばいくつかのプラットフォームでは、CPU性能が熱暴走の影響を最も受けやすく、次にディスクドライブ、続いてメモリが影響を受けやすい場合がある。しかし、故障が発生する正確な温度は、異なる構成のプラットフォームによって様々である。たとえば、異なるモデルのCPUは異なる温度で故障し始める。したがって、たとえ温度データが利用可能でも、温度データ自体は必ずしもマシンの熱的健全性に関する有益な情報を提供するわけではなく、ましてデータセンタ内で一般的に生じるような異なる構成を有するマシンの集合の熱的健全性に関する有益な情報を提供するわけではない。
【００２２】
したがって、上述のように、データセンタの人間のオペレータがコンピュータまたはコンピュータのグループの熱状態の表示を有することは有益であり、コンピュータが故障しているか、または故障の危機にあるかを評価するために特定のプラットフォームの知識を必要としない。故障には性能の低下、または回復不能な障害、あるいは両方を含むことができ、異なるタイプの故障は熱的健全性を決定する際に異なる重み付けを受けることができる。
【００２３】
温度が上昇するにつれてコンポーネントが同じ順番の故障モードをたどる傾向があるという事実は、温度が上昇するにつれてエラーモードの一定の順序をもたらす傾向がある。したがって、温度が上昇するにつれて、コンピュータは熱的「健全性」のいくつかのゾーンをたどる傾向があり、たとえばより低温ではコンピュータは正常に動作するので「健全」と見なすことができ、より高温では一定のエラーが発生するのでコンピュータは「不健全」と見なすことができ、ひとたびコンピュータが完全に故障すると「故障した」と見なすことができる。さらに、エラーがより頻繁になるか、より多数のコンポーネントでエラーが発生し始めると、「不健全」段階はいくつかのレベルを含むことができる。さらに、温度がさらに上昇するとコンピュータが「不健全」段階に入ることを示す「危険」段階があってもよく、さらに高温では、コンピュータが完全な故障寸前にあることを示す「限界」段階があってもよい。定義された独自の健全性レベル段階が、ほとんどいくつでもあってもよい。
【００２４】
コンピュータの熱状態のこの一般的表示を「熱的健全性変数(thermal health variable)」とを呼ぶことができ、それは「熱的健全性値」を有することができる。したがって、熱的健全性変数は、単一コンピュータまたはデータセンタ内のコンピュータの集合体の熱状態のメトリック、一般的に無次元メトリックであるが、コンピュータの特定の構成に依存しない。
【００２５】
熱的健全性変数はコンピュータの構成の違いを超えて標準化できる。すなわち熱的健全性値は、複数のコンピュータ、たとえばデータセンタのすべてのコンピュータで共有されるスケールの範囲に収まるように個々のコンピュータについて計算され、その共有スケールの少なくとも端点(および場合によってはスケール内の少なくともいくつかの中点)がコンピュータの同様の挙動を表す。このような熱的健全性値は、マシンの温度を示す最近の測定と、その挙動が発生する温度の過去の実験的測定との組合せから計算されうる。データセンタは異種機器の集合なので、これらの違いを超えて標準化することはクラスタ全体の熱的健全性を評価するための有効なパラメータの提供に役立つ。基本的に、熱的健全性変数はコンピュータまたはコンピュータのグループの健全性を表すが、個々のマシンの仕様とは無関係である。
【００２６】
場合によっては、システムは最も不健全なコンポーネントと同程度の健全性でしかない。たとえば、CPUが「故障した」場合、コンピュータ全体が故障していることになる。場合によっては、熱的健全性はコンポーネント熱的健全性の集合体である。たとえばデータセンタレベルでの熱的健全性は、個々のマシンについての熱的健全性の集合体である。いくつかの実施形態では、コンピュータの集合体の熱的健全性を提供するために、集合体内の個々のコンピュータの熱的健全性を単に平均化することによって熱的健全性を集約(aggregate)することができる。
【００２７】
図2は熱的健全性値を決定するためのシステムの概略図である。データセンタ内のコンピュータ28のうちの少なくともいくつかが、ネットワーク、たとえばデータグリッド40を通じて汎用コンピュータ、たとえばワークステーションなどの監視コンピュータ60に接続されている。
【００２８】
これらのコンピュータ28はそれぞれコンポーネントのうちの少なくとも１つの温度を測定する少なくとも１つのセンサを含む。たとえばコンピュータ28はCPU、メモリ、ハードドライブ、またはマザーボードの温度を測定するためにセンサを使用できる。さらにコンピュータ28は、マシン自体を冷却するためにマシンがどれほど忙しく働いているかを示すファン速度などの、熱的健全性を示す他のデータを累算できる。たとえば2つのマシンの温度は同じだが、第1マシンのファン速度が最大可能値で第2マシンのファン速度が標準値の場合、第1マシンは悪条件において熱的健全性を維持する能力がより少ないため、このマシンについての熱的健全性の方が少々悪いと報告される。さらに、コンピュータ28付近の空気などの環境の温度を測定するためにラックまたはケージに設置されたセンサがあってもよく、このデータは熱的健全性を決定する際に使用できる。さらに、温度は電力および利用率に対応すると仮定できるので、コンピュータは使用電力および/または利用率についてのデータを収集できる。コンピュータ28は他のトレイレベルの熱センサから、および他のラックまたはケージレベルのセンサ、たとえば吸気温(EAT)、吐気温(LAT)、吸水温(EWT)、および吐水温(LWT)を測定するラックまたはケージのための冷却インフラストラクチャを監視するセンサなどから熱データを受信できる。
【００２９】
いくつかの実施形態では、それぞれのコンピュータが、個々のコンポーネントの仕様およびセンサからの利用可能データに基づいてそれ自体の熱的健全性を計算する。いくつかの実施形態では、いくつかまたはすべてのコンピュータが測定値を監視コンピュータ60に送信し、監視コンピュータ60は受信したデータに基づいて熱的健全性を計算する。監視コンピュータ60は、他のトレイレベル熱センサから、およびハードウェア健全情報の他のソースから熱データを受信できる。いくつかの実施形態では、コンピュータ28によって計算された熱的健全性値は監視コンピュータ60に送信され、監視コンピュータはコンピュータ28の集合体についての熱的健全性を計算できる。
【００３０】
図3はコンピュータの故障温度を決定する方法を示す流れ図である。初めに、コンピュータコンポーネントの故障温度を含む温度への１つまたは複数のコンピュータの反応が実験的に決定される(ステップ102)。たとえば、知られているコンポーネントを有するテストコンピュータが温度制御された環境、たとえばオーブン内に設置されうる。環境の温度が上昇する間、テストコンピュータを動作させる。テストコンピュータの性能が監視され、たとえばテストコンピュータはテストルーチンを実行してエラーを報告し、その間熱電対または他のセンサがコンポーネントの温度を測定できる。このデータから、コンポーネントが故障する温度が決定できる。コンポーネントおよびコンポーネントの故障温度を示すデータはデータベースに格納できる(ステップ104)。
【００３１】
プラットフォームのタイプごとに、そのプラットフォームに利用可能なセンサ測定値と熱的健全性値とを関連付けるために機能を生成できる。これらの機能もプラットフォームを機能に関連付けるデータベースに格納できる。データセンタに設置されたコンピュータは、そのプラットフォームに対応する機能を含むように(設置前または設置後に)構成されうる。関連するしきい値を設定するための、何が特定のコンポーネントまたはコンピュータの「故障」を構成するかについての最初の決定は、熱的健全性監視システムの設計者によるいくつかの判断を含むことができるが、マッピングに一貫性があり、熱的健全性値の範囲の一方が良好な性能を表し、他方がほぼ完全な故障を表す限り、熱的健全性変数は有益な情報を提供する。さらに、異なるプラットフォームが同じ熱的健全性値を有する場合は同じ性能劣化を受けるように、同様のコンポーネントについてある程度一貫性のある基準を提供することが可能である。たとえば、メモリなどの特定のタイプのコンポーネントの一定のエラー率(たとえば、エラー/秒に関して)は、一定の熱的健全性値、たとえば「健全(healthy)」および「不健全(unhealthy)」などの異なる所望の記述子間のしきい値に一貫してマッピングできるように設計者によって選択できる。
【００３２】
図4はデータセンタを運営する間に熱的健全性値を決定する方法を示す流れ図である。コンピュータのうちのいくつかまたはすべてが、コンポーネントの温度を示すデータを監視コンピュータに送信する(ステップ110)。コンピュータごとに、監視コンピュータは受信した温度データおよび以前に測定したコンピュータ内のコンポーネントの故障温度に基づいて熱的健全性変数を計算する(ステップ112)。いくつかの実施形態では、コンピュータは機能を格納してそれ自体の熱的健全性を個々のコンポーネントの仕様および利用可能センサに基づいて計算し、次いで計算した熱的健全性を監視コンピュータに送信する。
【００３３】
熱的健全性変数は、温度センサ、ファン速度、電力、および利用率を含む、それぞれのコンピュータの様々なセンサからのデータから計算できる。異なるタイプのプラットフォームにわたって比較できるようにするために、同様の熱的健全性値での同様のマシンの挙動を示すために熱的健全性変数が標準化される。たとえば、最も低い熱的健全性値、たとえば0では、すべてのマシンが危険性なしに温度を上昇させるための相当のマージンがあるというカテゴリに入り、最も高い熱的健全性値、たとえば10では、すべてのマシンが回復不能な障害というカテゴリに入ることになる。以前示したように、マシンの挙動は以前に測定された故障温度と相関関係がある(ステップ112)。
【００３４】
計算された熱的健全性変数は無次元メトリック、たとえば数であってもよい。いくつかの実施形態では、熱的健全性変数は可能値の有限小数を有する。たとえば、熱的健全性変数は0から10または1から5の範囲の整数でよく、たとえば数が低いほどより健全であることを示す。いくつかの実施形態では、熱的健全性変数は非常に多数の可能値を有する数、たとえば、コンピュータ内のデータの言葉によって表される数でよく、このような実施形態では熱的健全性値はたとえば0から1または0から10の範囲の実数であってもよい。
【００３５】
熱的健全性変数はオペレータに表示することができる。いくつかの実施形態では、熱的健全性変数は関連テキスト記述、たとえば「良い」、「OK」、または「悪い」で表示できる。他の記述子「相当のマージンがある」、「標準操作状態」、「標準操作状態を超える」、「低下した性能」、「エラー率上昇」および「回復不能な故障」を含むことができる。いくつかの実施形態では、数値は表示されずにテキスト記述だけが表示される。
【００３６】
熱的健全性変数が可能値の有限小数を有する場合、値との1対1ベースでテキスト記述がマッピングされてもよく、熱的健全性値それ自体がテキスト記述(数ではなく)でもよい。熱的健全性変数が事実上連続的である場合、値の様々な範囲をテキスト記述子に関連付けることができる。たとえば、熱的健全性変数が0と1との間のスケールの場合、0から0.75の値はマシンが予測された温度範囲内で動作していることを示すことができ、0.75から0.9の値はマシンが予測された制御可能な温度範囲外で動作していることを示すことができ、0.9から1の値はマシンが抑制または最大許容可能温度に達した可能性があることを示すことができ、および1の値はマシンが最大許容可能温度に達したこと示す。
【００３７】
一般的に、熱的健全性変数を計算するために、受信された温度データが、以前に測定されたテストコンピュータの故障温度がしきい値を決定する機能に供給される。熱的健全性変数を決定するために、受信された温度はしきい値と比較される。たとえば、しきい値の第1セットのうちのいずれかを超えることは熱変数を「OK」と設定し、しきい値の第2セットのうちのいずれかを超えることは熱変数を「悪い」と設定する。機能はかなり複雑な場合があり、温度測定としきい値との間の違いからの値の計算、およびコンポーネントのタイプまたはしきい値に基づく違いの重み付けを含む。
【００３８】
計算された値が複数のコンピュータで共有されるスケール内に入る限り、特定のマシンのコンポーネントの許容差によってマシンごとに異なる機能内の定数(たとえば実験的に測定されたしきい値)に加えて、機能内で使用される変数(たとえば、温度または利用率などの測定のタイプ)、および機能内の変数の関係はマシンごとに異なる。たとえば、あるコンピュータは熱的健全性値を計算するために温度測定を使用することがあり、他のコンピュータは熱的健全性値を計算するために利用率を使用することがある。値が共有されたスケールを使用する限り、コンピュータの集合体の熱的健全性を決定するために、値を集約、たとえば単に平均化することができる。いくつかの実施形態では、コンピュータの集合体の熱的健全性について、あるコンピュータが他のコンピュータよりも大きく重み付けされる。
【００３９】
いくつかの実施形態では、熱的健全性値は他の数値測定および実験的に測定された挙動のしきい値から計算された数値である。1例を挙げると、0が最大可能マージンを示し、1がマシンは最高/最悪挙動ゾーンにある、またはそれ以上であることを示すものとして、0と1との間の標準化された無次元熱的健全性値を導くためのアルゴリズムは以下の通りである。すなわち、
THV=1-[Tallowable-T]/Mmax
上式で、THVは熱的健全性値であり、Tallowableは最高/最悪挙動変更前の最大許容可能温度であり、Tはセンサから報告された温度であり、Mmaxは0と1との間の結果を標準化するために使用される予測された最大許容可能マージンである。
【００４０】
監視コンピュータはデータセンタを通じて個々のコンピュータと通信する。任意選択で、監視コンピュータは熱的健全性データをさらなる処理のために集約でき、たとえば監視コンピュータは任意選択で１つまたは複数のコンピュータの集合体についての熱的健全性変数を計算できる(ステップ114)。集合体の熱的健全性値は、集合体内の個々のコンピュータの熱的健全性変数の平均として計算できるが、累積分布関数または平均二乗などの他の技法が適用されてもよい。
【００４１】
集合体は位置ベースの集合体でよく、すなわちコンピュータの物理的位置に基づいてもよい。たとえば、熱的健全性値は所与のラック、モジュール、列、クラスタ、またはデータセンタ内のコンピュータのグループについて決定されてもよい。
【００４２】
集合体はインフラストラクチャベースの集合体でよく、すなわち共通インフラストラクチャコンポーネントを共有するコンピュータに基づいてもよい。たとえば、熱的健全性値は特定の電力または冷却ドメイン内のコンピュータのグループについて決定されてもよい。
【００４３】
集合体はサービスベースの集合体でよく、すなわちコンピュータがデータセンタ内で実行する機能に基づいてもよく、コンピュータがサービスする顧客に基づいてもよい。たとえば、熱的健全性値は検索結果、電子メール、または地図作成をサービスするデータセンタ内のコンピュータのグループについて決定されてもよい。集合体は論理ネットワークグルーピングでよく、たとえば特定のネットワーキングドメインまたはサブドメイン内のコンピュータに基づいてもよい。
【００４４】
集合体の熱的健全性を累積分布関数、すなわち所与の熱的健全性値またはそれ以下で動作しているコンピュータの割合として提示することが有益である場合がある。
【００４５】
熱的健全性変数が決定された後で、たとえば制御ソフトウェアによって自動的に、熱故障を防止するためにコンピュータの性能を調整するために使用されうる。たとえば熱的健全性変数が一定のしきい値を超えるか警告を示すと、たとえば集合体内のコンピュータの利用率を減らして電力使用および温度を下げるために照会を他のコンピュータに転送することによって、集合体内のコンピュータを抑制することができる。別の例を挙げると、熱的健全性変数は冷却システムまたは他の冷却リソースを制御するために使用でき、たとえば熱的健全性値が一定のしきい値を超えた場合、コンピュータの温度を下げて故障の危険性を減らすために熱除去率を上げることができる。逆に、熱的健全性値が一定のしきい値を下回る場合、これはコンピュータがより高温で動作するための多少のマージンを有することを示すことができ、冷却コストを下げるために熱除去率を下げることができる。極限状況では、臨界しきい値を超える１つまたは複数のコンピュータをコンピュータコンポーネントへの回復不能な故障を回避するために自動的にシャットダウンできる。
【００４６】
監視コンピュータは、熱的健全性変数がしきい値を超えると、たとえばある事前設定値を超えると、データセンタのオペレータに警告するためのアラームを自動的に生成できる。たとえば、ラックレベルの熱的健全性値は、所与のラック内のすべてのコンピュータの平均熱的健全性値として生成されうる。アラーム状況の例を挙げると、事前設定パーセンテージ、たとえばクラスタ内の4%から10%のラックが事前設定値、たとえば0から1のスケールで0.75を超える熱的健全性値を有する場合、アラームが生成されうる。機能は、いくつかの温度がしきい値に近い場合に熱的健全性変数が警告を示すようにセーフティマージンを含むことができる。
【００４７】
熱的健全性変数は、マシン配置について決定を下すためにも使用されうる。たとえば、ラックレベルで集約された熱的健全性値を比較することによって、オペレータは追加の熱ロードを処理するためにより多い容量を有するのはどのラックか決定できる(たとえば、熱的健全性値が最も低いラックが追加の熱ロードを最もよく処理できるという仮定の下に)。したがって、追加の熱ロードを処理するためにより多い容量を有するラックへの新しいマシンの配置が優先されうる。
【００４８】
一部の顧客はあるタイプの故障が別のタイプの故障よりも悪いと見なす場合があるので、故障のクラスの関連重み付け(たとえば低下した性能対回復不能な故障)が顧客のために、または顧客によって設定されうる。
【００４９】
熱変化率、たとえば熱変数の時間導関数をコンピュータまたはコンピュータの集合体について計算できる。高い変化率は、マシンまたはマシンのグループに問題が発生していることを示すことができる。この熱変化率は、上述のように熱的健全性変数について標準化されうる。
【００５０】
熱的健全性値は、たとえ特定のプラットフォーム上で実験的測定が行われていない場合でさえ計算してもよい。プラットフォームの特性、たとえばCPUのタイプ、メモリ、およびディスクドライブの数およびタイプが格納されていると仮定すると、ならびに同様の装置、たとえば同じまたは同様のコンポーネント上で実験的測定が行われたと仮定すると、おおよその故障温度の計算が可能であってもよい。たとえば、故障温度は他のテストコンポーネント、たとえば同じメーカーのコンポーネントの測定された故障温度から補間されうる。
【００５１】
上記で説明した処理の様々なステップ、特に熱的健全性値の計算は、コンピュータによって実行される。熱的健全性変数の危険レベルの上昇に応じてコンピュータをシャットダウンすることなどのいくつかのステップは、熱的健全性変数の受信に応じて、たとえば表示されたときに人間のオペレータによって実行されてもよく、たとえば監視コンピュータの制御ソフトウェアによって自動的に実行されてもよい。
【００５２】
マシン熱的健全性の利点は、標準化された値が生成されるので、オペレータまたは熱的健全性変数を使用する制御ソフトウェアを設計しているプログラマはプラットフォームのタイプについて知る必要がない点である。多くの次元の違いを超えて熱的健全性を集約することができ、コンピュータの健全についての情報を収集するために多くの異なる統計方法を適用できる。熱的健全性変数は、コンピュータに加えてネットワークスイッチ、スマートラック、または電力装置などの、高温の結果故障する可能性がある他の形式のコンピューティング機器に適用されてもよい。
【００５３】
本明細書で説明した実施形態およびすべての機能操作は、デジタル電子回路、あるいは本明細書で開示した構造的手段およびその構造的同等物またはそれらの組合せを含む、コンピュータソフトウェア、ファームウェア、またはハードウェアで実施できる。本発明の実施形態は、プログラム可能プロセッサ、コンピュータ、あるいは複数のプロセッサまたはコンピュータなどのデータ処理装置によって実行されるために、またはその動作を制御するために、１つまたは複数のコンピュータプログラム製品、すなわち情報媒体、たとえばメモリまたはディスクなどのマシン可読記憶メディアに有形に実施され、あるいは伝搬信号に実施された１つまたは複数のコンピュータプログラムとして実施できる。
【００５４】
本発明のいくつかの実施形態を説明してきた。しかし、本発明の趣旨および範囲から逸脱することなしに様々な修正が行われてもよいことが理解されよう。したがって、他の実施形態は添付の特許請求の範囲内である。
【符号の説明】
【００５５】
10  ファシリティ
12  密閉空間
20  ケージ
22  列
24  アクセス通路
26  ラック
28  コンピュータ
40  データグリッド
50  回路基板
52  中央処理装置(CPU)
54  メモリ
56  ディスクドライブ
58  入力/出力ポート
60  監視コンピュータ
【図１Ａ】
2011526395.tif 000003
【図１Ｂ】
2011526395.tif 000004
【図１Ｃ】
2011526395.tif 000005
【図２】
2011526395.tif 000006
【図３】
2011526395.tif 000007
【図４】
2011526395.tif 000008
【国際調査報告】
2011526395.tif 000009
2011526395.tif 000010