專利名稱:檢測電子設備中氣流異常的方法和系統的制作方法
技術領域:
本發明涉及一種應用到計算機系統和其它電子系統中的熱診斷技術。 尤其是,本發明涉及氣流異常的改進的檢測。
背景技術:
大的計算機系統往往合并到集中數據中心。尤其是,機架(rack)系 統節約空間并且將服務器和基礎設施放到管理員易于到達的范圍內。"葉 片(blade ),,服務器是其中更為緊湊的服務器布置。葉片服務器,諸如IBM eServer BLADECENTER (IBM和BLADECENTER是紐約Armonk的 國際商用機器公司的注冊商標),是一類消除了前代機架服務器的不少復 雜性的機架優化型服務器。由于機架系統本身的緊湊性,單個的服務器和 其它硬件,諸如封罩(enclosure )、電源、風扇、和管理石更件共享熱環境。 因此,管理電力消耗和維持適當的冷卻成為關鍵。因為在機架系統內通常 含有大量的元件,因此氣流和加熱模式(heating pattern)相當復雜。存 在引發熱問題的許多潛在因素,這能夠導致元件故障并且增加系統維護的 復雜度和成本。
由于如今計算機系統的復雜性和精巧化,因此開發出計算機化的熱診 斷技術來分析計算機系統內的氣流和加熱模式,檢測熱錯誤并轉移元件故 障。流體網絡建模(Flow Network Modeling)是優選的熱診斷技術之一。 例如,美國專利6,889,908描述了一種診斷電子設備中氣流異常的技術,其 在設備的流體網絡建模中引入g情境(fault scenario ),并且確定哪個人 為的錯誤預測 一組與觀察的溫度匹配的期望的溫度。
氣流異常是一類可由熱診斷檢測的錯誤情境。氣流異常是可能負面影 響計算機系統內的冷卻的任何氣流情形。氣流異常通常是因不恰當的操作 或者維護,諸如事故、誤用或者疏忽而引發的意外的或者未預料的氣流變化。氣流異常可阻礙元件適當的冷卻,引起該元件升溫并且可能超過安全 操作溫度,尤其是當該計算機系統后面在更高的溫度下工作的時候。然而, 在較低的溫度下,需要很少或者幾乎不需要氣流來冷卻元件,因此氣流異 常的溫度效應可能達到最小。由于諸如診斷系統所用的溫度傳感器的解才斤 度和熱人為計算機系統具有的計算的不確定這樣的限制,因此,低溫下氣 流異常的最小溫度效應可能是不能探測到的。結果,氣流異常可能處于隱 匿狀態,通過常規的熱診斷技術不能探測到。當隨后該設備處于更高的溫 度下時,任何未探測到的氣流異常可能導致熱問題,那時采取正確的措施 可能就太晚了。
從現有技術的局限性來看,需要一種改進的熱診斷技術。希望對氣流 異常有更可靠的探測。改進的熱診斷技術優選考慮到即使計算機系統一直 空閑或者在低溫和低負荷下工作也進行氣流異常的探測。
發明內容
根據一個實施例,具有一個或者多個節點的計算機系統被操作。將選 中節點的處理器負載增加到 一定的級別,使得足以使氣流異常會在該選中 節點產生可探測的溫度差。在增加的處理器負載條件下的該選中節點探測 溫度。通過對增加處理器負載下的該計算機系統建立熱才莫型來預測該選中 節點的溫度。比較該預測溫度和該探測溫度,以探測氣流異常的存在。
根據另 一個實施例,用于探測氣流異常的系統包括用于在計算機系統 內建立加熱和氣流莫式的熱模型的裝置。提供該系統用于在計算機系統的 一個或者多個節點上實施操作。該系統包括用于選擇性地將選中節點的處 理器負載增加到一定能夠的級別,使得足以探測到實際氣流異常的存在導致的在該選中節點的溫度與沒有氣流異常時該選中節點的溫度的不同;用 于接收代表該選中節點在該增加的處理器負栽下的實際溫度的信號的裝 置;用于通過對該增加的處理器負載下的該計算機系統建立熱模型來預測 該選中節點的溫度的裝置;和用于計算該預測溫度和該探測溫度之差來探 測該氣流異常是否存在的裝置。
本發明其它的實施例、方面、和優點將從下面的說明書和所附權利要 求書中變得顯而易見。
圖1是一種根據本發明的對其實施熱診斷的有代表性的機架服務器系統(計算機系統)的透視圖2是計算機系統的透視圖,用于解釋氣流異常的一些潛在的原因;圖3是計算機系統的透視圖,用于解釋另一類氣流異常的潛在的原因;圖4是用于對計算機系統實施熱診斷的診斷系統的一個實施例的示意
圖5示出了在不同的負載條件下的假想的計算機系統的四個溫度曲線;
圖6示出了使用工作負載遷移以在假想的九服務器系統中將處理器負載從一個服務器移到另一個服務器;
圖7圖示了在不同的負載^Hf下在服務器上強加人為工作負載;
圖8是用于大致地概括根據本發明的用于對計算機系統實施熱診斷的方法的一個實施例的流程圖9示出了計算機的示意圖,該計算機被設置為對計算機系統建立熱模型并探測計算機系統中的氣流異常。
具體實施例方式
本發明提供通過選擇性地增加處理器負載(process load )來增加熱診 斷可靠性的系統和方法。增加處理器負栽增加了處理器的溫度,放大了 任何氣流異常的溫度效應。放大的溫度使得熱診斷系統更可靠地區分是否 存在氣流異常以及或許辨別出該異常的位置。當不增加處理器負載該系統 就不會運行得熱到足以進行氣流異常的可靠的探測時,可將處理器負載選 擇性地增加,并且可在系統活動減少期間實施熱診斷。因而,可在隨后的 系統活動增加時期之前探測并校正氣流異常,在該系統活動增加時期實施
診斷來探測氣流異常或者采取正確的措施來消除氣流異常可能都是不方 便或者不可能的。
根據一個實施例,在計算機系統的一個或者多個所選位置將處理器負 載增加到一定水平,使得如果有氣流異常的話,氣流異常會在該所選位置 產生可探測的溫度差。處理器負載可通過工作負載遷移或者通過強加人為 負載而增加。工作負載遷移是正在其它節點運行的現有處理器轉移到目標 節點,從而增加目標節點的處理器負載。"人為負載"是為了增加目標節 點的處理器負載而產生一個或者多個處理器,處理器的計算結果通常不重 要。
處理器負載增加多少量合適可以各種方式來確定。可通過計算來評估 因存在氣流異常而產生可測量的溫度差所必需的最小處理器負載。另一可 供替換的方法是將處理器負載增加到預定的水平。該預定水平可用處理器
最大處理容量(capacity)的百分比來表示。例如,可將所選位置或節點 的處理器負載在實施熱診斷之前自動增加全容量的40%。另一選擇是,可 將處理器負栽增加到大約100% (全容量),以佳L任何氣流異常的可探測性 達到最大。在目標節點上實施無P艮循環是一類可加在該目標節點上用以將 處理器負載增加到全容量的人為負載。此外,額外的負載可能另外包括大 量使用CPU的內部診斷工作負載(其附帶還具有測試CPU性能的好處), 或者大量使用CPU-存儲器總線的工作負載,其包含一組對存儲器的連續 讀取和寫入(其使用CPU的總線驅動電路并且因此產生熱量)。
圖1是一種根據本發明的可對其實施熱診斷的有代表性的機架服務器 系統10 (計算機系統)的透視圖。計算機系統10包括具有可選的格子形 圖案的封軍11。封罩11容納多個服務器12。每個服務器12可以包括一個 或者多個處理器。處理器典型地為CPU,其是數字計算機中用于解釋指令 并且處理計算機程序所包含的數據的元件。服務器12還可以包括硬盤驅動 器和存儲器,為一個或者多個公共或者獨立的網絡服務。每個服務器12是計算機系統10的一個節點。所顯示的服務器12為"葉片"型月良務器, 但是本發明對于其它類型的安裝于機架的服務器系統以及其它類型的計
算機系統和電子設備也有用。封軍11內典型地容納有眾多的其它的電子元
件,諸如管理控制模塊15、電源模塊16、至少一個吹風機17和開關模塊 18。多服務器12可以共享管理控制器15、電源模塊16、 ^X機17、開關 模塊18、和其它的支持模塊。連接器將服務器12與支持模塊耦合起來, 以減少布線需求并JU更于服務器12的安裝和拆除。例如,每個服務器12 可以經由開關模塊18與千兆比特以太網耦合。封罩11可以將服務器12 耦合到以太網,而無需將單個的電纜直接連接到每個服務器。
服務器12和其它的元件在計算機系統10內產生熱量。尤其是,每個 服務器12產生對應于加在其(多個)處理器上的負載量(處理器負載)的 熱量。處理器負載通常和處理器處理量(throughput)相關,并且可以包 括諸如處理器速度、時鐘速度、總線速度以及為執行一個任務而調用的各 處理器的數量等這樣的因素,處理器負載可以根據諸如MIPS (每秒百萬 指令)或者]太赫(terafl叩)這樣的量度來測量。處理器負載量還可用處 理器的處理容量,諸如"處理器滿負荷利用百分比"來表征。單個處理器 的利用百分比典型地是處理器的最大處理容量的百分比。 一組處理器的利 用百分比可用這多個處理器的綜合處理容量來表示。例如,在某一時刻, 一個假想的三處理器的服務器可以使第一處理器以33%工作,第二處理器 以50%工作,第三處理器以67%工作。在特定的多處理器節點中的處理器 滿負荷利用百分比可以定義為加在全部三個處理器上的處理器負載的算 術平均值,在這個例子中是50%。加在處理器上的負載典型地是動態的, 因此可將利用百分比本身表示為即時的或表示為時間域的平均利用率。處 理器負載越大,產生的熱量越多。例如,以處理器滿負荷利用(100% )工 作的服務器運行得幾乎總是比以50%利用率工作的服務器更熱。
吹風機17產生穿過底盤11的受迫空氣對流,以l更將熱量從計算機系 統10中排除。在服務器12下方布置通風口 14,以4吏空氣進入用來冷卻計 算機系統10。吹風機17通過通風口將空氣吸進封罩11的前面20,使空氣 通過服務器12和其它發熱元件,并且將熱空氣通過封罩11的背面22排出, 在那里熱空氣與外界空氣混合。空氣典型地沿著通過計算機系統10的多條流動路徑在計算機系統10內以凈氣流速率(Qnet)從封軍11的前面20 到背面22流動。可以對通過封罩ll的凈氣流進行控制,以充分冷卻計算 機系統10的元件。例如,凈氣流速率可以通過控制每個^X機17的速度、 通過控制調用的吹風機17的數量、或者通過這兩者來控制。在處理器負栽 減少期間,凈氣流速率可以通過減少一個或者多個吹風機的^X速度或者 通過關閉一個或者多個吹風機17來減小。在低處理器負載下,有可能根本 不需要受迫氣流,并且可將全部吹風機17關閉,而沒有負面的發熱后果。
還可以對處理器負載進行調整,以控制計算機系統IO內的溫度。按照 慣例,調整處理器負載的原因包括希望減少計算機系統內的溫度和/或噪音 級別。例如,處理器負載和對應的熱和電力消耗可以通過"節流閥"處理 器、將子系統置于節能工作模型、或者關掉未使用電路來減小。減小處理 器負栽的其它例子是減小一個或者多個CPU的時鐘頻率或者工作電壓、 或者將等待或者停止(hold)狀態引入CPU的活動中。相反,本發明包括 為增加溫度而選擇性地增加處理器負載以便于進行熱診斷的方法。
圖2是計算機系統10的透視圖,用于解釋氣流異常的一些潛在的原因。 氣流異常是可能負面影響計算機系統10內的一個或者多個位置的冷卻的 任何氣流情形,這可能導致元件過熱。氣流異常典型地是沒有正確地操作 和維護計算機系統的結果。因而,氣流異常可能因在計算機系統附近的人 員的事故、疏忽、誤用、缺工作乏培訓、或者未經許可的人員操作或者操 控計算機系統而起。油布30覆蓋在封罩11的前面20的一部分上是可能會 引起計算機系統10內氣流異常的一個事件。油布30可能是被那些對精巧 的計算機設備的操作沒有經過培訓且沒有意識到可能因阻擋氣流通過計 算機系統10而帶來的不利后果的外面的承包Aii在封罩11上的,油布30 阻礙了封軍11左側的若干通風口 14以及封罩11左側的服務器12所包括 的一些通風端口。氣流異常的另一個潛在原因是將公文包32對著封罩11 的前面20放置,其阻擋了封罩11右下側的若干通風口 14。以封罩11的 背面22緊靠墻壁34的方式放置封罩11是氣流異常的另一個潛在原因。墻 壁34部分地阻礙或者限制了從封罩背面22流出的氣流。因油布30、 >&文包32、以及將封罩ll靠近墻壁34放置,它們單獨或者綜合起來所引起的 氣流阻礙可能帶來計算機系統10內負面的發熱效應。
圖3是計算機系統10的透視圖,用于解釋另一類氣流異常。將服務器 12之一從封罩11內它的插槽15中取出。正常地,應該用一個填充面板(未 示出)覆蓋那個已經取出服務器的空插槽,以使通過計算機系統10的氣流 基本上不受影響。如果填充面板拿走,那么可能就會出現氣流異常。與圖 2所示的各種氣流阻礙相反,插槽15中填充面板或者服務器12的缺失實 際上可能增加插槽15局部的氣流。然而,對插槽15所增加的氣流可能導 致相鄰的服務器12或者其它元件等量的氣流減少。氣流的這種變化可能導 致相鄰的服務器12或者其它元件變得"缺少冷卻氣體",導致在計算機系 統10內的一些位置產生不想要的熱斑或者其它負面的發熱效應.氣流異常 的潛在原因是無限的,并且圖2和3所示的情境僅僅是一些例子。
圖4是用于在計算機系統50(目標系統)內實施熱診斷的診斷系統52 的一個實施例的示意圖。診斷系統52可用來探測計算機系統10內的錯誤, 包括諸如圖2-3中所示的那些氣流異常。目標系統50可以是,例如圖1 -3中的計算機系統IO。診斷系統52是一臺用來對目標系統50實施熱診 斷的計算機。診斷系統52可以是或者可以包括目標系統50的服務器,或 者是目標系統50的子系統。另一選擇是,診斷系統52可以是或者可以包 括單獨的一臺計算機。目標系統50容納發熱元件72,諸如服務器,它們 在通過封罩的空氣的流動中冷卻。溫度傳感器74感知發熱元件72的溫度 并產生代表該溫度的信號。診斷系統52包括軟件54、至少一個處理器56、 和存儲器62。診斷系統產生輸出132,諸如溫度曲線和4W信號。熱診斷 軟件54可以包括用于產生目標系統50內的熱和氣流的模型58的熱分析軟 件和固件。模型58可以基于流體網絡建模或者其它已知的熱診斷技術。傳 熱模型58考慮了系統布局238,其可以包括傳熱參數、氣流M和發熱元 件72的其它參數,并將這些參數相關聯。用來產生傳熱模型58的數據可 以通過用戶外圍設備,諸如鍵盤、定點設備、或者LCD顯示器來輸入。
診斷系統52接收并處理來自溫度傳感器74的溫度信號,以便計算在輸出132中所包括的"實際溫度曲線"68.實際溫度曲線68是一個數據組, 其包括可以由在每個節點或者在每個節點內的溫度傳感器(TS)感知的實 際溫度(Ta)和位置/節點信息。可選地,實際溫度曲線68可以可視地表 示為數據的圖表、曲線、表單,或者其它可視的表示形式。實際溫度曲線 68還可以存儲在存儲器62中,用于診斷系統52將來的處理。診斷系統52 還處理模型58,以^(更輸出一個對應的"預測溫度曲線"70。預測溫度曲線 70是一個數據組,其包括對應于溫度傳感器74的預測溫度(Tp )和位置/ 節點信息。因而,預測溫度曲線70是對應到所述服務器或者目標系統50 的其它節點的溫度的預測值。可將(多個)實際溫度曲線68與預測溫度曲 線70進行比較,以探測諸如氣流異常這樣的錯誤。因為氣流異常的探測典 型地包括實際溫度與預測溫度的比較,所以由溫度傳感器感知的實際溫度 和由該模型預測的預計溫度之差是氣流異常探測中 一個重要的因素。
實際和預測溫度的比較可以以各種方式來實施。例如,根據一種方法, 將目標系統50按照不存在氣流異常的假設建立模型。這個假設構成一個假 想的基礎,該假想是通過比較實際溫度曲線68和預測溫度曲線70來檢驗 的。如果實際和預測溫度之差小,那么沒有氣流異常的假想很可能是正確 的。然而,大的差別表明可能存在潛在的氣流異常。因而,可以設置診斷 系統52產生一個信號,諸如警報信號,在溫度查超出預定點時指示氣流異 常。根據另一種方法,目標系統50可以按照存在氣流異常的假設建立模型。 這個假設構成了另一個假想的基礎,該假想也是通過比較實際溫度曲線68 和預測溫度曲線70來檢驗的。然而,對這種情況,如果實際和預測溫度之 間的偏差小,那么氣流異常很可能存在。因此,如果該偏差小于預定點, 計算機52就可以產生一個指示氣流異常的信號。根據又一種方法,診斷系 統50可以建立多個假想的氣流異常的模型,并對每個假想的氣流異常比較 實際溫度曲線68和預測溫度曲線70。于是,診斷系統50可以選擇預測溫 度曲線70與實際溫度曲線68最匹配的那個假想的氣流異常。這些方法僅 是一些例子。這些探測熱異常的方法中的每一種都包括在實際和預測溫度 之間進行比較。
因氣流異常引起的負面的發熱效應,諸如圖2和3中所示的那些異常, 在增加處理器負載的情形下將更為顯著。這是因為元件在越大的負載下運 行得越熱,并且氣流異常的存在可以阻礙更高溫度下的該元件的適當的冷 卻。然而,因氣流異常引起的任何效應在服務器暫時處于低處理器負栽時 可能是可忽略不計的。這是因為該服務器可以變得足夠冷,以至不需要氣 流,或者至少一點不受氣流變化的影響。因此,本發明提供的方法增加處 理器負載以放大因氣流異常引起的任何效應,以更可靠地探測氣流異常。 圖5進一步示出了這個原理。
圖5是在不同的負載條件下的假想的計算機系統的四個溫度曲線81-84的曲線圖。在這個例子中,該假想的計算機系統是一個具有服務器陣列 的機架服務器系統。這四個溫度曲線81-84表示沿與封罩的前面平行、將 這排服務器平分的平面的溫度分布。左邊界和右邊界86和88與封罩的左 邊和右邊重合。溫度曲線81描繪的是在低處理器負載下的服務器溫度的性 質,假設沒有氣流異常。溫度曲線82描繪的是在同樣低處理器負栽下的服 務器溫度的性質,但是加上了溫度曲線81不具有的氣流異常。對溫度曲線 81、 82的比較解釋了氣流異常在低處理器負載下其效果可忽略不計。兩個 溫度曲線81、 82之間的溫度差分dTl是可忽略不計的,因為該溫度在低 處理器負載下不受氣流異常明顯的影響。溫度差分dTl足夠小,以至于對 低處理器負載下的該系統實施熱診斷不可能可靠地探測氣流異常是否存 在。
溫度曲線83、 84解釋了在較高處理器負載期間氣流異常產生的更顯著 的效果。預測溫度曲線83是假設在較高處理器負栽下沒有氣流異常時產生 的。溫度曲線84描繪了在與曲線83同樣高的處理器負載下的實際溫度的 曲線,并附加了溫度曲線82所反映的同樣的氣流異常。較高處理器負載溫 度曲線83、 84這兩者顯著地高于低處理器負載溫度曲線81、 82,因為服 務器在更高的負載下運行導致它們更熱。溫度曲線84顯著地高于溫度曲線 83,因為因處理器負栽的增加而產生的更高的溫度放大了氣流異常的效果。 在貫穿整個系統的M置,兩個高處理器負載溫度曲線83、 84之間的溫度
差分dT2比兩個低處理器負載溫度曲線81、 82之間的可忽略不計的溫度 差分dTl都要大很多。這個曲線圖解釋了在較高處理器負載下氣流異常產 生的更顯著的溫度效果。
因為氣流異常在較高處理器負載下產生更顯著的差別,所以氣流異常 在較高處理器負載下更可探測,如在結合圖4的診斷系統時所討論的一樣。 若干其它因素也影響診斷系統是否可以可靠地辨別氣流異常的影響。 一個 這樣的因素是用來感知系統中實際溫度的溫度傳感器的分辯率或者說"噪 音預算(noise budget)",例如,具有誤差在+/-1°的溫度傳感器沒有足夠 有效的分辯率支持"實際溫度僅僅增加幾度是因為氣流異常而產生的"這 一結論,甚至在該模型預測類似的溫度增加可能是因氣流異常而產生時也 不能證明該結論。另 一個影響診斷系統探測氣流異常的能力的因素是使用 熱診斷模型預測溫度固有的誤差的程度。指示溫度少量增加的熱診斷結果 對所探測的氣流異常在系統中實際是否存在可能是非決定性的。預測在該計算化的模型中有較大溫差的熱診斷結果典型地是在實際系統中氣流異 常存在與否的更為可靠的指標。其它因素,諸如模型參數的不確定性(例 如元件氣流阻抗、風扇性能特征、相對于對CPU的利用的功率消耗)和 測量不確定性(例如風扇速度、溫度讀數)可以對用作熱診斷中的變量的 實際或者預測溫度中的誤差產生貢獻。
根據本發明,可將處理器負載以各種方式增加。 一種增加處理器負載 的方式包括使用將處理器負載從一個節點移到另一個節點的工作負載遷 移。圖6是用于解釋在假想的九服務器系統中將處理器負載從一個服務器 移到另一個服務器的采用工作負載遷移的圖表。該圖表的水平軸用數字從 l標到9,每個數字指明機架封罩內的九個服務器之一。縱軸表示"利用百 分比",這是加在每個服務器上的處理器負載的一個方便的量度。該圖表 的每個條塊代表在某一特定的服務器上的處理器負載。服務器5、 7和8 工作在較高的處理器負載下,這通常是因為一個或者多個處理正在服務器 5、 7和8上運行。服務器l、 3和6工作在低處理器負載下,這可能;Ol 務器1、 3和6運行著更低或者更小強度的處理,或者只不過是接通電源后
14"閑置"著。
為獲得更高穩定狀態的溫度而增加服務器1、3和6上的處理器負載將 選擇性地放大將要通過熱診斷來探測的任何氣流異常的效果。例如,通過將一些處理從高負載服務器5移到目標服務器1而將處理器負載的相當大 的部分92從服務器5轉移到服務器1。處理器負載從服務器5到服務器1的這個遷移增加了服務器1上的處理器負載,放大了可能存在于服務器1上的任何氣流異常的效果。為了監視和探測可能影響服務器5的任何氣流異常,在服務器5上可以保留足夠的負載。所希望的是,計算機系統上的凈能量消耗和總處理器利用可以保持基本相同,因為只是將現有的處理從服務器5移到服務器1上。
另一種增加處理器負載的方法是將人為負載(artificial load)加到計算機系統的節點上。"人為負載"典型地由為增加處理器負載而產生的一個或者多個處理構成。除了作為副產品的熱量的產生之外,人為負栽的任 何計算結果通常并不重要。還有,可以運行那些產生有用結果的低優先級 的處理,以增加所需的處理器負載。圖7是用于解釋在不同的處理器負載 條件下在服務器1上強加人為工作負載95的圖表。在強加該人為工作負栽 之前,所有的服務器l-9最初可能處于較冷溫度下的閑置狀態,這是由于 每個服務器上的處理器負載較低。結果,在該系統別處沒有足夠的處理器 負載可將處理器負載移到服務器1上。將人為工作負載95加在服務器1 -9上,以方便探測影響服務器1的氣流異常。人為負栽可以是,例如在服 務器1上實施的無限循環。人為負載有利于對可通過增加服務器1的溫度 而影響服務器1的任何氣流異常的探測。可將人為負載置于在低負載下工 作的任何一個特定的服務器上,而不管其它的服務器是否具有足夠的負載 能夠進行負載遷移。 一旦分析完成,就能夠將人為負載從該服務器上消除, 并且可選地將其移到另一個服務器上,如果需要的話。必要時,可將多個情況的人為負載同時施加到多個服務器上,以提高實施整個系統熱診斷的速度。
本發明還包括各種方法用于確定為有利于熱診斷而將處理器負載增
加多少。根據一種方法,可將處理器負載自動地增加到預定級別。例如,
可將服務器1上的處理器負載自動增加到大約100 %(處理器滿負荷使用), 如97所示。在服務器1上執行無限循環是有可能將服務器1上的服務器負 載提高到大約100%的一種方法。在滿負荷處理器利用率狀態下運行服務 器1一般將更快地增加溫度。在滿負荷處理器利用率下運行服務器1一般 還將產生最熱的溫度,因而使氣流異常的效果達到最大。然而,以最大容 量運行服務器1也可能造成在診斷期間過熱的危險性增加。
為了減少潛在的過熱的任何危險性,另一個選擇是,可將服務器l上 的處理器負載增加到一個小于滿負荷處理器利用率但是仍然大到足以有 利于進行任何氣流異常的可靠的探測的預定量。例如,可將服務器l上的 處理器負載增加到大約60%處理器利用率,如99所標出的。 一般來說, 在一個節點上加至少40%的處理器利用率并且使得達到穩定狀態的溫度 對可能影響該節點的熱異常的探測是充分的。與在滿負荷處理器利用率狀 態下運行一個節點相比,加少于100%的處理器負栽還可以提供能量節約。
另一種方法是估計為產生因存在氣流異常而引起的可測量的溫度差 所需的最小處理器負載。這種方法可以在為了優化計算^/L系統的能量效率 和性能時選擇,對處理器負載的增加不超過為可靠探測任何氣流異常所必 需的水平。例如,為了檢驗所選氣流異常,可將該系統針對各種處理器負 載建立具有所選氣流異常和沒有所選氣流異常的模型。如果因該氣流異常 造成的預測溫度增加實質上不大于計算機系統中的溫度傳感器的分辯率, 那么可將該模型中的處理器負載增加到一個級別,在該級別,因氣流異常 造成的預測溫度差超過溫度傳感器的分辯率。另一個選擇是,可以基于高 斯噪音模型來估計最小處理器負載。例如,在預測溫度差小于噪音預算的 兩個標準偏差時,增加輸入到該模型中的處理器負載。然后就可以增加處 理器負載直到達到一個穩定狀態的溫度為止,在該狀態下,預測溫度差至 少是噪音預算的兩個標準偏差。在另一個例子中,可將模擬溫度傳感器饋 入8位模擬-數字轉換器,其一部分的分辯率為256分之一,并且因此需要 該溫度差大于溫度傳感器范圍的1/256。決定在給定的節點上是否以及怎樣增加實際的處理器負栽的其它客觀標準也在本發明的范圍內。
圖8是用于大致地概括根據本發明的、用于對計算機系統實施熱診斷 的方法的一個實施例的流程圖。該流程圖提供了該實施例的概略,并且反 映了參照其它附圖所討論的許多構思,但是并不是提供了能夠才艮據本發明 來實施的所有步驟和變化的全部的清單。在步驟100中,選擇一個系統來 進行檢查,也就是實施熱診斷。這里,該系統是多節點計算機系統,盡管 本發明可以在具有如單個節點這么少的計算機系統上實現。在步驟102中, 根據熱診斷技術諸如流體網絡建模產生該系統的熱模型。該熱模型可以考 慮該系統的布局,包括該系統的元件和配置的單獨的熱和氣流性質。該熱 模型將各種系統元件互相關連,并且可以接收和解釋來自多個傳感器的輸
入,這些傳感器包括在整個系統的各個已知位置所設的溫度傳感器。在步 驟104中,選擇一個或者多個目標節點。所述(多個)目標節點是氣流異 常可能對其具有負面影響的系統元件。例如,目標節點可以是J3良務器,并 且在該服務器下面的被遮通風口是氣流異常的一個潛在的原因,其可能使 得所選服務器在較高處理器負載下過熱。
條件步驟106確定處理器負載對于氣流異常的可靠的探測是否太低。 處理器負栽可能是"低的",如果其不足以探測氣流異常。如果處理器負 載是低的,那么條件步驟108確定是否在別的節點有足夠的負載能夠將工 作負栽移到目標節點上。如果在別的節點有足夠的負載可用,那么在步驟 110可將負栽以一個或者多個處理的形式移到目標節點。如果在別的節點 沒有足夠的負載可用,那么在步驟112產生人為負載并將其加在目標節點 上。在步驟114中,保持目標節點上增加的負載一一無論是來自步驟110 的工作負載遷移、來自步驟112產生的人為負載還是來自于這兩者一一直 到溫度達到基本穩定狀態的值為止。
因處理器負載的增加,根據各種技術諸如流體網絡建模,熱診斷就能 夠更可靠地實施。步驟116至124以舉例的方式而非限制地概括了一種用 于探測在較高處理器負栽下的熱異常的方法。在步驟116中,測量實際溫 度曲線。實際溫度曲線可以包括該系統中的一個或者多個溫度。在步驟118中,從該模型中計算出預測溫度曲線。預測溫度曲線可以包含一個或者多
個溫度值。在步驟120中,可將實際和預測溫度值這兩者都映射到所述系 統進行比較。如果在條件步驟122中探測到氣流異常,那么在步驟124中 產生一個信號。該信號可以警告用戶在該系統中可能存在氣流異常,以及 關于該氣流異常的任何細節。
應該意識到,本發明可以采取包括軟件的實施例的形式來實現。軟件 的非限定性的例子包括固件、駐留軟件和微代碼。更一般地,本發明能夠 采取計算機程序產品的形式來實現,可從計算機可讀介質可訪問該計算機 程序產品,該計算機程序產品提供了可供計算機或者任何指令執行系統使 用或者與計算機或者任何指令執行系統相關聯地使用的程序代碼。為了本 說明書,計算機可用或者計算機可讀介質能夠是能夠包含、存儲、交流、 傳播或者傳輸可供該指令執行系統、裝置或者設備使用或者與^目關聯的 該程序的任何裝置。
該介質能夠是電的、磁的、光的、電磁的、紅外的、或者半導體系統 (或者裝置或者設備)或者傳播介質。計算機可讀介質的例子包括半導體 或者固態存儲器、磁帶、可移除的計算機盤、隨M取存儲器(RAM)、 只讀存儲器(ROM)、剛性磁盤和光盤。光盤的當前的例子包括只讀緊致 盤存儲器CD-ROM 、可讀寫緊致盤CD-R/W和DVD。
線與存儲器元件直接或者間接耦合的至少一個處理器。該存儲器元件能夠 包括在實際的程序代碼執行期間所采用的本地存儲器、大容量存儲器、和 為了減少在執行期間必須從大容量存儲器中提取的代碼的次數而提供至 少 一些程序代碼的臨時存儲的高速緩沖存儲器。
可將輸入/輸出(1/0)設備正如鍵盤、顯示器、或者定點設備或者直 接地或者通過中間1/0控制器耦合到所述系統中。還可以使用網絡適配器 諸如通過中間私人或者公共網絡來將數據處理系統耦合到其它數據處理 系統或者遠程打印機或者存儲i殳備。調制解調器、電纜調制解調器、以太 網卡、和無線網絡適配器是網絡適配器的例子。
圖9是用以解釋可設置為對計算機系統建立熱模型并探測計算機系統 中的氣流異常的計算機220的示意圖。計算機220可以是包括了要進行熱 診斷的計算機系統的服務器或者子系統。通常,計算機系統220包括處理 單元221、系統存儲器222、和將包括系統存儲器222在內的各種系統元件 耦合到處理單元221的系統總線223。系統總線223可以是若千類型的總 線結構中任何一種,包括存儲器總線或者存儲器控制器、外圍設備總線、 和使用各種總線構架中任何一種的本地總線。該系統存儲器包括只讀存儲 器(ROM )224和隨M料儲器(RAM )225。基本輸"輸出系統(BIOS ) 226存儲在ROM 224中,包含基;^由,用于在諸如開始期間在計算機系 統220內的各元件之間傳遞信息。
計算機系統220還包括用于從硬盤227讀取并寫入其中的硬盤驅動器 235、用于從可移除的磁盤229讀取并寫入其中的磁盤驅動器228、和用于 從可移除的光盤231,諸如CD-R、 CD-RW、 DV-R、或者DV-RW讀取并 寫入其中的光盤驅動器230。硬盤驅動器235、磁盤驅動器228、和光盤驅 動器230分別通過硬盤驅動器接口 232、磁盤驅動器接口 233、和光盤驅動 器接口 234連接到系統總線223。盡管這里所描述的示例性環境采用硬盤 227、可移除的磁盤229、和可移除的光盤231,但是本領域技術人員應該 理解,其它類型的能夠存儲計算機可訪問的數據的計算機可讀介質,諸如 磁帶盒、閃存卡、數字視頻盤、Bernouilli磁帶、RAM、 ROM、 USB驅 動器等也可以用在該示例性的工作環境中。驅動器和它們相關的計算機可 讀介質提供計算機可執行的指令、數據結構、程序模塊、和其它的用于計 算機系統220的數據的非易失性存儲。例如,可將操作系統240和應用程 序236存儲在計算機系統220的RAM 225和/或石更盤227中。
用戶可以通過輸入設備,諸如鍵盤255和鼠標242將命令和信息輸到 計算機系統220。其它的輸入設備(未示出)可以包括麥克風、操縱桿、 游戲襯墊(game pad )、觸摸墊、盤式衛星天線、掃描儀等。這些和其它 的輸入設備往往通過耦合到系統總線223的USB (通用串行總線)246連 接到處理單元222,但是可以通過其他的接口,諸如串行端接口、并行端口、游戲端口等連接。顯示設備247也可以通過接口,諸如視頻適配器248 連接到系統總線223。除了監視器之外,個人計算機一般包括其它外圍輸 出設備(未示出),諸如揚聲器和打印機。
計算機系統220可以在網絡環境中工作,使用連接到 一個或者多個遠 程計算機249的邏輯連接。遠程計算機249可以是另外的個人計算機、服 務器、客戶端、路由器、網絡PC、對等設備、主機、個人數字助理、聯 網移動電話或者其它的公共網絡節點。盡管遠程計算機249典型地包括如 上訴述關于計算機系統220的一些或者全部元件,但在圖9中僅僅示出了 一個存設備250。圖中所繪的邏輯連接包括局域網(LAN) 251和廣域 網(WAN) 252。這種網絡環境在辦公室、企業范圍的計算機網絡、企業 內部互聯網和因特網是普遍的。
當用于LAN網絡環境中的時候,計算機系統220往往通過網M口 或者適配器253連接到局域網251。當用于WAN網絡環境中的時候,計 算機系統220典型地包括調制解調器254或者其它用于在諸如因特網的 WAN 252上建立高速通信的裝置。調制解調器254可以是內置的或者外置 的,通過USB接口 246連接到系統總線223。在網絡環境中,可將相對于 計算機系統220描述的程序模塊或者其部分存儲在遠程存儲器設備250中。 可以理解,所示的網絡連接是示例性的,可以使用用于在計算機之間建立 通信連接的其它裝置。
可將程序模塊存儲在硬盤227、光盤231、 ROM 224、 RAM 225、甚 至磁盤229上。程序模塊可以包括操作系統240、應用程序236等的幾個 部分。系統拓樸數據庫238包含要建立熱模型的計算機系統的M。還可 以包括熱異常數據庫239,該數據庫包含與可能出現在計算機系統220內 的多個假想熱異常有關的信息。在應用的一個例子中,計算機系統220可 以從熱異常數據庫建立多個情境模型,并將它們與實際溫度數據進行比 較,以確定該情境中的哪個,如果有的話,與實際溫度數據最接近。
本發明的一些方面可以以應用程序236的形式來實現。應用程序236 從系統拓樸數據庫238和/或熱異常數據庫239獲得信息或者與之關聯。應用程序236通常包括計算機可執行指令,用于實施熱診斷,尤其是,才艮據 本發明用于選擇性地增加處理器負載并探測熱異常。
這里的權利要求書和說明書中使用的術語"包含"、"包括,,和"具有" 應該認為是表示一個可以包括未指出的其它元件的開放組。單詞的單數形 式應該包括同 一單詞的復數形式,以使該術語表示提供一個或者多個事物 的意思。術語"一個"或者"單個"可用來表示所要表達的是一個或者僅 僅一個事物。類似地,其它特定的整數值,諸如"兩個"可以在需要特定 數量事情的時候使用。術語"優選""、優選的"、"最好"、"可選地"、"可 以"以及類似的術語用來表示所提及的項目、條件或者步驟是本發明可選 的(不是必需的)特征。
盡管本發明已經相對于有限的實施例進行了描述,但是本領域技術人 員在公開內容的教導下會理解,能夠設計出其它的不違背這里所公開的本 發明的范圍的實施例。因而,本發明的范圍僅受所附權利要求書的限制。
權利要求
1.一種用于探測氣流異常的方法,包括操作具有一個或者多個節點的計算機系統;選擇性地將一個選中節點的處理器負載增加到足以使氣流異常在該選中節點會產生可探測到的溫度差的級別;在增加的處理器負載的狀態下探測該選中節點的溫度;通過對在該增加的處理器負載下的該計算機系統建立熱模型來預測該選中節點的溫度;以及比較該預測溫度和該探測溫度,以探測該氣流異常是否存在。
2. 如權利要求l所述的方法,還包括 對該計算機系統建立假設存在氣流異常的熱模型; 計算該預測和探測溫度之差;并且響應于小于預定溫度差的設定值的該計算的差而產生發溪信號。
3. 如權利要求l所述的方法,還包括 對該計算機系統建立假設不存在氣流異常的熱模型; 計算該預測和探測溫度之差;并且響應于大約預定溫度差的設定值的該計算的差而產生錯誤信號。
4. 如權利要求l所述的方法,其中增加該選中節點的處理器負載包括 將正在另一個節點上運行的一個或者多個處理移到該選中節點。
5. 如權利要求l所述的方法,其中增加該選中節點的處理器負載包括 將人為負栽加在該選中節點上。
6. 如權利要求5所述的方法,其中該附加的負載從包含無限循環、大 量使用CPU的內診斷工作負栽、和對存儲器進行一組連續的讀寫的大量 使用CPU存儲器總線的工作負載的組中選擇。
7. 如權利要求l所述的方法,其中處理器負載增加到的該級別是滿負 荷處理器利用率的一個預定百分比。
8. 如權利要求7所述的方法,其中該預定百分比在大約40%到100%之間。
9. 如權利要求l所述的方法,還包括將該選中節點的處理器負載增加 到一定級別,使因該氣流異常引起的溫度差超過用于探測該選中節點的溫 度的溫度傳感器的分辨率。
10. 如權利要求9所述的方法,其中將該選中節點的該處理器負載增 加到一定級別,使因該氣流異常引起的溫度差是用于探測該選中節點的溫 度的溫度傳感器的分辨率的至少兩倍。
11. 如權利要求l所述的方法,其中增加該選中節點上的工作負載包 括在該選中節點上執行無限循環。
12. 如權利要求l所述的方法,還包括在探測該氣流異常的存在時保持該增加的處理器負載下的基本穩定 狀態。
13. 如權利要求l所述的方法,其中該氣流異常包括流動阻塞。
14. 一種用于探測氣流異常的系統,包括用于在計算機系統內建立加 熱和氣流模式的熱模型的裝置,該系統還包括用于在計算機系統的一個或者多個節點上實施操作的裝置; 用于選擇性地將選中節點的處理器負載增加到足以使氣流異常在該選中節點會產生可探測到的溫度差的級別;用于接收代表該選中節點在該增加的處理器負載下的實際溫度的信號的裝置;用于通過對在該增加的處理器負載下的該計算機系統建立熱模型來 預測該選中節點的溫度的裝置;和用于計算該預測溫度和該探測溫度之差來探測該氣流異常是否存在 的裝置。
15. 如權利要求14所述的系統,其中該用于選擇性地增加該選中節點 的處理器負載的裝置包括用于將在另一個節點運行的一個或者多個處理 移到該選中節點的裝置。
16. 如權利要求14所述的系統,其中該用于增加該選中節點的處理器負載的裝置包括用于將人為負載加在該選中節點上的裝置。
17. 如權利要求14所述的系統,其中該用于增加該選中節點的處理器 負栽的裝置包括用于將在另一個節點運行的一個或者多個處理移到該選 中節點的裝置。
18. 如權利要求14所述的系統,其中該用于增加該選中節點的處理器 負載的裝置包括用于將人為負載加在該選中節點上的裝置。
19. 如權利要求14所述的系統,其中該增加的負載從包含無P艮循環、 大量使用CPU的內診斷工作負載和對存儲器進行一組連續的讀寫的大量 使用CPU存儲器總線的工作負載的組中選擇。
20. 如權利要求14所述的系統,其中該處理器負載增加到的該級別是 滿負荷處理器利用率的一個預定百分比。
全文摘要
本發明提供了用于檢測電子設備中氣流異常的方法和系統。具體說,將處理器負載選擇性地增加,以放大因可能存在于計算機系統內的氣流異常產生的效果。可以使用工作負載遷移將處理器負載從另一個節點移到目標節點。還可以在目標節點上產生人為負載。處理器負載增加到足以使氣流異常會在選中節點產生可探測的溫度差的級別。可將處理器負載增加一個經過計算以產生這個可探測的溫度差的量。或者,可將處理器負載增加滿負荷處理器利用率的40%到100%之間的一個預定量。在增加的處理器負載下,可將由溫度傳感器感知的實際溫度與從該模型預測的溫度進行比較,以探測氣流異常的存在與否。
文檔編號G06F1/20GK101206515SQ20071018663
公開日2008年6月25日 申請日期2007年11月14日 優先權日2006年12月19日
發明者A·B·達爾頓, R·E·哈珀, W·J·皮亞扎 申請人:國際商業機器公司