專利名稱:用于管理計算環(huán)境中的能量消耗的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及管理計算環(huán)境,以及更具體地,涉及一種管理計算環(huán)境(例如集 群、網(wǎng)格或按需式中心)內(nèi)的能量消耗的系統(tǒng)和方法。
背景技術(shù):
管理計算環(huán)境(諸如網(wǎng)格、集群場或按需式服務(wù)器)中的資源的消耗是一個復(fù)雜 和挑戰(zhàn)性的過程。網(wǎng)格計算可以被定義為動態(tài)、多機構(gòu)合作中的協(xié)調(diào)資源共享和問題解 決。很多計算項目需要比單個計算機可以提供的多得多的計算能力和資源??赡苄枰獏f(xié) 調(diào)并采用具有外圍資源(諸如打印機、掃描儀、I/O設(shè)備、存儲磁盤、科學設(shè)備和儀器等 等)的網(wǎng)絡(luò)計算機來完成工作。術(shù)語計算資源一般是指計算機處理器、存儲器、網(wǎng)絡(luò)帶 寬以及這些外圍資源中的任意一種。運算場(computer farm)可以包括協(xié)調(diào)處理因特網(wǎng)流
量的這種用途的多個計算機。例如,網(wǎng)頁搜索網(wǎng)站Google 使用運算場來處理其網(wǎng)絡(luò)流 量和因特網(wǎng)搜索。網(wǎng)格/集群資源管理通常描述識別要求、匹配資源到應(yīng)用、分配那些資源、以 及隨著時間變化(overtime)調(diào)度并監(jiān)視網(wǎng)格資源以盡可能有效地運行網(wǎng)格應(yīng)用或提交到 計算環(huán)境的作業(yè)的過程。每個項目或作業(yè)利用不同組的資源以及從而通常是唯一的。例 如,一個作業(yè)可以利用計算機處理器和磁盤空間,而另一作業(yè)可以要求大量網(wǎng)絡(luò)帶寬和 特定的操作系統(tǒng)。在為特定的作業(yè)或資源請求分配資源的挑戰(zhàn)之外,管理員還可能難以 獲得對可用資源、計算環(huán)境和可用資源的當前狀態(tài)以及各個用戶的實時競爭需求的清楚理解。該過程的一個方面是為作業(yè)保留資源的能力。集群管理器旨在保留一組資源以使 集群能夠以承諾的服務(wù)質(zhì)量處理作業(yè)??梢栽诙鄠€公開中找到有關(guān)集群和網(wǎng)格的一般背景信息。例如,見“M Resource Management, State of the Art and Future Trends”,Jarek Nabrzyski, Jennifer M.Schopf, Jan Weglarz, Kluwer學術(shù)出版社,2004 ;以及麻省理工學院的William Gropp, Ewing Lusk, Thomas Sterling 干 2003 年編輯的"Beowulf Cluster Computing withLinux”。雖然術(shù)語網(wǎng)格和集群具有不同的含義,但在本文中一般理解它們是可互換的。 例如,當網(wǎng)格被稱為用于接收對資源的請求以及以特定的方式處理該請求,相同的方法 也可以用于諸如集群、按需式中心或運算場的其它計算環(huán)境。集群通常被定義為用于完 成一個工作或一組工作而組織的計算節(jié)點的集合。通常,一個網(wǎng)格包括多個集群,如圖 1所示。當嘗試在網(wǎng)格中最大化資源時,將出現(xiàn)多個常見的挑戰(zhàn)。首先,通常有多層網(wǎng) 格和集群調(diào)度器。網(wǎng)格100通常包括一群集群或一群網(wǎng)絡(luò)計算機。網(wǎng)格的定義是非常靈 活的,以及可以意味著多個不同配置的計算機。這里,介紹意思是通常給出可能的多種 配置。網(wǎng)格調(diào)度器102與多個集群調(diào)度器104A、104B和104C進行通信。這些集群調(diào) 度器中的每一個與各自的資源管理器106A、106B或106C進行通信。每個資源管理器與 各自一系列的計算資源進行通信,如示出的集群110中的節(jié)點108A、108B、108C,集群 112 中的節(jié)點 108D、108E、108F 和集群 114 中的節(jié)點 108G、108H、1081。本地調(diào)度器(可以指的是集群調(diào)度器104或資源管理器106)與特定資源108更 近以及可以不允許網(wǎng)格調(diào)度器102直接訪問該資源。網(wǎng)格級調(diào)度器102通常不具有或控 制實際的資源。因此,作業(yè)被從高級別網(wǎng)格調(diào)度器102提交到只有用戶具有許可權(quán)限的 一組本地資源。這就降低了效率,并且使資源保留過程更加困難。共享計算資源的異類性也可導(dǎo)致效率的降低。沒有到資源的專門訪問,則網(wǎng) 格級調(diào)度器102面臨著在可用于使用的資源的能力方面的高度不一致和不可預(yù)知性的挑 戰(zhàn)。大部分資源在用戶和項目之間共享,并且每個項目互不相同。項目的性能目標不 同。網(wǎng)格資源用于提高應(yīng)用程序的性能,但是資源所有者和使用者有不同的性能目標, 從優(yōu)化單個應(yīng)用程序的性能到獲得最佳系統(tǒng)吞吐量或最小化響應(yīng)時間。本地政策也可以 在性能上發(fā)揮作用。隨著按需式中心和新的因特網(wǎng)服務(wù)(諸如額外的音樂下載和視頻點播以及因特 網(wǎng)電話)的使用的增多,因特網(wǎng)內(nèi)使用的服務(wù)器和節(jié)點的數(shù)量將繼續(xù)增加。由于在按需 式中心、網(wǎng)格、集群等等中服務(wù)器數(shù)量的增加,這樣的服務(wù)器的用電量也將提高。通過 組合安裝的數(shù)據(jù)庫上的數(shù)據(jù)內(nèi)的測量數(shù)據(jù)與大多數(shù)常用服務(wù)器使用的功率的估算,已經(jīng) 對美國和世界的服務(wù)器的整體用電量進行了估算。與以前的估算相比,很多近些年的估 算已經(jīng)是基于更加詳細的數(shù)據(jù)。政策制定者和企業(yè)都開始注意到并試圖解決行業(yè)中的這 些問題。在美國和世界范圍內(nèi),服務(wù)器的總用電從2000年至2005年期間已經(jīng)翻番。這種 增長大部分是便宜的服務(wù)器的數(shù)量增長的結(jié)果,該增長只有一小部分是由于單位功率使 用的增長造成的。例如,2005年,服務(wù)器使用的總功率相當于美國總電力消耗的0.6%。 然而,當包含冷卻輔助基礎(chǔ)結(jié)構(gòu)時,該數(shù)字增長到1.2%,這個數(shù)字是與電視耗電量可比的量。2005年的總功率需求(包含相關(guān)的基礎(chǔ)結(jié)構(gòu))對于美國相當于大約五個1000MW 發(fā)電廠以及對于世界相當于14個這樣的發(fā)電廠。2005年,運行這些服務(wù)器和相關(guān)基礎(chǔ)結(jié) 構(gòu)的總電費對于美國為大約27億美元,對于世界約為72億美元。因此,本領(lǐng)域需要一 種改進的機制來管理計算環(huán)境(諸如集群和網(wǎng)格或類似配置的那些計算環(huán)境)中的功耗。
發(fā)明內(nèi)容
將在以下的描述中說明本發(fā)明的其他特征和優(yōu)點,并且部分特征和優(yōu)點根據(jù)描 述是顯而易見的,或者可以通過本發(fā)明的實踐來學習??梢酝ㄟ^在所附權(quán)利要求中具體 指出的裝置和組合來實現(xiàn)并獲得本發(fā)明的特征和優(yōu)點。通過以下描述和所附權(quán)利要求, 本發(fā)明的這些和其他特征將變得更加顯而易見,或者可以通過本文中所述的本發(fā)明的實
踐來學習。本發(fā)明涉及用于管理計算資源的使用和消耗、計算環(huán)境(諸如網(wǎng)格或集群)內(nèi)的 保留和/或作業(yè)以降低功耗的系統(tǒng)、方法和計算機可讀介質(zhì)。一個實施例是根據(jù)本文中 所公開的理論運行作業(yè)的計算環(huán)境本身。本發(fā)明解決了高性能計算方面中的功耗問題。本發(fā)明的方面能夠?qū)崿F(xiàn)直接(計 算節(jié)點)和間接(冷卻裝置、支持服務(wù)器等等)兩者功耗的降低,而同時維持完整的集群 性能和基于合格的服務(wù)級別協(xié)議(SLA)的集群性能。應(yīng)該能夠以對終端用戶和工作負載 都靈活和完全透明的方式實現(xiàn)基于這些理論操作的所有裝置。根據(jù)本文中提供的本公開的其他實現(xiàn)包括向管理員和管理者提供廣泛的報告和 制圖裝置,以使消費者或管理員理解正在如何使用計算環(huán)境以及在具體化的基礎(chǔ)上正在 如何消耗功率。并且,該系統(tǒng)能夠采取降低整體功耗的活動。退款機制還能夠允許成本 建模信息被路由回用于終端用戶和調(diào)度器兩者進行決定。在本文中公開有四個主要部分。首先,有監(jiān)視資源狀態(tài)的機制,具體地,監(jiān)視 功率和溫度的方面。其次,報告機制報告功率和溫度方面的狀態(tài)。然后,系統(tǒng)與功率管 理裝置連接,諸如能夠開啟或關(guān)閉節(jié)點或啟用睡眠狀態(tài)。最后,公開了提供能夠控制功 耗的智能政策。本發(fā)明的實施例包括用于實現(xiàn)改進的功耗的系統(tǒng),諸如運行與資源管理器和 其他裝置進行通信的工作負載管理軟件的服務(wù)器;用于提供改進的功耗的特定的方法; 高性能計算環(huán)境,諸如根據(jù)本文中公開的理論操作的集群網(wǎng)格或按需式中心;以及,在 計算機可讀介質(zhì)上存儲的工作負載管理軟件,控制單個或多個計算設(shè)備以能夠根據(jù)本文 中公開的理論實現(xiàn)改進的功耗。例如,工作負載管理軟件包括ClusterResources公司的 Moab 品牌產(chǎn)品。如上所述,可以覆蓋有本發(fā)明的多個實施例。然而,本發(fā)明的基本功能應(yīng)在方 法實施例方面進行討論。當然,該方法可以由操作工作負載管理軟件的單個服務(wù)器或多 個服務(wù)器在按需式環(huán)境中實現(xiàn),或者可以存儲在存儲指令的計算機可讀介質(zhì)上,所述指 令控制計算設(shè)備執(zhí)行多個功能以改進高性能計算環(huán)境中的功耗。有四個主要部分與高性能計算(HPC)中的改進的功耗有關(guān)。公開的是用于實現(xiàn) 環(huán)境中的一個或多個功耗活動的多種機制。由圖3所示。首先,系統(tǒng)304(諸如在與計 算環(huán)境通信的節(jié)點上運行的工作負載管理器)監(jiān)視302計算環(huán)境300中的資源狀態(tài)。這可以通過任意多種方式來完成。從根本上講,這種概念涉及監(jiān)視計算環(huán)境中的特定資源 使用的功率以及其溫度。從而,例如系統(tǒng)304監(jiān)視302集群中的特定節(jié)點的功耗及其溫 度,如下文所述在智能政策中利用該信息以控制并管理該特定節(jié)點的工作負載視圖的分 布和計時。然后,模塊被配置為報告306資源狀態(tài)。這還涉及關(guān)于對特定資源的功耗 和溫度有關(guān)的基本信息。報告方面涉及以特定的方式管理監(jiān)視的信息,以能夠?qū)崿F(xiàn)特定 特性的有用報告,在下文中將詳細描述。然后,另一部分是到功率管理裝置308的接口 312。這有助于工作負載管理軟件304能夠向功率管理中涉及的多個裝置提供指令(諸 如開啟或關(guān)閉節(jié)點)。最后,另一部分304涉及能夠使智能政策控制功耗312、310的機 制。智能政策優(yōu)選地結(jié)合工作負載管理軟件304操作,該工作負荷管理軟件304接收用 于資源保留的請求,并且管理作業(yè)310的接收和分配用于計算環(huán)境(諸如集群網(wǎng)格、按需 式中心、服務(wù)器場等)中的消耗。本文中公開的理論可以為任何計算環(huán)境提供大量節(jié)能優(yōu)勢。例如,本理論可以 通過使用傳統(tǒng)的工作負載打包(workload packing)和虛擬技術(shù)來最大化每瓦特服務(wù)器工作 負載以提高性能。這些理論利用每一個機會將未充分利用的服務(wù)器的工作負載整理到較 少的服務(wù)器上。另一優(yōu)勢是本理論可以將空閑服務(wù)器自動置于備用或睡眠模式,這可以 有助于降低那些服務(wù)器的50%的功耗。該系統(tǒng)甚至可以將這些空閑服務(wù)器完全關(guān)閉以甚 至更節(jié)能。在另一方面,工作負載管理器304移動工作負載以使得熱的服務(wù)器冷卻。這 種機制能夠?qū)崿F(xiàn)溫度感知工作負載調(diào)度并將工作負載從過熱的服務(wù)器移開,以使他們可 以自行冷卻以及從而降低對冷卻系統(tǒng)的需求。該系統(tǒng)可以通過使用收集溫度、節(jié)點利用 和能耗統(tǒng)計的工具將工作負載路由到最高能效的服務(wù)器。該系統(tǒng)可以將工作負載路由到 最高能效的資源以有助于實現(xiàn)盡可能高的消耗每瓦特的性能。另一優(yōu)勢是使系統(tǒng)能夠利 用非高峰時間,其通過當能量成本較低時在非高峰時間期間自動調(diào)度低優(yōu)先級的工作負 載進行處理,同時保證滿足QOS承諾。然后,另一優(yōu)勢是工作負載管理器304可以考慮 到啟動時間限制、數(shù)據(jù)傳輸時間、服務(wù)級別協(xié)議以及其他因素以最低能量率將工作負載 發(fā)送到位置。最后,本文中公開的理論的另一優(yōu)勢是根據(jù)這些理論操作的工作負載管理 器可以使用戶進行掌控并且提供提前跟蹤、現(xiàn)代訓練以及使一人能夠管理并為組織的能 量效率提供文件的報告能力,并實現(xiàn)綠色計算的目標。該系統(tǒng)還可以潛在地為用戶提供 跟蹤碳信用額或用于退款和報告目的的其他統(tǒng)計的能力。
為了說明可以獲得本發(fā)明的上述和其他特征和優(yōu)點的方式,將參照本發(fā)明的具 體的實施例提供以上簡要說明的本發(fā)明的更具體的描述,具體的實施例將在附圖中描 述。應(yīng)該理解的是,這些圖示只說明本發(fā)明的典型的實施例以及因此不應(yīng)被理解為限制 其范圍,將通過利用附圖以附加的特征和細節(jié)說明和解釋本發(fā)明,其中圖1 一般性地示出了與多個集群內(nèi)的計算節(jié)點相互作用的網(wǎng)格調(diào)度器、集群調(diào) 度器和資源管理器;圖2示出了一個系統(tǒng)實施例;圖3示出了綠色計算的基本部件;圖4示出了從一個管轄區(qū)域到另一管轄區(qū)域的遷移應(yīng)用;
圖5A示出了 一個方法實施例;圖5B示出了另一方法實施例;圖5C還示出了本發(fā)明的另一方法實施例;以及圖6示出了本公開的多個方面。
具體實施例方式以下詳細討論本發(fā)明的多個實施例。雖然討論了具體的實施方式,但是應(yīng)理解 的是這僅僅是用于說明的目的。相關(guān)領(lǐng)域的技術(shù)人員將理解的是在不脫離本發(fā)明的精神 和范圍下可以使用其他部件和配置。關(guān)于監(jiān)視資源狀態(tài)302 (功率、溫度等方面)的第一主要部分,模塊使用多資源 管理能力和本地接口(native interface)以采集信息的以下部分中的至少一個或多個。經(jīng)由 智能平臺管理接口(IPMI)或其他低級別接口的負載“每節(jié)點消耗瓦特”被收集。信息 的另一部分涉及經(jīng)由IPMI或其他低級別接口的負載“每節(jié)點CPU溫度”。而另一參數(shù) 涉及經(jīng)由系統(tǒng)網(wǎng)絡(luò)管理協(xié)議(SNMP)或其他低級別接口的非計算智能資源(包括冷卻裝 置、存儲系統(tǒng)、文件服務(wù)器和網(wǎng)絡(luò)交換機)的負載“消耗瓦特”。本領(lǐng)域技術(shù)人員將理 解其中由程序化或工作負載管理器中包含的軟件檢索并監(jiān)視數(shù)據(jù)的標準接口。然后,報告功率和功耗以及功率信息和溫度方面的資源狀態(tài)的概念包括以下方 面。多個報告能夠根據(jù)監(jiān)視的信息來生成。例如,生成作業(yè)報告,作業(yè)報告包括以下 特征(1)每作業(yè)的當前、最低、最高、平均和總功耗;(2)隨時間變化的每作業(yè)功耗; (3)由于消耗的千瓦時(kwh)產(chǎn)生的每作業(yè)美元(或任意貨幣單位)成本;以及(4)分 配資源的每作業(yè)平均溫度。當然,可以采用這些概念以及其他參數(shù)來提供關(guān)于基于逐個 作業(yè)的功耗的信息。在這方面,關(guān)于其特定作業(yè)的功耗、消耗的一定功率量方面的報告 可以返回特定作業(yè)的用戶或管理員。工作負載管理器304可以采用該信息來分析多個信 息,以作出關(guān)于如何將該作業(yè)提交到計算環(huán)境中用于消耗的智能決定。例如,該報告可 以提供作業(yè)的能量消耗與作業(yè)如被以不同方式處理或被在不同位置處理之間的對比。如 果存在多個操作性目標,諸如最低的整體成本或主動冷卻的最低使用,報告可以包括用 于優(yōu)化每個操作性目標的多個建議的配置以及混合每個操作性目標的建議的最優(yōu)配置。然后,還可以提供作業(yè)模板報告。作業(yè)模板報告可以提供以下參數(shù)的信息(1) 每作業(yè)的當前、最低、最高、平均和總功耗;(2)隨時間變化的每作業(yè)功耗;(3)由于消 耗的KWH產(chǎn)生的每作業(yè)美元(或其他貨幣值)成本;(4)分配資源的每作業(yè)平均溫度; (5)每節(jié)點每作業(yè)的應(yīng)用性能;(6)每節(jié)點每作業(yè)功耗;以及(7)每瓦特每節(jié)點每作業(yè)最 有效應(yīng)用性能。來自作業(yè)模板報告的這種信息可以提供關(guān)于特定應(yīng)用(軟件應(yīng)用、操作 系統(tǒng)等等)的性能的其他細節(jié)以及對于具體作業(yè)的基于每節(jié)點的功耗的更詳細的分析。 還可以采用這種信息用于改進工作負載的分配,以改進功耗而同時維持根據(jù)SLA承諾的 標準。另一報告能力包括證書報告。證書涉及諸如用戶、群、項目或賬戶、類或隊列 和/或服務(wù)質(zhì)量(QOS和SLA)這樣的參數(shù)。這使得能夠基于證書參數(shù)進行關(guān)于功耗的 不同類型的查看。這可以使管理員或用戶能夠識別特定類型的證書提交的工作負載具有 平均、高于平均、低于平均或需要改進的功耗。例如,可以在證書報告中包含的參數(shù)包括(1)每證書的當前、最低、最高、平均和總功耗;(2)隨時間變化的每證書功耗; (3)由于消耗的KWH產(chǎn)生的每證書美元(或其他貨幣)成本;以及(4)分配資源的每證 書溫度。可以生成的另一類型的報告包括節(jié)點報告。節(jié)點報告提供關(guān)于基于每節(jié)點的使 用和消耗的信息和數(shù)據(jù),如其名稱所示。參數(shù)包括(1)每節(jié)點的當前、最低、最高、 平均和總功耗;(2)隨時間變化的每節(jié)點功耗;(3)由于消耗KWH產(chǎn)生的每節(jié)點成本; 以及(4)每節(jié)點的當前、最低、最高和平均溫度。可以生成的另一報告涉及分區(qū)報告?;诿糠謪^(qū)的分區(qū)報告涵蓋至少以下參 數(shù)(1)每分區(qū)的當前、最低、最高、平均和總功耗;(2)隨時間變化的每分區(qū)功耗; (3)由于消耗KWH產(chǎn)生的每分區(qū)成本;(4)每分區(qū)的當前、最低、最高和平均溫度;以 及(5)隨時間變化的每分區(qū)實際與非綠色與最高功耗比較。這些參數(shù)使得能夠提供關(guān)于 計算環(huán)境內(nèi)為消耗工作負載創(chuàng)建的分區(qū)信息。關(guān)于到功率管理裝置的連接,對于用于管理計算環(huán)境中的功率,至少以下活動 是可用的。功率管理裝置包括開啟節(jié)點、關(guān)閉節(jié)點和啟用睡眠狀態(tài)(諸如Linux睡眠狀 態(tài))的能力??梢允悄軌?qū)Ξ斍皼]有正在使用的節(jié)點或另一資源實現(xiàn)斷電或降低功耗的 其他睡眠狀態(tài)。例如,提供用于休眠狀態(tài)的任意裝置盡可能關(guān)閉所有進程但仍維持同步 狀態(tài)。另一功率管理裝置包括能夠?qū)①Y源置于低功率備用或睡眠模式。由工作負載管理 器指示的這些管理裝置被控制以保持根據(jù)SLA的承諾的服務(wù)級別并且最大化計算環(huán)境的 功耗方面的效率。在遞交本申請時,更新的服務(wù)器正開始獨立地和在內(nèi)部提供一些功率管理能 力。例如,服務(wù)器可以包括他們自身的允許其關(guān)閉的管理軟件。這主要是基于本地知 識。本公開的一個方面涉及在外部提供這些管理能力或API,以使其可以與功率管理裝 置308和工作負載管理器304通信并且接收用于功率管理目的的指令。在這方面,系統(tǒng) 可以能夠接進并且甚至可能關(guān)閉存儲器的特定部分。例如,該系統(tǒng)可以指示節(jié)點以低存 儲器狀態(tài)運行。因此,即使認為其可能具有4GB RAM,但是工作負載管理器304仍可 以指示特定的節(jié)點將其限制到0.5GBRAM并且當工作負載小或較大時保持在這種休眠狀 態(tài)。然后,由于存儲器消耗了大量的功率,因此實施的存儲器限制降低了功耗。在另一 實例中,管理軟件能夠降低單個的處理器的時鐘速度或關(guān)閉特定的處理器或內(nèi)核、斷電 硬盤驅(qū)動器、減慢外圍設(shè)備(諸如DVD-ROM)或其他類型接口的速度。換言之,計算 環(huán)境的任意功率消耗部件可以與能夠管理并控制其使用的工作負載管理器304連接。因 此,根據(jù)本文中公開的理論可以監(jiān)視、報告并控制與工作負載、作業(yè)、作業(yè)分析、資源 分析等等的所有多個連接。在控制計算環(huán)境內(nèi)的這些各個資源之外,本公開的一個方面是由于作業(yè)到達或 由于預(yù)先接收到用于有效消耗環(huán)境內(nèi)的資源的保留,因此所有這些狀態(tài)是基于預(yù)測可用 的不同活動,其中工作負載管理器304可以預(yù)先斷電節(jié)點或斷電RAM的部分或全部、或 減慢DVD-ROM的轉(zhuǎn)速等等。并且,可以基于動態(tài)進行調(diào)節(jié),其中一旦作出初步?jīng)Q定并 且開始消耗工作負載,則可以識別工作負載、環(huán)境、SLA或任意其他參數(shù)內(nèi)的改變并且 可以修改功率管理決定和指令和/或預(yù)測以提高效率。例如,該系統(tǒng)可能過高估計作業(yè) 所需的RAM的量。當處理實際的工作負載時,該系統(tǒng)確定實際需要較少的RAM并且作出合適的調(diào)節(jié)并將更多的RAM置于休眠狀態(tài)。按需式中心中的空調(diào)可能故障導(dǎo)致節(jié)點過 熱。然后,工作負載管理器304將工作負載傳送到其他計算環(huán)境或作出其他改變以調(diào)整 熱度,諸如降低過熱區(qū)域中的處理器的時鐘速度。因此,工作負載管理器304利用關(guān)于 環(huán)境的當前狀態(tài)和工作負載和/或其關(guān)于將來工作負載的知識的信息來實施節(jié)能決定, 諸如何時斷電或上電計算環(huán)境內(nèi)的任意特定的資源??梢曰谂c當前狀態(tài)和/或工作負 載的知識(當前和將來以及預(yù)測的)有關(guān)的信息,斷電或上電節(jié)點。關(guān)于管理計算環(huán)境300中的功耗的機制,一個實例方法包括接收關(guān)于計算環(huán)境 300的當前狀態(tài)的數(shù)據(jù)。例如,接收的數(shù)據(jù)可以包括關(guān)于當前工作負載、當前溫度、當 前功耗、處于備用模式的當前節(jié)點或處于降低功耗模式的存儲器等等的數(shù)據(jù)。關(guān)于計算 環(huán)境300的當前狀態(tài)的任意數(shù)據(jù)屬于這一類。然后,該方法分析了計算環(huán)境300中的當 前消耗資源的工作負載。然后,該方法包括基于接收到的數(shù)據(jù)和工作負載的分析對計算 環(huán)境300中的至少一個資源進行開啟或關(guān)閉或采用另一功率節(jié)省步驟。關(guān)閉至少一個資 源可以包括將至少一個節(jié)點置于低功率備用模式。至少一個資源可以是節(jié)點、存儲器、 路由器、帶寬等等。在另一方面中,分析還包括對要消耗計算環(huán)境300的工作負載的分 析。工作負載管理器304接收并建立要消耗工作負載的作業(yè)的隊列。本實施例的一個方 面能夠?qū)崿F(xiàn)對尚未消耗計算環(huán)境300中的資源但已經(jīng)被調(diào)度消耗資源的這樣的工作負載 的分析。在另一方法實施例中,系統(tǒng)304通過接收關(guān)于計算環(huán)境的當前狀態(tài)的數(shù)據(jù)并分 析計算環(huán)境300中要消耗的工作負載,執(zhí)行管理計算環(huán)境300中的功耗的步驟。該系統(tǒng) 基于當前狀態(tài)和分析的工作負載預(yù)測至少一個功耗節(jié)省活動,并且實施預(yù)測的計算環(huán)境 中的至少一個功耗節(jié)省活動。功耗節(jié)省活動可以是以下之一斷電節(jié)點、斷電存儲器 (諸如RAM)、減慢磁盤的轉(zhuǎn)速、降低處理器的時鐘速度、斷電硬盤驅(qū)動器或者將資源置 于低功耗模式。還可以發(fā)生其他功率節(jié)省步驟。該系統(tǒng)還可以當工作負載消耗計算環(huán)境 300中的資源時分析計算環(huán)境300和工作負載,并且基于對計算環(huán)境和工作負載的分析動 態(tài)調(diào)節(jié)實施的和預(yù)測的至少一個功耗節(jié)省活動。動態(tài)調(diào)節(jié)至少一個功耗節(jié)省活動的一個 實例可以包括從實施量增大或減少斷電或上電節(jié)點的數(shù)量。動態(tài)調(diào)節(jié)的另一實例包括從 實施量增加或減少斷電存儲器(諸如RAM)的量。然后,系統(tǒng)304提供智能政策來控制功耗。例如,空閑庫管理裝置涉及采用工 作負載預(yù)測裝置來確定空閑節(jié)點將要需要運行排隊工作負載的時間。該管理裝置還允許 指定將參與空閑庫的節(jié)點。對于瞬時工作負載響應(yīng),當沒有選定工作負載、為最小指定 的時間幀選定節(jié)點分配時,該方法指定將允許保持空閑和上電的空閑節(jié)點的數(shù)目。該系 統(tǒng)以關(guān)閉模式或備用模式斷電落在建立的邊界之外的節(jié)點。系統(tǒng)304能夠抑止節(jié)點遷移 以防止可能影響節(jié)點的平均故障間隔(MTBF)的功率管理系統(tǒng)超負荷(開啟及關(guān)閉節(jié)點、 加速然后減慢硬盤驅(qū)動器的轉(zhuǎn)速等等)。系統(tǒng)304還能夠?qū)崿F(xiàn)透明功率管理隱藏節(jié)點、功 率狀態(tài)和從終端用戶和工作負載的狀態(tài)遷移。另一智能政策是基于QOS的功率管理政策。這里,系統(tǒng)304允許基于每QOS儲 備和響應(yīng)時間因素動態(tài)調(diào)節(jié)資源庫大小。例如,在這種情況下,只要滿足相關(guān)的SLA, 即使有排隊作業(yè)也可以將一些節(jié)點維持在斷電模式。功率成本計算是系統(tǒng)中實施的另一 智能政策,其中系統(tǒng)允許對用戶分配基于“消耗瓦特”的內(nèi)部工作負載計費,包含基于
10時刻的功率計費率。QOS功率數(shù)據(jù)庫管理的一個實例可以用來說明綠色計算的一個簡單 方面,以及然后提供可以如何實施基于QOS的功率管理的更詳細的說明。例如,在綠色 計算的第一層中,系統(tǒng)可以具有一個作業(yè)并確定向前并啟動節(jié)點來運行該作業(yè)。由于作 業(yè)在隊列中并且準備好開始,該系統(tǒng)可以簡單進行查找以為用戶提供絕對最大響應(yīng)時間 或可能的吞吐量,以及如果節(jié)點將要空閑,則如果系統(tǒng)沒有為特定節(jié)點選中目標則該系 統(tǒng)關(guān)閉那些將要空閑的節(jié)點。利用基于QOS功率的管理,如果作業(yè)在隊列中并且準備好 處理時,則系統(tǒng)提供其他的智能來確定是否在特定的時間處理該作業(yè)。例如,由于資源 是可用的,因此該系統(tǒng)并不總是必須只在幾秒內(nèi)運行該作業(yè)。有一些通過在特定的時間 量內(nèi)等待運行作業(yè)使計算環(huán)境300的功率管理將改進的情況。例如,系統(tǒng)可以具有特定 類型的組織需要30分鐘響應(yīng)時間以及另一類型的組織需要15秒的響應(yīng)時間的SLA。該 系統(tǒng)可以保證滿足多個SLA以及開啟并關(guān)閉資源,但只達到滿足各自的SLA的程度。因 此,該系統(tǒng)可以具有位于隊列中的作業(yè)持續(xù)20分鐘,同時節(jié)點還處于關(guān)閉的狀態(tài)。當系 統(tǒng)可以立即開啟節(jié)點并處理工作負載時,系統(tǒng)根據(jù)基于QOS功率管理智能確定如果可以 改進功耗,則該系統(tǒng)將在合適的時間之前等待處理(在本實例中)作業(yè)以及然后節(jié)點可以 被上電以及資源被消耗。系統(tǒng)304還可以接收諸如冷鋒將要到達計算環(huán)境300的區(qū)域中 的知識的外部信息并且在那時之前等待處理熱加強作業(yè)。在基于QOS功率管理的另一方面中,如果滿足功率管理閾值但是需要違反 SLA,則實際參與與用戶的會話也是可能的。例如,系統(tǒng)304可以向具有需要15秒響應(yīng) 時間的SLA的用戶314提供反饋,其中系統(tǒng)可以請求SLA的差異用于節(jié)能的目的。這當 然是基于計算環(huán)境、隊列中的作業(yè)、SLA、可能的先前歷史等中的至少一個的分析。在 這種情況下,系統(tǒng)304可以參與授權(quán)違反標準SLA的會話。優(yōu)選的是這些類型的細節(jié)通 常將提前在SLA中予以說明。換言之,SLA可以包括典型的15秒響應(yīng)時間,但是如果 通過改變該響應(yīng)時間可以實現(xiàn)改進的功耗的一定閾值,則SLA可以包括用于預(yù)授權(quán)這種 違反標準要求響應(yīng)時間的參數(shù)。另一智能政策涉及基于時刻的功耗。這里,系統(tǒng)304允許在最昂貴的“高峰” 功耗時段期間只執(zhí)行最時間關(guān)鍵工作負載(mosttime-critical workload)以及將其他工作負 載延緩到成本更低的時段的智能調(diào)度。例如,如果一天中的成本最高的消耗時段在上午9 點至中午12點之間,由于必須處理時間關(guān)鍵工作負載,智能調(diào)度政策可以識別作業(yè)或作 業(yè)的隊列,并且在這段時間段期間執(zhí)行最時間關(guān)鍵工作負載,并且在處理工作負載與為 功耗花費較少的金錢的平衡中進行權(quán)衡。然后,例如,可以在較便宜的功率成本可用的 下午12點至1點的午飯時段或更晚的午夜時間處理其他較低關(guān)鍵工作負載。已知與特定 環(huán)境相關(guān)聯(lián)并且實際能夠返還給用戶的收費率,可以有允許用戶使用計算資源的一些信 用單位,其中用戶可以是個人用戶或較大系統(tǒng)用戶或部門。例如,功率成本計算的概念 允許這些信用量中的一些基于工作負載的瓦數(shù)被直接消耗。從而,系統(tǒng)304可以提供與 使用計算資源相關(guān)聯(lián)的正常成本計算因素。例如,由于系統(tǒng)已經(jīng)分配特定使用將要使用 每處理器秒一定數(shù)量的信用,因此系統(tǒng)304可以允許環(huán)境的原始使用。此外,用戶還可 以支付實際消耗的功率。因此,本公開的這個方面試圖對數(shù)據(jù)中心或高性能計算(HPC) 集群300的成本結(jié)構(gòu)以及功率成本計算方法進行建模用于基本上對能量使用和能量使用 的計費用戶進行建模。
另一智能政策包括基于溫度的工作負載分配。這里,系統(tǒng)允許節(jié)點分配政策分 配工作負載以平衡熱耗散,以及從而平均數(shù)據(jù)中心或集群內(nèi)的節(jié)點溫度。這里,利用監(jiān) 視的關(guān)于溫度的信息,工作負載管理器可以將工作負載實際分配到運行較冷的集群內(nèi)的 特定的節(jié)點而不是運行較熱的節(jié)點。因此,系統(tǒng)可以基于自動學習或其他機制將“低 熱”工作負載智能發(fā)送到高溫節(jié)點來平衡數(shù)據(jù)中心熱分布。例如,某些作業(yè)可以是I/O 專用并且需要在網(wǎng)絡(luò)上有更多的數(shù)據(jù)吞吐量。其他作業(yè)可以是非常的處理器專用以及一 些可以自舉使用并對存儲器有要求。因此,不同的作業(yè)和不同的工作負載有不同的資源 消耗概要,以及從而有不同的功耗概要。另一實例是包含高能效超低電壓(ULV)處理器 和標準處理器的異質(zhì)計算環(huán)境。ULV處理器可以處理恒定100%的CPU利用率,產(chǎn)生的 熱量非常少,而在相同工作負載下標準CPU將產(chǎn)生相當大量的熱量。根據(jù)同一位置中哪 個硬件正在處理作業(yè),相同作業(yè)可以引起不同的熱相關(guān)特性。因此,系統(tǒng)304的分析包 括基于每個CPU的知識及其熱量產(chǎn)生特性作出能量保護的決定?;旧?,工作負載管理器學習者能力將使用這樣的信息來概述應(yīng)用或特定類型 的工作負載并且發(fā)現(xiàn)其具有的功耗概要的類型。一旦系統(tǒng)304確定消耗功率的概要,則 系統(tǒng)可以注意數(shù)據(jù)中心以確定當處理該工作負載時哪種額外熱量將被加入數(shù)據(jù)中心300。 系統(tǒng)304可以確定將要到中心的總額外熱量。通過這種方式,系統(tǒng)304可以確定數(shù)據(jù)中心 300是否要過熱以及從而將計算環(huán)境置于授權(quán)的溫度范圍之外。系統(tǒng)可以根據(jù)逐個節(jié)點或 分區(qū)實際確定是否存在數(shù)據(jù)中心的較冷的物理部分。在這種情況下,當然可以利用并分 析監(jiān)視的狀態(tài)以使工作負載管理器可以實際將特定的工作負載置于其中一個架子內(nèi)或與 特定的冷卻裝置或冷卻單元316相鄰,以使環(huán)境中的資源被消耗,工作負載管理器304可 以平衡產(chǎn)生的溫度升高。由于工作負載管理系統(tǒng)304足夠智能來防止其超過特定溫度閾 值之外,因此計算環(huán)境的設(shè)計者和購買者不必過多地對冷卻系統(tǒng)進行購買或付費,這當 然是一種成本節(jié)省。對于那些擁有并操作這樣的計算環(huán)境者是一種直接的成本節(jié)省,這 是本文中公開的理論的一個實例優(yōu)勢。然后,與以上作業(yè)遷移相關(guān)的另一觀念是可能系統(tǒng)在當前時間不能運行作業(yè)。 可能工作負載管理軟件304可以確定現(xiàn)在不運行該作業(yè)并且不識別位置以及作業(yè)可以開 始的時間以便不超過系統(tǒng)嘗試維持為目標的總溫度閾值、瓦特數(shù)閾值或BTU閾值。因 此,雖然以上主要討論了溫度,然而瓦特數(shù)閾值和BTU閾值還可以是做出關(guān)于計算環(huán)境 中的工作負載的放置以及作業(yè)遷移的決定所依據(jù)的參數(shù)。在本公開的另一方面中,智能政策可以由其中可以采用作業(yè)遷移的工作負載管 理器304來實施。該方面的一個實例涉及確定運行的作業(yè)何時生成比預(yù)期更多的熱量。 如果可接受的熱量級別超過某些閾值,則工作負載管理器304將活動的作業(yè)實際遷移到 新的和更冷的位置。其中有應(yīng)用這種操作的多種情況。例如,作業(yè)或工作負載可以不具 有概要,以及從而作業(yè)生成的熱量的最優(yōu)和最精確的預(yù)測可能已經(jīng)是不準確的,以及從 而修改需要作業(yè)遷移到新位置。在這方面,因此,另一方面涉及生成工作負載概要,其 可以然后被存儲并在稍后日期被利用以對后期提交的具有相同或相似概要的作業(yè)實現(xiàn)改 進工作負載的分配。并且,到功率管理裝置312的另一接口能夠使工作負載管理器304還與熱管理裝 置(諸如空調(diào)或冷卻單元316)連接。因此,如果基于所接收的數(shù)據(jù),則根據(jù)某些參數(shù)和閾值,系統(tǒng)知道其將要將工作負載發(fā)送到可能進一步升高其溫度的高溫節(jié)點,系統(tǒng)可以 指示空調(diào)單元或冷卻裝置316也升高以適應(yīng)預(yù)期的或?qū)嶋H的當前升高的溫度。通過遠程 控制管道或通風口,系統(tǒng)304還可以指示空調(diào)單元或冷卻裝置直接冷卻建筑物或服務(wù)器 房間的特定部分,例如,引入更多的冷風以移動到最熱的節(jié)點。在這方面,可以通過由 系統(tǒng)304對管道、風扇等的這種控制,協(xié)調(diào)溫度的非常本地化的管理。本公開關(guān)于溫度的另一方面涉及基于溫度的響應(yīng)。這里,系統(tǒng)將允許溫度閾 值排除對過度“熱”節(jié)點的分配以及進一步可以提供溫度閾值來動態(tài)發(fā)起自動活動或通 知。如上所指出的,自動活動可以涉及計算環(huán)境本身或位于數(shù)據(jù)中心或計算環(huán)境中的溫 度控制裝置。并且,當然可以向用戶或管理員提供通知以警告他們過熱或危險環(huán)境。基于溫度的響應(yīng)的一個實例將使用與工作負載管理器304相關(guān)的通用度量能力 (generic metric capability)。這里,確定工作負載被處理是采用的其中一個度量是將溫度 添加為一個度量。從而,工作負載管理器304可以設(shè)置為工作負載的默認參數(shù),意思是 工作負載可以只使用溫度低于特定閾值溫度X的節(jié)點。在這方面,在將工作負載分配到 計算環(huán)境300中方面變成了一種標準通用度量實施。第二方面是觸發(fā)活動還可以在通用 度量加熱上操作并建立閾值。因此,基于處理計算環(huán)境中的工作負載時的響應(yīng),在先前 使用的通用度量中采用溫度、瓦特數(shù)、BTU閾值的概念提供了改進并提供溫度、瓦特數(shù) 或BTU的能力。系統(tǒng)能夠?qū)崿F(xiàn)的另一智能政策是基于功率的工作負載打包政策。這里,系統(tǒng)允 許作業(yè)打包以優(yōu)化工作負載放置并且允許最大數(shù)量的服務(wù)器被置于空閑或備用模式,以 及從而最小化整體功耗。這里,系統(tǒng)可以實施作業(yè)遷移(使用虛擬機或檢查基于重啟的 機制)以改進現(xiàn)有的活動工作負載的打包。打包政策的一個實例假定系統(tǒng)304管理計算 環(huán)境中的16核機器。由于具有1核運行的機器和具有2核運行的機器與每個具有1核運 行的兩個機器之間的不同是將其打包到一個機器上具有顯著的功率節(jié)省,因此對于系統(tǒng) 打包該機器是有意義的。因此,先前系統(tǒng)算法將傳播開工作負載以便最小化沖突和最大 化每個各自作業(yè)的性能。現(xiàn)在,改進的系統(tǒng)304包括算法中的功率節(jié)省屬性。因此,雖 然工作負載管理器304仍期望最大化性能,但是其還可以確定是否存在成本以及系統(tǒng)304 添加了功耗的成本與最大分配的輕度性能改進之間的平衡。該概念中還包含了功耗政策 以及功率管理機會的理解。因此,如果系統(tǒng)將工作負載打包到16核機器上,以及如果系 統(tǒng)使用嚴密打包算法,則其能使在計算環(huán)境300中的更多核以及其他資源關(guān)閉并通過作 業(yè)遷移提供更大的節(jié)省。基本上,系統(tǒng)在更少的節(jié)點上運行更多的作業(yè)并且斷電除其上 可能分配工作負載之外的其他節(jié)點。因此,該概念的應(yīng)用的一個實例是如果作業(yè)A和作業(yè)B都在同一節(jié)點上運行, 則由于計算環(huán)境的共享方面導(dǎo)致用戶可能受到3%的性能惡化,但是如果作業(yè)A和作業(yè)B 分別在兩個獨立的節(jié)點上,則這可提高20%的功耗。然后,平衡算法確定用性能惡化交 換功率節(jié)省是否合適。然后,本文中公開的另一智能政策是功率效率打包政策。這里,系統(tǒng)304允許 基于逐個節(jié)點的每個應(yīng)用的性能的自動學習。這就允許了應(yīng)用性能與功耗的關(guān)聯(lián)以識別 對于工作負載的節(jié)點映射最有效的應(yīng)用。這里,系統(tǒng)還使用映射信息以將工作負載智能 移動到最優(yōu)節(jié)點。自動學習涉及為每個應(yīng)用或工作負載識別處理該應(yīng)用所需要的工作的單元的一定數(shù)量。每個應(yīng)用將有一些數(shù)量的工作只要其在不同類型的硬件上運行,其 以不同的速度運行。系統(tǒng)304基本上測量每節(jié)點性能或應(yīng)用在該特定資源上執(zhí)行的情 況。一旦系統(tǒng)304知道了該信息,則系統(tǒng)可以實際將性能與功耗相關(guān)聯(lián)。先前,系統(tǒng) 304主要簡單確定了性能作為時間單元的測量。換言之,系統(tǒng)能夠完成每秒多少處理控件 (widget)?,F(xiàn)在,系統(tǒng)304不同地查看資源的消耗并詢問每千瓦功率消耗了多少控件。 因此,這種概念成為工作的一個單元,以及然后系統(tǒng)304實施分析周轉(zhuǎn)時間(turnaround time)以及功耗兩者的更大的算法以指出特定作業(yè)的總成本。從而,應(yīng)用的最有效和高效 處理現(xiàn)在是基于功率加周轉(zhuǎn)時間的。因此,工作負載管理器304操作的分配無限算法可 以使系統(tǒng)等待稍長的時間來獲得計算環(huán)境內(nèi)的最優(yōu)節(jié)點或另一不同類型的最優(yōu)和最高效 的資源。用于控制功耗的另一智能政策涉及綠色網(wǎng)格管理。這里,基于持久的和/或基 于時刻的計費率,系統(tǒng)利用瓦特中心計費信息來將工作負載遷移到最便宜的數(shù)據(jù)中心。 這由圖4所示。在這方面,系統(tǒng)可以平衡諸如SLA需求的特征以及從一個數(shù)據(jù)中心到 另一數(shù)據(jù)中心遷移工作負載中涉及的成本中的延遲,并作出關(guān)于遷移工作負載的智能決 定。例如,北美的數(shù)據(jù)中心402可能具有溫度或功耗或成本問題,以及可以自動執(zhí)行分 析,其中南美的數(shù)據(jù)中心404可以有較便宜的功耗以及具有執(zhí)行額外工作負載的能力。 在這方面,綠色管理模塊可以將工作負載從北美的數(shù)據(jù)中心402遷移到南美的數(shù)據(jù)中心 404用于消耗。當然,其他的數(shù)據(jù)中心406、408也可以被聯(lián)網(wǎng)并且變得可用。在南美設(shè) 施中處理作業(yè)或工作負載的增加值將比關(guān)于將工作負載遷移到新的按需式中心所需的帶 寬方面的延遲和成本以及資源消耗更有價值。在另一實例中,假定位于英格蘭的數(shù)據(jù)中心406正在運行并且其在英格蘭發(fā)生 高峰使用小時,以及從而計費的價格非常高。如果他們該天在數(shù)據(jù)中心中使用多于60000 千瓦時,不僅是這個數(shù)據(jù)中心對原始功率計費多,而且可能用戶也承擔了一定的稅款。 在一些管轄區(qū)域中,專用稅可能隨之向用戶計費更多。因此,工作負載管理器304與這 些多個數(shù)據(jù)中心進行通信,以及如果中心經(jīng)由位于北美402或南美404的網(wǎng)格連接,則執(zhí) 行分析,其中可以分析美元成本以及可能的功耗和時間以根據(jù)這些參數(shù)中的任意一個或 其任意組合確定將作業(yè)遷移到另一數(shù)據(jù)中心是否更高效。雖然遷移數(shù)據(jù)和工作負載有花 費,然而節(jié)省實際上可能大于花費。從而,英格蘭的數(shù)據(jù)中心406可以將其工作負載外 包到其他位置,在英格蘭的相同時刻在其他管轄區(qū)域中將是下班時間。由于位置是在世 界的另一邊,因此可能是午夜或清早,并且功率在那個時間才是更便宜的。從而,系統(tǒng) 可以管理外包某個工作負載和非響應(yīng)時間緊張的以及還可能不具有高安全性或相對高的 值特定的工作負載。因此,可以將這種類型的工作負載推至較低功耗環(huán)境,能夠使用戶 保持在多個閾值之下并根據(jù)期望的模型操作。而在另一方面中,可以根據(jù)天氣條件移動 工作負載,使得可以避免預(yù)測的暴風雨或者較冷區(qū)域中的數(shù)據(jù)中心可以處理工作負載以 降低對冷卻能量的需求。在根據(jù)功耗管理工作負載消耗方面的這種具體的方法的另一優(yōu)勢是其具有高成 本的石油,在將燃料從一個地點移動到另一地點只是為了運行發(fā)電廠通常是巨大的成 本。因此,甚至有機制將數(shù)據(jù)中心放置在接近功率源的位置(諸如靠近發(fā)電廠),并且對 于遷移的工作負載試圖最小化這樣的功率的成本并最大化這樣的數(shù)據(jù)中心的使用。
關(guān)于橫跨管轄區(qū)域的作業(yè)遷移的概念,我們指出本方法的一些方面可以被實踐 就像本方法在特定管轄區(qū)域中實踐。例如,北美的數(shù)據(jù)中心402可觀察到世界的其他區(qū) 域的數(shù)據(jù)中心,就像是其來自一個黑盒子。這里,可以從其他數(shù)據(jù)中心接收關(guān)于他們的 每千瓦特功率的成本、他們的高峰消耗、他們處理工作負載的有效性等等的狀態(tài)信息。 可以從同類型的工作負載管理器(圖3的318、322)或者相同的工作負載管理器檢索這種 信息,所述工作負載管理器接收地理上相距遙遠的數(shù)據(jù)中心(圖3的320、324或圖4的 DC)的數(shù)據(jù)。從而,與數(shù)據(jù)中心402相關(guān)聯(lián)的工作負載管理器可以接收數(shù)據(jù)中心404、 406和408的狀態(tài)信息??梢詧?zhí)行用于平衡功耗、成本、用于數(shù)據(jù)和工作負載遷移到 每個不同的數(shù)據(jù)中心的單個成本等等的分析。從而,因此,根據(jù)其親合性算法(affinity algorithm),與數(shù)據(jù)中心402相關(guān)聯(lián)的工作負載管理器可以確定其他數(shù)據(jù)中心的哪一個對 于遷移并在那里消耗資源提供最高效率。在這方面,假定由于可提供最便宜的燃料成本 的非高峰時間導(dǎo)致英格蘭的數(shù)據(jù)中心406被識別為最便宜的,則與數(shù)據(jù)中心402相關(guān)聯(lián)的 工作負載管理器執(zhí)行行動并將工作負載外包到數(shù)據(jù)中心406。在數(shù)據(jù)中心406中的資源消 耗之后,則數(shù)據(jù)中心402的工作負載管理器接收關(guān)于從數(shù)據(jù)中心406接收的數(shù)據(jù)方面的結(jié) 果??梢杂卸喾N機制,通過這些機制可以檢索并利用數(shù)據(jù)中心中的每一個的狀態(tài)信息。 換言之,可以有單個工作負載管理器或多個工作負載管理器,用于管理狀態(tài)信息并實施 合適地分配工作負載以及如果需要作出作業(yè)遷移決定的算法。再一次,優(yōu)選的是關(guān)于在 哪里處理工作負載的這些決定對于提交工作負載的用戶而言是優(yōu)選透明的。從而,用戶 根據(jù)他或她的知識將工作負載簡單地提交到本地計算環(huán)境,但是通過政策和多個數(shù)據(jù)中 心之間的通信,工作負載遷移并且在遠離最初接收資源的保留或請求的數(shù)據(jù)中心的位置 被處理。本發(fā)明的一個實施例涉及一種管理計算環(huán)境內(nèi)的資源的消耗的方法。圖5A示出 了本方法的實踐中涉及的基本步驟。如圖所示,本方法包括監(jiān)視計算環(huán)境中的至少一 個功耗參數(shù)(502);至少部分根據(jù)所述至少一個監(jiān)視的參數(shù)將工作負載分配到計算環(huán)境 中(504)和報告結(jié)果(506)。在有效管理計算環(huán)境的過程中可以理解這些描述的多個基本步驟。應(yīng)理解的 是,可以監(jiān)視并報告關(guān)于功耗和溫度的很多數(shù)據(jù)點,以及可以經(jīng)由工作負載管理軟件304 控制并管理計算環(huán)境和計算環(huán)境中的很多涉及功率和溫度的功能(包括冷卻裝置316)兩 者。因此,本文中公開了多個方法實施例。本文中的公開能夠?qū)崿F(xiàn)的另一智能政策涉及功率限制和容量(cap)。這里,系統(tǒng) 能夠根據(jù)每個用戶、組、項目、部門、作業(yè)等實現(xiàn)每天或總瓦特數(shù)限制或容量。因此, 任意參數(shù)諸如證書等等可以逐一指出并分配功率或溫度限制或容量。另一方面涉及功率 優(yōu)先次序(prioritization)。這里,在最昂貴的時刻的時段期間,系統(tǒng)可以優(yōu)選“綠色” 工作負載。在這方面,系統(tǒng)分析實際的工作負載以確定將來可能需要的功耗以用于處理 該工作負載。這里,如果特定的作業(yè)或工作負載預(yù)期不使用像其他工作負載那樣多的功 率,則系統(tǒng)可以在最昂貴的時刻時段期間優(yōu)選該工作負載。作為一個優(yōu)選綠色工作負載 的實例,系統(tǒng)304可以對工作負載執(zhí)行分析以識別特定的工作負載將使用少量的能量, 以便可以在最昂貴的時刻期間處理這樣的工作負載。這里,根據(jù)涉及對于特定工作負載 的功耗的屬性,算法可以為該特定的工作負載給出基于時間的親合性。
圖5B示出了另一方法實例。在該實例中,該方法是用于管理計算環(huán)境中的功 耗。該方法包括,接收關(guān)于計算環(huán)境的當前狀態(tài)的數(shù)據(jù)(510)。然后,系統(tǒng)分析那些當前 消耗計算環(huán)境中的資源的工作負載(512)并根據(jù)接收的數(shù)據(jù)和工作負載的分析修改計算 環(huán)境中的至少一個資源(514)。修改涉及能量消耗。在這種情況下,計算環(huán)境內(nèi)的資源 不止包括諸如處理器、存儲器、帶寬、磁盤空間等等的計算資源,還可以包括諸如空調(diào) 單元、風扇、管道、空氣流動控制、窗戶、提供給環(huán)境的電力等等的環(huán)境資源。因此, 修改計算環(huán)境中的至少一個資源的概念包含整個計算環(huán)境內(nèi)的這些多個部件的全部。例 如,修改計算環(huán)境中的至少一個資源可以涉及將至少一個節(jié)點置于低功率狀態(tài)或者開啟 或關(guān)閉至少一個節(jié)點。修改計算環(huán)境中的至少一個資源可以涉及增加空調(diào)以將整個計算 環(huán)境或者計算環(huán)境的一部分中的溫度維持在特定級別。在這種情況下,修改計算環(huán)境可 以涉及通過遠程控制管道或通風口來指示空調(diào)單元或冷卻裝置在建筑物或服務(wù)器房間的 特定部分增強冷卻,例如以將冷空氣引導(dǎo)到最熱的節(jié)點或到環(huán)境中的特定部分。該方法還包括分析在計算環(huán)境中將要消耗的將來工作負載并且其中修改至少 一個資源的步驟基于接收的數(shù)據(jù)和對當前工作負載和將來工作負載的分析。圖5C示出了另一實例方法實施例。這里,系統(tǒng)通過接收計算環(huán)境的當前狀態(tài)管 理計算環(huán)境中的功耗(520),分析要在計算環(huán)境中消耗的工作負載(522)以及根據(jù)當前狀 態(tài)和分析的要在計算環(huán)境中消耗的工作負載來預(yù)測至少一個功耗節(jié)省活動(524)。算法 觀察調(diào)度用于計算環(huán)境中要消耗的將來工作負載,并且根據(jù)該當前狀態(tài)以及分析的工作 負載作出至少一個功耗節(jié)省活動的預(yù)測。例如,在作業(yè)的隊列內(nèi),被調(diào)度以消耗被預(yù)測 為高熱密集的環(huán)境中的資源的作業(yè)可能存在。在這種情況下,該至少一個功耗節(jié)省活動 可以涉及調(diào)節(jié)工作負載的分配以便可以使用高效超低電壓處理器而不是標準處理器。并 且,可以不完全根據(jù)功耗而是根據(jù)溫度采取其他活動。例如,已知熱密集工作負載被調(diào) 度以消耗環(huán)境中的資源,則系統(tǒng)可以將增加的冷卻引入要處理這樣的工作負載的計算環(huán) 境或計算環(huán)境中的一部分。在這方面,可以節(jié)省能量以預(yù)冷卻環(huán)境而不是等待節(jié)點來增 加其熱耗散以及然后將他們冷卻下來。從而,可以根據(jù)計算環(huán)境和計算環(huán)境中要消耗的 工作負載的狀態(tài)采取在計算資源中以及冷卻裝置兩者內(nèi)的這樣的活動。然后,該方法包 括在所述計算環(huán)境中實施預(yù)測的至少一個功耗節(jié)省活動(526)。其他步驟還可以包括 當工作負載消耗計算環(huán)境中的資源時分析計算環(huán)境和工作負載,并且基于該分析動態(tài)調(diào) 節(jié)實施的和預(yù)測的至少一個功耗節(jié)省活動。系統(tǒng)可以從實施量增加或減少斷電節(jié)點的數(shù) 量,或者從實施量增加或減少斷電存儲器的數(shù)量。并且,系統(tǒng)還可以增加或減少處理冷 卻裝置的實施步驟或者可以對作業(yè)遷移步驟作出修改或者將工作負載傳輸?shù)姜毩⒌陌葱?式中心等等。在另一方面中,系統(tǒng)可以接收計算環(huán)境中的當前功耗狀態(tài),并且分析調(diào)度以消 耗計算環(huán)境中的資源的排隊作業(yè),以及然后當排隊作業(yè)中的至少一個在計算環(huán)境中被消 耗時預(yù)測功耗。最后,該方法涉及利用至少一個功耗節(jié)省活動消耗所述計算環(huán)境中的所 述至少一個作業(yè)。如上所指出的,該活動還可以是涉及計算環(huán)境的溫度的活動以及涉 及將工作負載遷移或傳輸?shù)江h(huán)境的新區(qū)域或到其他按需式中心或其他計算環(huán)境的其他活 動。圖6示出了顯示以上所述的本公開和討論的多個特征的網(wǎng)絡(luò)600。第一工作負載管理器602管理集群606中的工作負載的分配。該集群內(nèi)是作業(yè)610,示出為消耗集群 606內(nèi)的一組特定的資源。上述一個方面涉及從集群606的一個部分到該集群的另一部分 612的作業(yè)遷移。從而,利用以上所公開的理論,單獨或與其他軟件或控制模塊連接的工 作負載管理器602可以接收本文中所公開的涉及功耗的至少一個數(shù)據(jù)點并且提供指令和 控制以管理集群606內(nèi)的資源的消耗的位置、計時等等。圖6的該部分簡單示出了如何 能將一個作業(yè)物理遷移到同一集群的另一部分。并且,如圖6所示的是冷卻裝置618,通 常表示空調(diào)、通風設(shè)備或可以結(jié)合集群606實施的任意其他冷卻或溫度管理機制。工作 負載管理器602還可以與這樣的冷卻裝置618進行通信并經(jīng)由從集群到以上討論的其他功 耗裝置的鏈路來實現(xiàn)本文中公開的目的和過程。并且,如以上已經(jīng)指出的,還可以將作業(yè)從一個集群606遷移到另一集群608并 在其中614被消耗。從而,圖6還示出了與工作負載管理器602以及獨立的集群608都通 信的另一工作負載管理器604。還結(jié)合集群608示出了冷卻裝置620。因此,圖6示出了 一個實例,其中關(guān)于以上討論的溫度成本等等的數(shù)據(jù)點被接收,以及如果滿足閾值,則 系統(tǒng)可以將作業(yè)610從集群606遷移到集群608并消耗集群608中的資源614。這里,考 慮到在兩個集群之間跨網(wǎng)絡(luò)鏈路遷移數(shù)據(jù)和工作負載的成本,如果根據(jù)編程到其算法中 的親合性,功耗節(jié)省證明遷移的正確性,則系統(tǒng)工作負載管理器602可以實施這樣的遷 移。圖6的特定的配置當然可以被改變?nèi)绫绢I(lǐng)域技術(shù)人員所知。例如,可以有能夠管理 兩個集群的單個實例的工作負載管理器等等。圖中未示出但本領(lǐng)域技術(shù)人員已知的是工 作負載管理器通常與來自ClusterRescmrce的諸如TORQUE的資源管理器或管理工作負載 到各自集群內(nèi)的節(jié)點上的最終通信和實現(xiàn)的任意其他已知資源管理器一起工作。當然, 圖6還可以用于按需式數(shù)據(jù)中心、網(wǎng)格或任意商品類型的多節(jié)點計算環(huán)境。通常,本發(fā)明的方法實施例涉及利用以上討論類型的至少一個數(shù)據(jù)點,以及根 據(jù)那些數(shù)據(jù)點中的一個或多個,根據(jù)編程算法作出是否采取特定活動來改進特定作業(yè)、 群等的功耗的確定。從而,根據(jù)以上公開,使用多個監(jiān)視的或報告的參數(shù)以及可以對工 作負載、集群、冷卻裝置、能量管理控制能力等采取的多個不同類型的活動,可以有能 要求權(quán)利保護的多種方法。如上所述,多個涉及的應(yīng)用已經(jīng)通過引用并入本文。本文中公開的能量保護 概念適用于并且可以與本公開中并入的應(yīng)用中公開的概念中的任意一個結(jié)合。在工作 負載管理中的能量保護技術(shù)的這樣的合并以及本文中并入的具體概念的一個實例涉及第 10/589,339號美國申請(代理人案號第010-0019號)。該申請公開了計算環(huán)境中的數(shù)據(jù) 的智能預(yù)操縱(pre-staging)。其中討論的概念涉及優(yōu)化不同計算資源的使用的智能數(shù)據(jù)
“準時(just in time)”數(shù)據(jù)預(yù)操縱。實現(xiàn)數(shù)據(jù)預(yù)操縱的機制的一個實例是在計算保留之 前生成數(shù)據(jù)操縱保留。計算保留可以是其中保留一個處理器或一組處理器用于執(zhí)行保留 的計算部分中的一個。數(shù)據(jù)操縱保留被公開以在合適的時間量中覆蓋計算保留,用于向 計算資源提供需要的數(shù)據(jù)(“準時”)用于處理作業(yè)。在這種情況下,由于在數(shù)據(jù)操縱 出(stage-out)保留(其可以涉及例如接收來自核儲備的分析的過程數(shù)據(jù))之前不需要數(shù) 據(jù)資源,因此可以為另一實體保留這些數(shù)據(jù)資源。在操縱入(stage-in)保留、計算保留和操縱出保留之外,本公開的一個方面可以 涉及接收關(guān)于功耗和這些多個保留的能量使用的信息。例如,可以在計算中使用的準時模式下定時提供數(shù)據(jù)的計算保留之前建立數(shù)據(jù)操縱入保留。然而,可以是能對該數(shù)據(jù)操 縱入保留進行的修改,其中可以對特定作業(yè)最小化功耗而同時還保持合格的SLA性能。 例如,如果數(shù)據(jù)預(yù)操縱要發(fā)生而沒有考慮到能量消耗,則數(shù)據(jù)預(yù)操縱可以采用相對大量 的功率并產(chǎn)生多余的熱量。在一個實例中,可以不準時建立數(shù)據(jù)預(yù)操縱,但是數(shù)據(jù)可以 在計算保留之前預(yù)操縱10分鐘,并且工作負載管理算法能夠根據(jù)諸如這種的修改保持與 SLA協(xié)議一致但節(jié)省功率并降低計算環(huán)境中的溫度。因此,該實例提供了一個說明,說明中的很多改變是可以想象的,其中優(yōu)化算 法可以包括能量保護親合性并且在環(huán)境內(nèi)作出合適的改變以考慮到關(guān)于環(huán)境的這些額外 的參數(shù)。因此,與合并申請中的任意一個相關(guān)聯(lián)的任何數(shù)據(jù)可以以類似的方式被修改以 考慮到全部可用能量消耗信息。此外,在作出關(guān)于通過引用并入本文的申請中的任意一 個中的工作負載管理的決定中的任意一個方面,還可以調(diào)節(jié)關(guān)于功耗和溫度的其他可控 部件,諸如冷卻裝置等等。本發(fā)明的范圍內(nèi)的實施例還可以包括用于承載或具有計算機可執(zhí)行指令或在其 上存儲數(shù)據(jù)結(jié)構(gòu)的計算機可讀介質(zhì)。這樣的計算機可讀介質(zhì)可以是通用或?qū)S糜嬎銠C可 以訪問的任意可用介質(zhì)。通過示例,而非限制,這樣的計算機可讀介質(zhì)可以包括RAM、 ROM、EEPROM、CD-ROM或其他光盤存儲、磁盤存儲或其他磁性存儲設(shè)備或者可以用 于執(zhí)行或存儲以計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的期望的程序代碼方式的任意其他介 質(zhì)。當通過網(wǎng)絡(luò)或到計算機的其他通信連接(有線、無線或其者組合)傳輸或提供信息 時,計算機適當?shù)貙⑦B接視為計算機可讀介質(zhì)。從而,任意這樣的連接被合適地稱為計 算機可讀介質(zhì)。以上組合也應(yīng)包含在計算機可讀介質(zhì)的范圍之內(nèi)。計算機可執(zhí)行指令包括例如使通用計算機、專用計算機或?qū)S锰幚碓O(shè)備執(zhí)行某 些功能或功能組的指令和數(shù)據(jù)。計算機可執(zhí)行指令還包括由單機或網(wǎng)絡(luò)環(huán)境中的計算機 執(zhí)行的程序模塊。通常,程序模塊包括執(zhí)行特定任務(wù)或?qū)嵤┨囟ǔ橄髷?shù)據(jù)類型的例程、 程序、對象、部件和數(shù)據(jù)結(jié)構(gòu)等等。計算機可執(zhí)行指令、相關(guān)的數(shù)據(jù)結(jié)構(gòu)和程序模塊表 示程序代碼方式的實例,用于執(zhí)行本文中公開的方法的步驟。這樣的可執(zhí)行指令的特 定序列或者有關(guān)的數(shù)據(jù)結(jié)構(gòu),表示用于實施這樣的步驟中所述的功能的相應(yīng)的活動的實 例。本領(lǐng)域技術(shù)人員將理解的是可以在具有多種類型的計算機系統(tǒng)配置的網(wǎng)絡(luò)計算 環(huán)境中實踐本發(fā)明的其他實施例,計算機系統(tǒng)配置包括個人計算機、手持設(shè)備、多處理 器系統(tǒng)、基于微處理器的或可編程消費性電子產(chǎn)品、網(wǎng)絡(luò)PC、小型計算機,大型計算機 等等。還可以在分布式計算環(huán)境中實踐實施例,其中由通過通信網(wǎng)絡(luò)鏈接(通過有線鏈 路、無線鏈路或者通過其組合)的本地或遠程處理設(shè)備執(zhí)行任務(wù)。在分布式計算環(huán)境 中,程序模塊可以位于本地和遠程存儲器存儲設(shè)備兩者中。雖然以上描述可以包含特定的細節(jié),但是他們不應(yīng)被理解為以任意形式限制權(quán) 利要求。因此,應(yīng)當只由所附權(quán)利要求及其法律上的等同物限定本發(fā)明,而不是由任何 給出的特定的實例進行限定。
權(quán)利要求
1.一種管理計算環(huán)境中的能量消耗的方法,所述方法包括 接收關(guān)于計算環(huán)境的當前狀態(tài)的數(shù)據(jù);分析所述計算環(huán)境中當前消耗資源的工作負載;以及基于所接收的數(shù)據(jù)和對所述工作負載的分析以涉及能量消耗的方式修改所述計算環(huán) 境中的至少一個資源的使用。
2.根據(jù)權(quán)利要求1所述的方法,其中修改至少一個資源包括將至少一個節(jié)點置于低功 率啟動模式。
3.根據(jù)權(quán)利要求1所述的方法,其中所述接收的數(shù)據(jù)是溫度和功耗中的至少一個。
4.根據(jù)權(quán)利要求1所述的方法,還包括分析在計算環(huán)境中將要消耗的將來工作負 載,并且其中修改所述計算環(huán)境中的至少一個資源的步驟是基于所述接收的數(shù)據(jù)以及對 當前工作負載和將來工作負載的分析。
5.根據(jù)權(quán)利要求1所述的方法,其中所述至少一個資源是節(jié)點或存儲器。
6.根據(jù)權(quán)利要求1所述的方法,其中所述至少一個資源涉及冷卻裝置。
7.根據(jù)權(quán)利要求1所述的方法,還包括通過開啟或關(guān)閉至少一個資源來修改該至少一 個資源的使用。
8.—種管理計算環(huán)境中的功耗的方法,所述方法包括 接收計算環(huán)境的當前狀態(tài);分析所述計算環(huán)境中要消耗的工作負載;基于所述計算環(huán)境中的當前狀態(tài)和分析的要消耗的工作負載,預(yù)測至少一個功耗節(jié) 省活動;以及在所述計算環(huán)境中實施預(yù)測的至少一個功耗節(jié)省活動。
9.根據(jù)權(quán)利要求8所述的方法,其中所述功耗節(jié)省活動是以下之一斷電節(jié)點、斷 電存儲器、減慢磁盤的轉(zhuǎn)速、降低處理器的時鐘速度、斷電硬盤驅(qū)動器以及將資源置于 低功耗模式。
10.根據(jù)權(quán)利要求8所述的方法,還包括當工作負載消耗所述計算環(huán)境中的資源時,分析所述計算環(huán)境和所述工作負載;以及基于所述分析動態(tài)調(diào)節(jié)實施的和預(yù)測的至少一個功耗節(jié)省活動。
11.根據(jù)權(quán)利要求10所述的方法,其中動態(tài)調(diào)節(jié)還包括以下之一(1)從實施的量中增加或降低多個斷電節(jié)點;或者(2)從實施的量中增加或降低多個斷電存儲器。
12.—種管理計算環(huán)境中的功耗的方法,所述方法包括 接收計算環(huán)境的當前功耗狀態(tài);分析調(diào)度以消耗所述計算環(huán)境中的資源的排隊作業(yè);當所述排隊作業(yè)中的至少一個在所述計算環(huán)境中被消耗時,預(yù)測功耗;以及利用至少一個功耗節(jié)省活動消耗所述計算環(huán)境中的所述至少一個作業(yè)。
13.根據(jù)權(quán)利要求12所述的方法,其中所述至少一個功耗節(jié)省活動是以下之一 所述計算環(huán)境中的作業(yè)遷移;作業(yè)遷移到第二計算環(huán)境;調(diào)節(jié)冷卻系統(tǒng);以及調(diào)節(jié)所述計算環(huán)境中的至少一個資源的功耗。
14.根據(jù)權(quán)利要求12所述的方法,其中所述至少一個功耗節(jié)省活動涉及修改與所述計 算環(huán)境相關(guān)聯(lián)的冷卻裝置的使用。
15.根據(jù)權(quán)利要求14所述的方法,其中修改所述冷卻裝置包括在消耗所述至少一個作 業(yè)之前預(yù)冷卻所述計算環(huán)境中的資源。
16.根據(jù)權(quán)利要求12所述的方法,其中所述至少一個功耗節(jié)省活動是修改數(shù)據(jù)預(yù)操縱 保留。
全文摘要
公開了一種用于降低集群、網(wǎng)格、按需式中心等等中的功耗的系統(tǒng)、方法和計算機可讀介質(zhì)。本文中公開的理論可以降低直接和間接的功耗而同時保持完整的集群性能或基于合格的SLA的集群性能。該方法包括接收關(guān)于計算環(huán)境內(nèi)的至少一個資源的功耗或溫度的至少一個狀態(tài)數(shù)據(jù)點。通過使用智能政策來控制功耗,該方法實現(xiàn)并連接集群、網(wǎng)格、按需式中心內(nèi)的功率管理裝置以實現(xiàn)政策、作出動態(tài)改變、作出預(yù)測或活動等等以降低與計算環(huán)境有關(guān)的直接或間接功耗中的一個或多個。該方法可以在采取環(huán)境中的節(jié)能活動中分析當前工作負載、將來工作負載或者兩者。
文檔編號G06F1/00GK102016748SQ200880128729
公開日2011年4月13日 申請日期2008年7月24日 優(yōu)先權(quán)日2008年4月21日
發(fā)明者D·B·杰克遜 申請人:自適應(yīng)計算企業(yè)股份有限公司