專利名稱:優(yōu)化數(shù)據(jù)中心內(nèi)的功耗的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及優(yōu)化數(shù)據(jù)中心內(nèi)的功耗。
背景技術(shù):
本發(fā)明披露了一種用于通過動態(tài)調(diào)整數(shù)據(jù)中心內(nèi)的工作負(fù)載分配來持續(xù)優(yōu)化該數(shù)據(jù)中心的功耗的系統(tǒng)和關(guān)聯(lián)方法。因為常規(guī)功耗優(yōu)化方法僅關(guān)注設(shè)備的物理放置和峰值溫度,從而采取設(shè)備的最大或標(biāo)稱功率規(guī)范,而沒有考慮設(shè)備的利用率,所以常規(guī)優(yōu)化方法無法根據(jù)數(shù)據(jù)中心的工作負(fù)載來動態(tài)和持續(xù)優(yōu)化功耗
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個實施例,提供了一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法包括接收來自所述數(shù)據(jù)中心的輸入,所述數(shù)據(jù)中心包括至少一個設(shè)備,所述輸入包括物理設(shè)備映射和當(dāng)前應(yīng)用映射,其中所述物理設(shè)備映射指定所述至少一個設(shè)備在所述數(shù)據(jù)中心內(nèi)的三維位置,并且其中所述當(dāng)前應(yīng)用映射指定所述數(shù)據(jù)中心的應(yīng)用程序如何被虛擬映射到所述至少一個設(shè)備以及所述應(yīng)用程序之間的當(dāng)前工作負(fù)載分配;生成用于所述數(shù)據(jù)中心的至少一個候選工作負(fù)載解決方案,其中所述至少一個候選工作負(fù)載解決方案中的每個候選工作負(fù)載解決方案表示相應(yīng)應(yīng)用映射,所述相應(yīng)應(yīng)用映射指定所述應(yīng)用程序到所述至少一個設(shè)備的相應(yīng)虛擬映射以及所述應(yīng)用程序之間的相應(yīng)工作負(fù)載分配;借助熱模型計算所述每個候選工作負(fù)載解決方案的相應(yīng)溫度分布圖(profile),其中所述數(shù)據(jù)中心的與所述相應(yīng)溫度分布圖關(guān)聯(lián)的相應(yīng)最高溫度確定了所述每個候選工作負(fù)載解決方案的相應(yīng)功率成本;計算所述每個候選工作負(fù)載解決方案的相應(yīng)性能分布圖以便根據(jù)所述數(shù)據(jù)中心的性能要求評估所述相應(yīng)性能分布圖,其中所述相應(yīng)性能分布圖確定了所述每個候選工作負(fù)載解決方案的相應(yīng)遷移成本;以及將所述數(shù)據(jù)中心的工作負(fù)載從所述當(dāng)前工作負(fù)載分配動態(tài)調(diào)整為最佳工作負(fù)載解決方案,其中所述最佳工作負(fù)載解決方案是具有所述相應(yīng)功率成本與所述相應(yīng)遷移成本的最低總和的候選工作負(fù)載解決方案。根據(jù)本發(fā)明的一個實施例,一種計算機(jī)程序產(chǎn)品包括包含計算機(jī)可讀程序代碼的計算機(jī)可讀存儲單元。所述計算機(jī)可讀程序代碼包含指令,所述指令在由計算機(jī)系統(tǒng)的處理器運行時,實現(xiàn)一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。根據(jù)本發(fā)明的一個實施例,一種計算機(jī)系統(tǒng)包括處理器和耦合到所述處理器的計算機(jī)可讀存儲單元,其中所述計算機(jī)可讀存儲單元包含指令,所述指令在由所述處理器運行時,實現(xiàn)一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。根據(jù)本發(fā)明的一個實施例,提供了一種用于支持計算機(jī)基礎(chǔ)架構(gòu)的過程,所述過程包括提供至少一個支持服務(wù)以便執(zhí)行在計算系統(tǒng)中創(chuàng)建、集成、托管、維護(hù)和部署計算機(jī)可讀代碼中的至少一項,其中與所述計算系統(tǒng)結(jié)合的代碼能夠執(zhí)行一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。
現(xiàn)在僅通過實例的方式參考附圖描述本發(fā)明的實施例,這些附圖是圖IA示出了根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的系統(tǒng);圖IB示出了根據(jù)本發(fā)明的實施例的圖IA的溫度預(yù)測器;圖2是示出根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法的流程圖,所述方法由圖IA的系統(tǒng)的功率優(yōu)化器執(zhí)行;圖3是示出根據(jù)本發(fā)明的實施例的一種用于預(yù)測數(shù)據(jù)中心的設(shè)備的熱特征的方法的流程圖,所述方法由所述功率優(yōu)化器的溫度預(yù)測器執(zhí)行;圖3A是示出根據(jù)本發(fā)明的實施例的功率優(yōu)化器的溫度預(yù)測器的熱建模階段的流 程圖;圖3B是示出根據(jù)本發(fā)明的實施例的功率優(yōu)化器的溫度預(yù)測器的溫度預(yù)測階段的流程圖;圖4是示出根據(jù)本發(fā)明的實施例的一種用于預(yù)測數(shù)據(jù)中心的設(shè)備的性能的方法的流程圖,所述方法由所述功率優(yōu)化器的性能預(yù)測器執(zhí)行;圖5是示出根據(jù)本發(fā)明的實施例的一種用于在數(shù)據(jù)中心的設(shè)備之間動態(tài)調(diào)整工作負(fù)載的方法的流程圖,所述方法由所述功率優(yōu)化器的工作負(fù)載調(diào)整器執(zhí)行;圖6示出了根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的計算機(jī)系統(tǒng)。
具體實施例方式圖IA示出了根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的系統(tǒng)10。系統(tǒng)10包括數(shù)據(jù)中心11、輸入20、功率優(yōu)化器30以及輸出80。輸入20和輸出80存儲在計算機(jī)可讀存儲介質(zhì)中。參見下面圖6中的存儲設(shè)備94、95的描述以了解計算機(jī)可讀存儲介質(zhì)的詳細(xì)信息。在本說明書中,術(shù)語“功率”與“電”和/或“電能”互換使用。數(shù)據(jù)中心11被定義為物理室以及在物理室中駐留和操作的硬件和軟件的集合。在本說明書中,術(shù)語“硬件”、“設(shè)備”、“裝備”、“機(jī)器”、“資源”互換使用以指示數(shù)據(jù)中心11內(nèi)的至少一個物理機(jī)器,例如服務(wù)器、存儲設(shè)備、通信設(shè)備和它們的組合。數(shù)據(jù)中心11通常用于提供系統(tǒng)服務(wù),例如網(wǎng)絡(luò)托管、數(shù)據(jù)倉儲等。計算機(jī)室空調(diào)單元(CRAC)指冷卻數(shù)據(jù)中心11的一個或多個冷卻單元。CRAC消耗大量功率,因此占據(jù)數(shù)據(jù)中心11的總功率成本的很大百分比。數(shù)據(jù)中心11內(nèi)的室溫因位置的不同而有所變化,具體取決于多個因素。數(shù)據(jù)中心11包括數(shù)據(jù)收集基礎(chǔ)架構(gòu)12,其從數(shù)據(jù)中心11的各種監(jiān)視/管理應(yīng)用收集包括輸入20在內(nèi)的信息。數(shù)據(jù)收集基礎(chǔ)架構(gòu)12還跟蹤數(shù)據(jù)中心11的使用信息以通知用戶數(shù)據(jù)中心11的執(zhí)行是否達(dá)到服務(wù)水平目標(biāo)(SLO)。SLO規(guī)定數(shù)據(jù)中心11在服務(wù)水平協(xié)議(SLA)之下提供的相應(yīng)服務(wù)的所需服務(wù)性能水平。數(shù)據(jù)收集基礎(chǔ)架構(gòu)12的實例可以包括(除其他事項外)諸如Maximo*5 Asset Management之類的常規(guī)資產(chǎn)管理軟件、溫度傳感器網(wǎng)絡(luò)、IBMTotalStorageeProductivity Center (TPC)數(shù)據(jù)收集基礎(chǔ)架構(gòu)以及它們的組合。(IBM、Maximo和TotalStorage是國際商業(yè)機(jī)器公司在美國的注冊商標(biāo))。
輸入20表不功率優(yōu)化器30用于產(chǎn)生輸出80的因素。輸入20包括物理設(shè)備映射21、設(shè)備溫度分布圖22、設(shè)備配置23以及應(yīng)用映射24。物理設(shè)備映射21以三維(3D)坐標(biāo)(x,y,z)形式表示數(shù)據(jù)中心11的所有設(shè)備的物理布局/放置。3D坐標(biāo)是在數(shù)據(jù)中心11中準(zhǔn)確定位垂直堆放在機(jī)架中的每個設(shè)備所必需的。通過物理設(shè)備映射21表示的數(shù)據(jù)中心11內(nèi)的設(shè)備的物理布局將影響數(shù)據(jù)中心11的熱動力學(xué)和工作溫度,因此影響數(shù)據(jù)中心11的溫度控制所消耗的電量。設(shè)備溫度分布圖22表示在數(shù)據(jù)中心11的每個設(shè)備的相應(yīng)入口處測量的溫度的集合。設(shè)備溫度分布圖22以相應(yīng)3D矩陣T(x,y, z) =t表示,其中t表示設(shè)備(x,y,z)的入口溫度。設(shè)備配置23表示數(shù)據(jù)中心11的每個設(shè)備的配置。在本發(fā)明的一個實施例中,設(shè)備配置23包括{ID,TEMP},其中ID是指示每個設(shè)備是服務(wù)器還是存儲設(shè)備的標(biāo)識符,并且其中TEMP是每個設(shè)備的離散利用率水平(包括{idle,busy})的設(shè)備相應(yīng)溫度。如果設(shè)備在 第一利用率水平“idle (空閑)”,則設(shè)備處于基礎(chǔ)溫度。如果設(shè)備在第二利用率水平“busy(繁忙)”,則設(shè)備處于峰值溫度。應(yīng)用映射24表示有關(guān)如何將應(yīng)用虛擬映射到服務(wù)器和存儲設(shè)備以及有關(guān)如何在數(shù)據(jù)中心11的設(shè)備之間分配應(yīng)用的工作負(fù)載的信息。應(yīng)用映射24也稱為虛擬機(jī)(VM)映射。應(yīng)用映射24將設(shè)備的使用表示為總體應(yīng)用工作負(fù)載的函數(shù)。通過應(yīng)用配置和/或放置的更改來修改映射值。功率優(yōu)化器30獲得來自數(shù)據(jù)中心11的輸入20并產(chǎn)生包括優(yōu)化后的應(yīng)用映射81和預(yù)期的功率節(jié)省82的輸出80。功率優(yōu)化器30包括候選工作負(fù)載解決方案生成器35、模型生成器40以及工作負(fù)載調(diào)整器70。參見下面圖2的描述以了解功率優(yōu)化器30執(zhí)行的步驟。候選工作負(fù)載解決方案生成器35生成表示一組工作負(fù)載到服務(wù)器和存儲裝置的組合的映射的至少一個候選工作負(fù)載解決方案Χ_—。該組工作負(fù)載對于所有候選工作負(fù)載解決方案都是固定的,并且針對包括服務(wù)器和存儲裝置的不同資源組合產(chǎn)生相應(yīng)映射。功率優(yōu)化器30評估候選工作負(fù)載解決方案以生成輸出80的工作負(fù)載分配。模型生成器40獲得來自數(shù)據(jù)中心11的輸入20并生成預(yù)測模型。預(yù)測模型包括熱模型、設(shè)備功率模型以及設(shè)備性能模型。每個預(yù)測模型都被存儲為功率優(yōu)化器30使用的一組計算機(jī)可執(zhí)行規(guī)則,以便從每個預(yù)測模型的一組預(yù)定義參數(shù)分別計算預(yù)測結(jié)果。模型生成器40通過使用輸入20的設(shè)備配置23和應(yīng)用映射24生成設(shè)備功率模型和設(shè)備性能模型。模型生成器40包括溫度預(yù)測器50和性能預(yù)測器60。溫度預(yù)測器50創(chuàng)建熱模型,所述熱模型是動態(tài)預(yù)測數(shù)據(jù)中心11的溫度的數(shù)學(xué)模型。除其他事項外,在熱模型中考慮的熱因素的實例可以是相應(yīng)設(shè)備入口溫度等。設(shè)備溫度分布圖22中的最高設(shè)備入口溫度確定了數(shù)據(jù)中心11內(nèi)的冷卻單元的工作設(shè)置、冷卻單元的工作效率,因此確定冷卻數(shù)據(jù)中心11消耗的冷卻成本和功率。除其他事項外,每個設(shè)備入口溫度受數(shù)據(jù)中心11內(nèi)的設(shè)備的物理布局(如物理設(shè)備映射21中所表示)、設(shè)備配置23、工作負(fù)載分配(如應(yīng)用映射24中所表示)的影響。參見下面圖IB的描述以了解溫度預(yù)測器50的組件,以及下面圖3以了解溫度預(yù)測器50執(zhí)行的步驟。性能預(yù)測器60獲得由模型生成器40生成的設(shè)備性能模型以及由候選工作負(fù)載解決方案生成器35生成的候選工作負(fù)載解決方案作為輸入。性能預(yù)測器60生成包括每個候選工作負(fù)載解決方案的相應(yīng)預(yù)期性能的輸出。參見下面圖4的描述以了解性能預(yù)測器60執(zhí)行的步驟。工作負(fù)載調(diào)整器70借助預(yù)測模型和遷移成本模型評估每個候選工作負(fù)載解決方案的相應(yīng)性能、功耗和溫度,并生成包括優(yōu)化后的應(yīng)用映射81和預(yù)期的功率節(jié)省82的輸出80。優(yōu)化后的應(yīng)用映射81表示優(yōu)化數(shù)據(jù)中心11的功耗的至少一個工作負(fù)載分配。預(yù)期的功率節(jié)省82是減少的功耗量的多倍,所述減少的功耗量分別與優(yōu)化后的應(yīng)用映射81的每個實例關(guān)聯(lián)。在工作負(fù)載調(diào)整器70中,遷移成本模型捕獲性能/電力/可用性權(quán)衡并在從當(dāng)前工作負(fù)載分配到選定候選工作負(fù)載解決方案的轉(zhuǎn)變中量化性能下降以發(fā)現(xiàn)滿足數(shù)據(jù)中心11的性能要求并消耗最少功率的工作負(fù)載分配。在本說明書中,術(shù)語“優(yōu)化”指在數(shù)據(jù)中心11的虛擬化裝備之間動態(tài)調(diào)整工作負(fù)載以生成更少的熱量,同時提供相同水平的服務(wù),因此減少數(shù)據(jù)中心11內(nèi)的溫度控制必需的電量。參見下面圖5的描述以了解工作負(fù)載調(diào)整 器70執(zhí)行的步驟。 圖IB示出了根據(jù)本發(fā)明的實施例的上面圖IA的溫度預(yù)測器50。溫度預(yù)測器從來自數(shù)據(jù)中心的物理設(shè)備映射、設(shè)備配置以及應(yīng)用映射生成至少一個樣本數(shù)據(jù)。所述至少一個樣本數(shù)據(jù)的第一對樣本數(shù)據(jù)(P1,F(xiàn)1)包括第一樣本功率分布圖Pl和第一樣本流分布圖F1。第一樣本功率分布圖Pl表不數(shù)據(jù)中心的功耗的樣本實例,包括數(shù)據(jù)中心的各個設(shè)備的功耗量。第一樣本流分布圖Fl表示數(shù)據(jù)中心內(nèi)基于數(shù)據(jù)中心的設(shè)備使用的樣本熱流。第一對樣本數(shù)據(jù)(P1,F(xiàn)1)在實際值的相應(yīng)范圍內(nèi)隨機(jī)生成以實現(xiàn)仿真熱動力學(xué)的目的。計算流體動力學(xué)(CFD)仿真器51獲得多對樣本數(shù)據(jù)(Pn,F(xiàn)n)作為輸入并生成對應(yīng)于每對樣本數(shù)據(jù)(Pn,F(xiàn)n)的多個樣本溫度分布圖Τη。第一樣本溫度分布圖Tl表示數(shù)據(jù)中心內(nèi)的各個設(shè)備的一組仿真入口溫度,其中數(shù)據(jù)中心的功耗和熱流由第一對樣本數(shù)據(jù)(Pl1Fl)提供。每個樣本溫度分布圖以與來自數(shù)據(jù)中心的輸入的設(shè)備溫度分布圖相同的格式表示,使用由CFD仿真器51仿真的溫度代替如在設(shè)備溫度分布圖中從數(shù)據(jù)中心測量的實際溫度。CFD仿真器51使用多對樣本數(shù)據(jù)并仿真分別對應(yīng)于每對樣本數(shù)據(jù)的多個溫度分布圖,以便產(chǎn)生足夠大的數(shù)據(jù)集以進(jìn)行熱動力學(xué)建模。支持向量機(jī)(SVM)學(xué)習(xí)器52從生成的樣本數(shù)據(jù)(Pn, Fn)以及對應(yīng)于生成的樣本數(shù)據(jù)的仿真樣本溫度分布圖Tn生成熱模型53。所有樣本數(shù)據(jù)對和對應(yīng)的樣本溫度分布圖統(tǒng)稱為SVM學(xué)習(xí)器52的訓(xùn)練數(shù)據(jù)。熱模型53用公式表示數(shù)據(jù)中心的功耗和總體熱流如何影響數(shù)據(jù)中心內(nèi)的各個設(shè)備的入口溫度,如SVM學(xué)習(xí)器52從訓(xùn)練數(shù)據(jù)了解的那樣。實際數(shù)據(jù)對(P,F(xiàn))包括功率分布圖P和對應(yīng)的流分布圖F。功率分布圖P表示數(shù)據(jù)中心的功耗的實際實例,包括從數(shù)據(jù)中心的各個設(shè)備測量的功耗量。流分布圖F表示數(shù)據(jù)中心內(nèi)的測量的熱流的實際實例,其由數(shù)據(jù)中心的與功率分布圖P對應(yīng)的設(shè)備使用確定。支持向量機(jī)(SVM)預(yù)測器54將熱模型53應(yīng)用于實際數(shù)據(jù)對(P,F(xiàn))并生成表示數(shù)據(jù)中心的各個設(shè)備的相應(yīng)入口溫度的溫度分布圖T,如在數(shù)據(jù)中心的功耗和熱流通過實際數(shù)據(jù)對(P,F(xiàn))表示時,由熱模型53預(yù)測的那樣。
圖2是示出根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法的流程圖,所述方法由上面圖IA的系統(tǒng)的功率優(yōu)化器執(zhí)行。在步驟300,功率優(yōu)化器接收來自數(shù)據(jù)中心的輸入并使用模型生成器生成至少一個設(shè)備功率模型和至少一個設(shè)備性能模型。從數(shù)據(jù)中心收集的輸入包括物理設(shè)備映射、設(shè)備溫度分布圖、設(shè)備配置以及應(yīng)用映射,如上面圖IA中所述。模型生成器通過使用常規(guī)功率建模方法以及輸入的設(shè)備配置和應(yīng)用映射創(chuàng)建所述至少一個設(shè)備功率模型。模型生成器還根據(jù)常規(guī)性能建模方法針對每個設(shè)備類型創(chuàng)建所述至少一個設(shè)備性能模型。參見下面圖4中的性能預(yù)測器的描述以了解特定平臺中通過輸入的設(shè)備配置和應(yīng)用映射表示的設(shè)備性能模型的使用。然后功率優(yōu)化器繼續(xù)執(zhí)行步驟310。在本發(fā)明的一個實施例中,模型生成器創(chuàng)建兩個設(shè)備功率模型,包括計算設(shè)備功率模型和存儲設(shè)備功率模型。在本說明書中,術(shù)語“利用率”指示當(dāng)前工作負(fù)載與設(shè)備可以處理的最大工作負(fù)載的比率。設(shè)備的利用率可以具有從{idle,busy}中選擇的一個值,具體取決于比率的范圍。計算設(shè)備功率模型表示與主要執(zhí)行計算的計算設(shè)備的利用率對應(yīng)的計算設(shè)備功耗。除其他事項外,計算設(shè)備的實例可以是服務(wù)器等。如果當(dāng)計算設(shè)備的利用 率為“idle”時計算設(shè)備的功耗是100,則當(dāng)計算設(shè)備為“busy”時,計算設(shè)備功率模型使用130至140范圍內(nèi)的數(shù)字量化計算設(shè)備的功耗。存儲設(shè)備功率模型表示與主要執(zhí)行數(shù)據(jù)操作的存儲設(shè)備的利用率對應(yīng)的存儲設(shè)備功耗。除其他事項外,存儲設(shè)備的實例可以是磁盤陣列等。如果當(dāng)存儲設(shè)備為“idle”時存儲設(shè)備的功耗是100,則當(dāng)存儲設(shè)備為“busy”時,存儲設(shè)備功率模型使用HO至130范圍內(nèi)的數(shù)字量化存儲設(shè)備的功耗。在同一實施例中,每個設(shè)備功率模型具有至少兩個部分,包括表示當(dāng)相應(yīng)設(shè)備為“idle”時的功耗的靜態(tài)值,以及表示當(dāng)相應(yīng)設(shè)備執(zhí)行操作時(即,當(dāng)相應(yīng)設(shè)備為“busy”時)的功耗的第二變量,所述變量隨相應(yīng)設(shè)備的利用率而線性變化。在步驟310,功率優(yōu)化器通過使用候選工作負(fù)載解決方案生成器生成候選工作負(fù)載解決方案,這些解決方案將當(dāng)前工作負(fù)載分配的一組工作負(fù)載映射到多個不同的設(shè)備配置??梢圆捎闷脚_中提供的不同數(shù)量的服務(wù)器-存儲裝置對的所有可能組合作為候選工作負(fù)載解決方案的設(shè)備配置。候選工作負(fù)載解決方案生成器還基于域知識使用試探/最佳實踐設(shè)備配置來創(chuàng)建候選工作負(fù)載解決方案。使候選工作負(fù)載解決方案可用于溫度預(yù)測器和性能預(yù)測器。然后功率優(yōu)化器繼續(xù)執(zhí)行步驟320和330,這兩個步驟可以同時運行。在步驟320,功率優(yōu)化器運行溫度預(yù)測器。溫度預(yù)測器獲得物理設(shè)備映射、設(shè)備溫度檔案的輸入和設(shè)備功率模型,并針對每個候選工作負(fù)載解決方案生成相應(yīng)數(shù)據(jù)中心溫度分布圖。參見下面圖3的描述以了解溫度預(yù)測器的詳細(xì)信息。然后功率優(yōu)化器繼續(xù)執(zhí)行步驟 340。在步驟330,功率優(yōu)化器運行性能預(yù)測器。性能預(yù)測器生成設(shè)備性能模型,并針對每個候選工作負(fù)載解決方案產(chǎn)生性能預(yù)測公式和相應(yīng)預(yù)測性能。參見下面圖4的描述以了解性能預(yù)測器的詳細(xì)信息。然后功率優(yōu)化器繼續(xù)執(zhí)行步驟340。在步驟340,功率優(yōu)化器運行工作負(fù)載調(diào)整器。工作負(fù)載調(diào)整器獲得每個候選工作負(fù)載解決方案的相應(yīng)數(shù)據(jù)中心溫度分布圖和相應(yīng)預(yù)測性能,并生成包括至少一個優(yōu)化的工作負(fù)載分配以及與相應(yīng)優(yōu)化的工作負(fù)載分配對應(yīng)的功率節(jié)省的輸出。參見下面圖5的描述以了解工作負(fù)載調(diào)整器的詳細(xì)信息。然后功率優(yōu)化器繼續(xù)執(zhí)行步驟350。
在步驟350,功率優(yōu)化器存儲由工作負(fù)載調(diào)整器生成的輸出并將所述輸出發(fā)送給用戶。除其他事項外,用戶可以是數(shù)據(jù)中心的管理員等。除其他事項外,用戶隨后通過調(diào)整工作負(fù)載分配、更新數(shù)據(jù)中心的信息(包括輸入)來利用輸出以反映數(shù)據(jù)中心的當(dāng)前狀態(tài)等。然后功率優(yōu)化器終止。圖3是示出根據(jù)本發(fā)明的實施例的一種用于預(yù)測數(shù)據(jù)中心的設(shè)備的熱特征的方法的流程圖,所述方法由功率優(yōu)化器的溫度預(yù)測器執(zhí)行。溫度預(yù)測器以兩個階段操作。在步驟500,溫度預(yù)測器確定是否已經(jīng)針對功率優(yōu)化器創(chuàng)建了熱模型。如果溫度預(yù)測器確定尚不存在熱模型,則溫度預(yù)測器繼續(xù)執(zhí)行從第一階段開始的步驟510,所述第一階段從訓(xùn)練樣本創(chuàng)建熱模型。如果溫度預(yù)測器確定已經(jīng)存在熱模型,則溫度預(yù)測器繼續(xù)執(zhí)行從第二階段開始的步驟550,所述第二階段預(yù)測上面步驟310中的候選工作負(fù)載解決方案的溫度。在步驟510,溫度預(yù)測器執(zhí)行第一階段(稱為熱建模階段)的操作。參見下面圖3A的描述以了解熱建模階段的詳細(xì)信息。 在步驟550,溫度預(yù)測器執(zhí)行第二階段(稱為溫度預(yù)測階段)的操作。參見下面圖3B的描述以了解溫度預(yù)測階段的詳細(xì)信息。圖3A是示出根據(jù)本發(fā)明的實施例的功率優(yōu)化器的溫度預(yù)測器的熱建模階段的流程圖。在步驟520,溫度預(yù)測器取回來自輸入的物理設(shè)備映射、設(shè)備溫度分布圖以及來自模型生成器的數(shù)據(jù)中心的功率模型。可以將物理設(shè)備映射和設(shè)備溫度分布圖從輸入提供給功率優(yōu)化器。數(shù)據(jù)中心的功率模型基于考慮了與功率分布圖結(jié)合的相應(yīng)設(shè)備使用的仿真或分析方法。數(shù)據(jù)中心的功率模型被定義為三維矩陣,所述三維矩陣表示數(shù)據(jù)中心的各種設(shè)備依照相應(yīng)設(shè)備功率模型消耗的電力。在步驟520之后,溫度預(yù)測器繼續(xù)執(zhí)行步驟530。在步驟530,溫度預(yù)測器生成訓(xùn)練樣本,其包括一對包含樣本功率分布圖和樣本流分布圖的樣本數(shù)據(jù),以及分別對應(yīng)于該對樣本數(shù)據(jù)的樣本入口溫度分布圖。溫度預(yù)測器首先通過采樣生成多對樣本數(shù)據(jù)(功率分布圖Pu、流分布圖Fn),然后通過使用常規(guī)計算流體動力學(xué)(CFD)仿真器仿真樣本功率分布圖和樣本流分布圖來生成對應(yīng)的樣本入口溫度分布圖。每個樣本功率分布圖表示數(shù)據(jù)中心的相應(yīng)功耗。相應(yīng)功耗可以被表示為數(shù)據(jù)中心的每個設(shè)備生成的熱量。每個樣本流分布圖表示數(shù)據(jù)中心的每個設(shè)備中的風(fēng)扇的相應(yīng)流速。訓(xùn)練樣本可用于步驟540。然后溫度預(yù)測器繼續(xù)執(zhí)行步驟540。在本發(fā)明的一個實施例中,溫度預(yù)測器利用Flo VENT 計算流體動力學(xué)(CFD)仿真器從樣本功率分布圖和樣本流分布圖生成樣本入口溫度分布圖。(FloVENT是MentorGraphics Corporation在美國的注冊商標(biāo)。)在步驟540,溫度預(yù)測器通過針對在步驟530生成的訓(xùn)練樣本應(yīng)用機(jī)器學(xué)習(xí)過程來創(chuàng)建熱模型。所述熱模型展示數(shù)據(jù)中心內(nèi)的所有設(shè)備的仿真集體熱行為。所述熱模型被表示為一組將功率分布圖和流分布圖中的參數(shù)映射到入口溫度分布圖中的每個入口溫度的函數(shù)。然后溫度預(yù)測器繼續(xù)執(zhí)行上面圖3中溫度預(yù)測器的第二階段的步驟550。在本發(fā)明的一個實施例中,步驟530的機(jī)器學(xué)習(xí)過程是支持向量機(jī)(SVM)學(xué)習(xí)器,所述學(xué)習(xí)器從使用上述Flovent仿真獲得的大型數(shù)據(jù)集來開發(fā)熱模型的數(shù)學(xué)函數(shù)。圖3B是示出根據(jù)本發(fā)明的實施例的功率優(yōu)化器的溫度預(yù)測器的溫度預(yù)測階段的流程圖。在步驟560,溫度預(yù)測器接收在上面圖2的步驟310中創(chuàng)建的候選工作負(fù)載解決方案。然后溫度預(yù)測器繼續(xù)執(zhí)行步驟570。在步驟570,溫度預(yù)測器依照在上面步驟510創(chuàng)建的熱模型,通過使用支持向量機(jī)(SVM)預(yù)測器針對候選工作負(fù)載解決方案計算數(shù)據(jù)中心的溫度分布圖。支持向量機(jī)是一組用于分類和回歸的相關(guān)監(jiān)督式常規(guī)學(xué)習(xí)方法,所述支持向量機(jī)將輸入數(shù)據(jù)視為η維空間中的兩個向量數(shù)據(jù)集,并在η維空間中構(gòu)造分離超平面(separating hyperplane),使得該分離超平面最大化兩個數(shù)據(jù)集之間的邊距。溫度預(yù)測器將數(shù)據(jù)中心的溫度分布圖用公式表示為應(yīng)用和/或虛擬機(jī)到物理資源映射的函數(shù),以便溫度預(yù)測器從數(shù)據(jù)中心的設(shè)備和物理設(shè)備映射的候選工作負(fù)載解決方案的工作負(fù)載值計算數(shù)據(jù)中心的溫度分布圖。然后溫度預(yù)測器終止,功率優(yōu)化器繼續(xù)執(zhí)行上面圖2中的步驟340的工作負(fù)載調(diào)整器。圖4是示出根據(jù)本發(fā)明的實施例的一種用于預(yù)測數(shù)據(jù)中心的設(shè)備的性能的方法的流程圖,所述方法由功率優(yōu)化器的性能預(yù)測器執(zhí)行。 在步驟610,性能預(yù)測器取回在步驟300生成的設(shè)備性能模型以及與性能特征相關(guān)的輸入,所述性能特征包括數(shù)據(jù)中心的設(shè)備配置和應(yīng)用映射。所述設(shè)備配置和應(yīng)用映射(它們影響平臺上的應(yīng)用的性能)用于創(chuàng)建平臺上的應(yīng)用的性能預(yù)測模型。所述平臺包括至少一個服務(wù)器和至少一個存儲設(shè)備。在本說明書中,術(shù)語“服務(wù)器”與術(shù)語“計算設(shè)備”互換使用。設(shè)備配置描述如何在平臺中配置設(shè)備,而應(yīng)用映射描述如何在平臺上分配應(yīng)用的工作負(fù)載。平臺的每個組件設(shè)備對應(yīng)于在上面圖2的步驟300生成的相應(yīng)設(shè)備性能模型。然后性能預(yù)測器繼續(xù)執(zhí)行步驟620。在步驟620,性能預(yù)測器構(gòu)造從平臺的性能特征輸入和設(shè)備性能模型得出的性能預(yù)測模型。性能預(yù)測模型可應(yīng)用于平臺的性能特征輸入的變型。例如,當(dāng)平臺的設(shè)備配置為(two server, two storage)時,使用從設(shè)備配置得出的性能預(yù)測模型來預(yù)測平臺的所有可倉泛設(shè)備配置(single server, single storage) > (single server, two storage) > (twoserver, single storage)以及(two server, two storage)的性能。功率優(yōu)化器使用性能預(yù)測模型評估在上面圖2的步驟310生成的每個候選工作負(fù)載解決方案的性能。參見下面圖5的描述以了解評估每個候選功率優(yōu)化解決方案的詳細(xì)信息。然后性能預(yù)測器繼續(xù)執(zhí)行步驟630。本發(fā)明的性能預(yù)測模型(下面等式I至等式4)在預(yù)測數(shù)據(jù)中心的性能中考慮工作
負(fù)載特征,此特征也稱為執(zhí)行工作負(fù)載的速率,如下所示
r H Ji^iuA-- frequency 一… _5]」()—CP!{W) ~ CPIcor+CPlliwmory [寸式丄]CPI (W) =CPIc JCPImemory [等式 2]其中IPS(W)表示工作負(fù)載W的每秒指令數(shù),frequency指示設(shè)備的工作頻率,CPI(W)表示工作負(fù)載W的每條指令周期數(shù),0 1。_表示在包括高速緩存的處理器的核心中花費的每條指令周期數(shù),以及CPImaray表示在存儲器訪問中花費的每條指令周期數(shù)。以IPS(W)測量的性能是由服務(wù)水平協(xié)議(SLA)規(guī)范確定的量度。一旦配置平臺時針對相應(yīng)設(shè)備確定了設(shè)備的工作頻率,IPS(W)就由CPI (W)確定。CPImm與處理器的工作頻率無關(guān),但CPImemory受存儲設(shè)備的工作頻率的影響,如下所示
CPIcore=CPI (f J (W) =CPIcore (^) +MPI X Mlatency X BF (^)[等式 3]CPIfflemory=CPI (f2) (W)=CPIcore (f\) +MPI X Mlatency X (Vf1) X BF (f\)[等式 4]其中是服務(wù)器的第一工作頻率,f2是存儲設(shè)備的第二工作頻率,MPI指示每條指令存儲器訪問數(shù),Mlatmey是存儲器延遲,指從針對存儲器訪問發(fā)出存儲器地址到使存儲器地址的數(shù)據(jù)可用所經(jīng)過的時間,BF是塊因數(shù),其量化單個存儲器塊中的存儲器訪問和核心處理的并行性(表示固定大小的記錄數(shù))。性能預(yù)測器使用上面等式I至等式4的性能預(yù)測模型來預(yù)測配置不同存儲器類型、高速緩存大小等的各種平臺的工作負(fù)載行為。常規(guī)性能模型集中于預(yù)測相同的同構(gòu)計算綁定工作負(fù)載如何在各種系統(tǒng)配置(包括具有不同時鐘速度、不同存儲器大小和高速緩存大小的不同處理器)中運行。
除了設(shè)備的工作負(fù)載和工作頻率之外,性能預(yù)測器還考慮在相應(yīng)架構(gòu)細(xì)節(jié)方面有所不同的多個不同服務(wù)器系統(tǒng),并結(jié)合了相應(yīng)服務(wù)器系統(tǒng)的不同類型的存儲設(shè)備(如所述輸入的設(shè)備配置所提供的那樣)。性能預(yù)測器選擇有限數(shù)量的服務(wù)器架構(gòu)并向上面等式I至等式4的性能預(yù)測模型應(yīng)用相應(yīng)服務(wù)器架構(gòu)。所選擇的相應(yīng)服務(wù)器架構(gòu)可以具有多個服務(wù)器。用于異構(gòu)服務(wù)器和存儲設(shè)備組合的性能預(yù)測模型用公式表示為IPS(W、(S,d,)=^^ [等式 1A]CPI (W) = Σ iCPI (W) (s, (Ii)= Σ i (CPIserver (s, (Ii) +CPItorage (s, (Ii))[等式 2A]其中IPS(W) (s,(Ii)指示具有固定服務(wù)器配置s和第i個存儲設(shè)備配置Cli的平臺中的工作負(fù)載W的每秒指令數(shù),其中CPI (W) (S,Cli)指示具有固定服務(wù)器配置S和第i個存儲設(shè)備配置Cli的平臺中的工作負(fù)載W的每條指令周期數(shù),其中Sfraiumc;y指示在固定服務(wù)器配置s中表示的服務(wù)器的第三工作頻率。在等式2A中,CPI(W)表示工作負(fù)載W的每條指令周期數(shù),對于平臺中的所有存儲設(shè)備配置,其被用公式表示為具備固定服務(wù)器配置s和第i個存儲設(shè)備配置Cli的平臺中的CPIsotvct與CPIstoage的總和。CPIsotvct表示當(dāng)工作負(fù)載W可以完全從存儲器運行而無需任何磁盤訪問時,平臺中的服務(wù)器消耗的周期數(shù)。CPIsotvot指示任何工作負(fù)載的每條指令周期數(shù)CPIsotvot獨立于系統(tǒng)頻率和存儲配置。CPIstOTage表示平臺中的存儲設(shè)備消耗的周期數(shù)。CPIstmage表示存儲屬性對用于處理工作負(fù)載的周期數(shù)CPI (W)的影響。除其他事項外,在CPIstoage中考慮的存儲屬性可以是延遲、帶寬、以磁盤塊因數(shù)衡量的并行性等。性能預(yù)測器首先表征不同工作負(fù)載的CPIstOTage以預(yù)測同一工作負(fù)載W在具有不同存儲配置的同一服務(wù)器上的性能。在本發(fā)明的一個實施例中,服務(wù)器消耗的周期數(shù)和存儲設(shè)備消耗的周期數(shù)用公式表示如下CPIerver (s, (Ii) = CPIserver(S)[等式 3A]CPIstorage (s, (Ii) = DioPIXAvgaUNlatency(Cli) (W)) XDBF [等式 4A]其中DIOPI指示每條指令磁盤輸入/輸出數(shù),其中AvgaUNlateney(Cli) (W))指示工作負(fù)載為W的第i個存儲設(shè)備配置Cli中的相應(yīng)邏輯卷單元的平均延遲。相應(yīng)邏輯卷單元的延遲(LUNlatemy)是存儲配置參數(shù)和工作負(fù)載特征的函數(shù)。除其他事項外,存儲配置參數(shù)的實例可以是組成磁盤(constituent disk)延遲、組成磁盤數(shù)、組成磁盤的隨機(jī)/順序帶寬、高速緩存大小等。除其他事項外,工作負(fù)載特征的實例可以是隨機(jī)性、順序性、高速緩存命中率等。LUNlatency是影響平臺性能的主要配置參數(shù),并且LUNlatomy的回歸模型由性能預(yù)測器使用。在本發(fā)明的另一個實施例中,步驟610和620可以由模型生成器執(zhí)行。在同一實施例中,性能預(yù)測器獲得由模型生成器生成的至少一個性能預(yù)測模型作為輸入并生成數(shù)據(jù)中心的預(yù)期性能值,如在上面步驟630所述的那樣。在步驟630,性能預(yù)測器預(yù)測與相應(yīng)平臺配置關(guān)聯(lián)的每個候選工作負(fù)載解決方案的相應(yīng)性能。性能預(yù)測器將性能預(yù)測模型應(yīng)用于輸入的性能特征、候選工作負(fù)載解決方案以及每個候選工作負(fù)載解決方案的相應(yīng)平臺配置。以每秒指令數(shù)(IPS)等量化預(yù)測的性能。然后性能預(yù)測器繼續(xù)執(zhí)行步驟640。在步驟640,性能預(yù)測器將所有候選工作負(fù)載解決方案的預(yù)測性能存儲到存儲設(shè) 備并使其可用于工作負(fù)載調(diào)整器。然后性能預(yù)測器終止,功率優(yōu)化器繼續(xù)執(zhí)行上面圖2的步驟340。圖5是示出根據(jù)本發(fā)明的實施例的一種用于動態(tài)調(diào)整數(shù)據(jù)中心的設(shè)備之間的工作負(fù)載的方法的流程圖,所述方法由功率優(yōu)化器的工作負(fù)載調(diào)整器執(zhí)行。在步驟710,工作負(fù)載調(diào)整器從性能預(yù)測器取回所有候選工作負(fù)載解決方案的預(yù)測性能。工作負(fù)載調(diào)整器繼續(xù)執(zhí)行步驟720。在步驟720,工作負(fù)載調(diào)整器從當(dāng)前工作負(fù)載分配Xmt估計在上面圖2的步驟310生成的每個候選工作負(fù)載解決方案的功率成本以及每個候選工作負(fù)載解決方案的遷移成本。然后工作負(fù)載調(diào)整器繼續(xù)執(zhí)行步驟730。候選工作負(fù)載解決方案X_didate的功率成本被計算為候選工作負(fù)載解決方案Xcandidate中的所有組件設(shè)備的累積組件水平功率使用與候選工作負(fù)載解決方案Xcandidato的預(yù)測冷卻成本的總和,即,PowerCost(Xcandidate) =TotalComponentPowerUsage (Xcandidate) +CoolingCost (Xcandidate)其中TotalComponentPowerUsage(Xeandidate)是根據(jù)相應(yīng)設(shè)備功率模型基于在候選工作負(fù)載解決方案中采用的設(shè)備的利用率水平的候選工作負(fù)載解決方案的所有組件功率使用的總和,其中CoolingCost (XcandidaJ根據(jù)上面圖3的溫度預(yù)測器從候選工作負(fù)載解決方案的數(shù)據(jù)中心的預(yù)測最高溫度來計算。從對應(yīng)于候選工作負(fù)載解決方案X_didate的工作負(fù)載特征的過渡成本模型以及在候選工作負(fù)載解決方案中采用的設(shè)備的設(shè)備功率模型來計算從當(dāng)前工作負(fù)載分配Xcurrent到候選工作負(fù)載解決方案X。—的遷移成本?;谠O(shè)備功率模型和設(shè)備性能模型,遷移成本量化從當(dāng)前工作負(fù)載分配Xcurrent遷移到候選工作負(fù)載解決方案X_didate期間的性能下降和/或服務(wù)損失。除其他事項外,工作負(fù)載特征可以是確定遷移期間允許的性能下降水平的服務(wù)水平目標(biāo)(SLO)要求、工作負(fù)載的可用性和性能要求等。考慮工作負(fù)載特征以反映所涉及的各種類型工作負(fù)載和應(yīng)用的不同性能要求。在本發(fā)明的一個實施例中,工作負(fù)載遷移受到更嚴(yán)格的限制,因為數(shù)據(jù)中心的生產(chǎn)系統(tǒng)中的性能要求更高。由于接近完美的可用性要求,生產(chǎn)系統(tǒng)的應(yīng)用可能不容許在遷移期間出現(xiàn)性能下降。在步驟730,工作負(fù)載調(diào)整器計算每個候選工作負(fù)載解決方案的總體成本。然后工作負(fù)載調(diào)整器繼續(xù)執(zhí)行步驟740。候選工作負(fù)載解決方案X_didate的總體成本被計算為候選工作負(fù)載解決方案Xcandidate的功率成本與候選工作負(fù)載解決方案x_didate的遷移成本的總和,即OverallCost(Xcandidate) = PowerCost (Xcandidate) +MigrationCost (Xcandidate)在步驟740,工作負(fù)載調(diào)整器在所有候選工作負(fù)載解決方案之中選擇具有最低總體成本的最佳工作負(fù)載解決方案x_imal。在另一個實施例中,根據(jù)最低遷移成本選擇最佳工作負(fù)載解決方案Xtjptimal,以便根據(jù)服務(wù)水平目標(biāo)(SLO)要求的細(xì)節(jié)在遷移期間最小化性能下降。然后工作負(fù)載調(diào)整器繼續(xù)執(zhí)行步驟750。
在步驟750,工作負(fù)載調(diào)整器從最佳工作負(fù)載解決方案生成優(yōu)化后的應(yīng)用映射以及針對優(yōu)化后的應(yīng)用映射生成預(yù)期的功率節(jié)省。然后工作負(fù)載調(diào)整器終止,功率優(yōu)化器繼續(xù)執(zhí)行上面圖2的步驟350。圖6示出了根據(jù)本發(fā)明的實施例的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的計算機(jī)系統(tǒng)。計算機(jī)系統(tǒng)90包括處理器91、耦合到處理器91的輸入設(shè)備92、耦合到處理器91的輸出設(shè)備93以及計算機(jī)可讀存儲單元,所述計算機(jī)可讀存儲單元包括均耦合到處理器91的存儲設(shè)備94和95。除其他事項外,輸入設(shè)備92可以是鍵盤、鼠標(biāo)、小鍵盤、觸摸屏、語音識別設(shè)備、傳感器、網(wǎng)絡(luò)接口卡(NIC)、網(wǎng)際協(xié)議語音/視頻(VOIP)適配器、無線適配器、電話適配器、專用電路適配器等。除其他事項外,輸出設(shè)備93可以是打印機(jī)、繪圖儀、計算機(jī)屏幕、磁帶、可移動硬盤、軟盤、NIC、V0IP適配器、無線適配器、電話適配器、專用電路適配器、音頻和/或視覺信號生成器、發(fā)光二極管(LED)等。除其他事項外,存儲設(shè)備94和95可以是高速緩存、動態(tài)隨機(jī)存取存儲器(DRAM)、只讀存儲器(ROM)、硬盤、軟盤、磁帶、諸如光盤(CD)或數(shù)字視頻盤(DVD)之類的光存儲裝置等。存儲設(shè)備95包括計算機(jī)代碼97,計算機(jī)代碼97是包括計算機(jī)可執(zhí)行指令的計算機(jī)程序代碼。除其他事項外,計算機(jī)代碼97包括用于根據(jù)本發(fā)明通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的算法。處理器91執(zhí)行計算機(jī)代碼97。存儲設(shè)備94包括輸入數(shù)據(jù)96。輸入數(shù)據(jù)96包括計算機(jī)代碼97所需的輸入。輸出設(shè)備93顯示來自計算機(jī)代碼97的輸出。存儲設(shè)備94和95之一或兩者(或一個或多個未在圖6中示出的其他存儲設(shè)備)可以用作具有包含在其中的計算機(jī)可讀程序代碼和/或具有存儲在其中的其他數(shù)據(jù)的計算機(jī)可讀存儲介質(zhì)(或計算機(jī)可用存儲介質(zhì)或程序存儲設(shè)備),其中計算機(jī)可讀程序代碼包括計算機(jī)代碼97。通常,計算機(jī)系統(tǒng)90的計算機(jī)程序產(chǎn)品(或備選地,制品)可以包括所述計算機(jī)可讀存儲介質(zhì)(或所述程序存儲設(shè)備)。服務(wù)提供商可以對本發(fā)明的任何組件進(jìn)行部署、管理、服務(wù)等,服務(wù)提供商針對本發(fā)明的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的過程來部署或集成計算基礎(chǔ)架構(gòu)。因此,本發(fā)明披露了一種用于支持計算機(jī)基礎(chǔ)架構(gòu)的過程,包括集成、托管、維護(hù)計算機(jī)可讀代碼并將其部署到計算系統(tǒng)(例如,計算系統(tǒng)90)內(nèi),其中與計算系統(tǒng)結(jié)合的代碼能夠執(zhí)行一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。在另一個實施例中,本發(fā)明提供了一種基于訂閱、廣告和/或費用執(zhí)行本發(fā)明的過程步驟的方法。即,諸如解決方案集成商之類的服務(wù)提供商可以對本發(fā)明的一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的過程進(jìn)行創(chuàng)建、維護(hù)、支持等。在這種情況下,服務(wù)提供商可以針對一個或多個客戶對執(zhí)行本發(fā)明的過程步驟的計算機(jī)基礎(chǔ)架構(gòu)進(jìn)行創(chuàng)建、維護(hù)、支持等。服務(wù)提供商又可以根據(jù)訂閱和/或費用協(xié)議從客戶(多個)處接收付款,和/或服務(wù)提供商可以通過向一個或多個第三方銷售廣告內(nèi)容來接收付款。盡管圖6將計算機(jī)系統(tǒng)90示為硬件和軟件的特定配置,但如本領(lǐng)域的技術(shù)人員所公知的那樣,可以使用硬件和軟件的任何配置以實現(xiàn)上面結(jié)合圖6的特定計算機(jī)系統(tǒng)90所聲明的目的。例如,存儲設(shè)備94和95可以是單個存儲設(shè)備的各部分而不是單獨的存儲設(shè)備。如本領(lǐng)域的技術(shù)人員將理解的,本發(fā)明可以體現(xiàn)為系統(tǒng)、方法或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可以采取完全硬件實施例、完全軟件實施例(包括固件、駐留軟件、微代碼等)或組合了軟件和硬件方面(在此通??梢员环Q為“電路”、“模塊”或“系統(tǒng)”)的實施例的形式。此外,本發(fā)明可以采取體現(xiàn)在任何有形表達(dá)介質(zhì)(在介質(zhì)中包含計算機(jī)可用程序代碼) 中的計算機(jī)程序產(chǎn)品的形式。可以使用一個或多個計算機(jī)可用或計算機(jī)可讀介質(zhì)94、95的任意組合。術(shù)語計算機(jī)可用介質(zhì)或計算機(jī)可讀介質(zhì)統(tǒng)稱為計算機(jī)可用/可讀存儲介質(zhì)94、95。計算機(jī)可用或計算機(jī)可讀介質(zhì)94、95例如可以是(但不限于)電、磁、光、電磁、紅外線或半導(dǎo)體系統(tǒng)、裝置、設(shè)備或上述的任意適合的組合。計算機(jī)可讀介質(zhì)94、95的更具體的實例(非窮舉的列表)將包括以下項具有一條或多條線的電連接、便攜式計算機(jī)軟盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦寫可編程只讀存儲器(EPROM或閃存)、光纖、便攜式光盤只讀存儲器(CD-ROM)、光存儲設(shè)備、磁存儲設(shè)備或上述的任意適合的組合。要指出的是,計算機(jī)可用或計算機(jī)可讀介質(zhì)94、95甚至可以是程序被打印在其上的紙張或其他適合的介質(zhì),因為所述程序可以通過例如光掃描所述紙張或其他介質(zhì)被電子地捕獲,然后被編譯、解釋或另外以適合的方式被處理(如果必要),然后被存儲在計算機(jī)存儲器中。在本文檔的上下文中,計算機(jī)可用或計算機(jī)可讀介質(zhì)94、95可以是任何能夠包含或存儲由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程序的介質(zhì)。用于執(zhí)行本發(fā)明的操作的計算機(jī)代碼97可以使用包含一種或多種編程語言的任意組合來編寫,所述編程語言包括諸如Java、Smalltalk、C++之類的面向?qū)ο蟮木幊陶Z言以及諸如“C”編程語言或類似的編程語言之類的常規(guī)過程編程語言。計算機(jī)代碼97可以完全地在用戶計算機(jī)上執(zhí)行、部分地在用戶計算機(jī)上執(zhí)行、作為獨立的軟件包、部分地在用戶計算機(jī)上并部分地在遠(yuǎn)程計算機(jī)上執(zhí)行,或者完全地在遠(yuǎn)程計算機(jī)或服務(wù)器上執(zhí)行。在后者的情況中,所述遠(yuǎn)程計算機(jī)可以通過包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)的任何類型網(wǎng)絡(luò)與用戶的計算機(jī)相連,或者可以與外部計算機(jī)進(jìn)行連接(例如,使用因特網(wǎng)服務(wù)提供商通過因特網(wǎng)連接)。參考根據(jù)本發(fā)明的實施例的方法、裝置(系統(tǒng))和計算機(jī)程序產(chǎn)品的流程圖和/或方塊圖對本發(fā)明進(jìn)行描述。將理解,所述流程圖和/或方塊圖的每個方塊以及所述流程圖和/或方塊圖中的方塊的組合可以由計算機(jī)程序指令來實現(xiàn)。在本說明書中,術(shù)語“計算機(jī)程序指令”可與術(shù)語“計算機(jī)代碼97”互換。這些計算機(jī)程序指令可以被提供給通用計算機(jī)、專用計算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器以產(chǎn)生機(jī)器,以便通過所述計算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的所述指令產(chǎn)生用于實現(xiàn)一個或多個流程圖和/或方塊圖方塊中指定的功能/操作的裝置。這些計算機(jī)程序指令也可以被存儲在能夠引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理裝置以特定方式執(zhí)行功能的計算機(jī)可讀介質(zhì)94、95中,以便存儲在所述計算機(jī)可讀介質(zhì)中的所述指令產(chǎn)生一件包括實現(xiàn)在所述一個或多個流程圖和/或方塊圖方塊中指定的功能/操作的指令裝置的制品。所述計算機(jī)程序指令還可被加載到計算機(jī)或其他可編程數(shù)據(jù)處理裝置,以導(dǎo)致在所述計算機(jī)或其他可編程裝置上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實現(xiàn)的過程,從而在所述計算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實現(xiàn)在一個或多個流程圖和/或方塊圖方塊中指定的功能/操作的過程。附圖中的流程圖和方塊圖示出了根據(jù)本發(fā)明的各種實施例的系統(tǒng)、方法和計算機(jī)程序產(chǎn)品的可能實施方式的架構(gòu)、功能和操作。在此方面,所述流程圖或方塊圖中的每個方 塊都可以表示代碼的模塊、段或部分,所述代碼包括用于實現(xiàn)指定的邏輯功能(多個)的一個或多個可執(zhí)行指令。還應(yīng)指出,在某些備選實施方式中,在方塊中說明的功能可以不按圖中說明的順序發(fā)生。例如,示為連續(xù)的兩個方塊可以實際上被基本同時地執(zhí)行,或者某些時候,取決于所涉及的功能,可以以相反的順序執(zhí)行所述方塊。還將指出,所述方塊圖和/或流程圖的每個方塊以及所述方塊圖和/或流程圖中的方塊的組合可以由執(zhí)行指定功能或操作的基于專用硬件的系統(tǒng)或?qū)S糜布陀嬎銠C(jī)指令的組合來實現(xiàn)。權(quán)利要求中的對應(yīng)結(jié)構(gòu)、材料、操作以及所有功能性限定的裝置或步驟的等同替換,旨在包括任何用于與在權(quán)利要求中具體指出的其它單元相組合地執(zhí)行該功能的結(jié)構(gòu)、材料或操作。所給出的對本發(fā)明的描述其目的在于示意和描述,并非是窮盡性的,也并非是要把本發(fā)明限定到所表述的形式。對于所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不偏離本發(fā)明范圍和精神的情況下,顯然可以作出許多修改和變型。對實施例的選擇和說明,是為了最好地解釋本發(fā)明的原理和實際應(yīng)用,使所屬技術(shù)領(lǐng)域的普通技術(shù)人員能夠明了,本發(fā)明可以有適合所要的特定用途的具有各種改變的各種實施方式。
權(quán)利要求
1.一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法,所述方法包括 計算機(jī)系統(tǒng)的處理器接收來自所述數(shù)據(jù)中心的輸入,所述數(shù)據(jù)中心包括至少ー個設(shè)備,所述輸入包括物理設(shè)備映射和當(dāng)前應(yīng)用映射,其中所述物理設(shè)備映射指定所述至少一個設(shè)備在所述數(shù)據(jù)中心內(nèi)的三維位置,并且其中所述當(dāng)前應(yīng)用映射指定所述數(shù)據(jù)中心的應(yīng)用程序如何被虛擬映射到所述至少一個設(shè)備以及所述應(yīng)用程序之間的當(dāng)前工作負(fù)載分配; 所述處理器生成用于所述數(shù)據(jù)中心的至少ー個候選工作負(fù)載解決方案,其中所述至少一個候選工作負(fù)載解決方案中的每個候選工作負(fù)載解決方案表示相應(yīng)應(yīng)用映射,所述相應(yīng)應(yīng)用映射指定所述應(yīng)用程序到所述至少一個設(shè)備的相應(yīng)虛擬映射以及所述應(yīng)用程序之間的相應(yīng)工作負(fù)載分配; 所述處理器借助熱模型計算所述每個候選工作負(fù)載解決方案的相應(yīng)溫度分布圖,其中所述數(shù)據(jù)中心的與所述相應(yīng)溫度分布圖關(guān)聯(lián)的相應(yīng)最高溫度確定了所述每個候選工作負(fù)載解決方案的相應(yīng)功率成本; 所述處理器計算所述每個候選工作負(fù)載解決方案的相應(yīng)性能分布圖以便根據(jù)所述數(shù)據(jù)中心的性能要求評估所述相應(yīng)性能分布圖,其中所述相應(yīng)性能分布圖確定了所述每個候選工作負(fù)載解決方案的相應(yīng)遷移成本;以及 所述處理器將所述數(shù)據(jù)中心的工作負(fù)載從所述當(dāng)前工作負(fù)載分配動態(tài)調(diào)整為最佳エ作負(fù)載解決方案,其中所述最佳工作負(fù)載解決方案是具有所述相應(yīng)功率成本與所述相應(yīng)遷移成本的最低總和的候選工作負(fù)載解決方案。
2.根據(jù)權(quán)利要求I的方法,所述動態(tài)調(diào)整包括 估計所述每個候選工作負(fù)載解決方案的相應(yīng)總體成本,其中所述相應(yīng)總體成本是所述相應(yīng)功率成本與所述相應(yīng)遷移成本的總和,其中根據(jù)所述數(shù)據(jù)中心在采用所述每個候選エ作負(fù)載解決方案以在工作溫度內(nèi)執(zhí)行所述數(shù)據(jù)中心的服務(wù)時消耗的電量來計算所述相應(yīng)功率成本,并且其中根據(jù)將所述數(shù)據(jù)中心的工作負(fù)載從當(dāng)前工作負(fù)載分配調(diào)整為所述每個候選工作負(fù)載解決方案期間出現(xiàn)的性能下降來計算所述相應(yīng)遷移成本; 從所述至少ー個候選工作負(fù)載解決方案中選擇最佳工作負(fù)載解決方案,其中所述最佳工作負(fù)載解決方案具有根據(jù)所述估計的最低總體成本;以及 將所述最佳工作負(fù)載解決方案傳輸?shù)剿鲇嬎銠C(jī)系統(tǒng)的設(shè)備以便部署。
3.根據(jù)權(quán)利要求I的方法,計算所述相應(yīng)溫度分布圖包括 確定所述數(shù)據(jù)中心的熱模型不可用,其中所述熱模型使能根據(jù)所接收的輸入計算所述數(shù)據(jù)中心的當(dāng)前溫度分布圖; 從所述數(shù)據(jù)中心的所述物理設(shè)備映射、設(shè)備溫度分布圖以及設(shè)備配置創(chuàng)建所述數(shù)據(jù)中心的熱模型,其中所述設(shè)備溫度分布圖表示在所述數(shù)據(jù)中心的所述至少一個設(shè)備中的每個設(shè)備的相應(yīng)入口處測量的相應(yīng)溫度,并且其中所述設(shè)備溫度分布圖中的每個設(shè)備溫度分布圖與所述設(shè)備配置中的每個設(shè)備配置關(guān)聯(lián),所述每個設(shè)備配置包括所述每個設(shè)備的相應(yīng)標(biāo)識符和從包括空閑和繁忙的組中選擇的所述每個設(shè)備的相應(yīng)工作狀態(tài);以及 通過將所述熱模型應(yīng)用于所述每個候選工作負(fù)載解決方案來生成所述相應(yīng)溫度分布圖。
4.根據(jù)權(quán)利要求I的方法,計算所述相應(yīng)性能分布圖包括創(chuàng)建確定以每秒指令數(shù)表示的執(zhí)行工作負(fù)載W的速率的性能預(yù)測模型,所述速率被表示為IPS(W),其中所述速率被計算為 其中 frequency指示所述至少一個設(shè)備中的設(shè)備的工作頻率,其中CPI(W)表示工作負(fù)載W的姆條指令周 期數(shù),其中CPI。?!北硎驹谠O(shè)備的核心中執(zhí)行指令時花費的每條指令周期數(shù),其中CPIrarJ皮計算為CPIrare(f:) +MPI XMlatencyXBF(f:),其中CPI_OTy表示在訪問設(shè)備的存儲器以執(zhí)行指令時花費的每條指令周期數(shù),其中CPI_OTy被計算為CPI_ (f\)+MPI XMlatemy X (f2/f\) XBF(f\),其中是核心的第一工作頻率,f2是存儲器的第二工作頻率,MPI指示每條指令存儲器訪問數(shù),Mlatency是存儲器延遲,BF是塊因數(shù);以及 通過將所述性能預(yù)測模型應(yīng)用于所述每個候選工作負(fù)載解決方案來生成所述相應(yīng)性能分布圖。
5.根據(jù)權(quán)利要求I的方法,計算所述相應(yīng)性能分布圖包括 創(chuàng)建在具有服務(wù)器配置s和第i個存儲設(shè)備配置Cli的平臺上確定以毎秒指令數(shù)表示的執(zhí)行工作負(fù)載W的速率的性能預(yù)測模型,所述速率被表示為IPS(W) (s,(Ii),其中所述速率被計算為ニ z (ネ巧ポ,),其中s—指示在所述服務(wù)器配置S中表示的服務(wù)器的工作頻率,其中CPI (W)表示平臺中工作負(fù)載W的每條指令周期數(shù),其中 E iCPI (W) Udi) =E JCPIserverUdi)+CPIstorageUdi)),其中 CPIserverUdi)表示當(dāng)工作負(fù)載W完全從存儲器運行而無需任何磁盤訪問時平臺中的服務(wù)器消耗的第一周期數(shù),其中CPIserver (s,(Ii)被計算為CPIserver(S),其中CPIstOTage(s,(Ii)表示平臺中的存儲設(shè)備在平臺中執(zhí)行工作負(fù)載W時消耗的第二周期數(shù),其中CPIstOTage(s,(Ii)被計算為DioPIXAvgaUNlatency(Cli) (W)) XDBF,其中DIOPI指示每條指令磁盤輸入/輸出數(shù),其中AvgdUNlatency(Cli) (W))指示工作負(fù)載為W時第i個存儲設(shè)備配置Cli中的相應(yīng)邏輯卷單元的平均延遲,并且其中DBF是磁盤塊因數(shù);以及 通過將所述性能預(yù)測模型應(yīng)用于所述每個候選工作負(fù)載解決方案來生成所述相應(yīng)性能分布圖。
6.一種計算機(jī)程序產(chǎn)品,包括 具有包含在其中的計算機(jī)可讀程序代碼的計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀程序代碼包含指令,所述指令在由計算機(jī)執(zhí)行時,執(zhí)行根據(jù)權(quán)利要求I至5中的任ー權(quán)利要求的用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。
7.一種計算機(jī)系統(tǒng),所述計算機(jī)系統(tǒng)包括處理器和耦合到所述處理器的計算機(jī)可讀存儲單元,所述計算機(jī)可讀存儲単元包含指令,所述指令在由所述處理器運行時,實現(xiàn)根據(jù)權(quán)利要求I至5中的任ー權(quán)利要求的用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。
8.一種用于支持計算機(jī)基礎(chǔ)架構(gòu)的過程,所述過程包括提供至少ー個支持服務(wù)以便執(zhí)行在計算系統(tǒng)中創(chuàng)建、集成、托管、維護(hù)和部署計算機(jī)可讀代碼中的至少ー項,其中與所述計算系統(tǒng)結(jié)合的代碼能夠執(zhí)行根據(jù)權(quán)利要求I至5中的任ー權(quán)利要求的用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的方法。
全文摘要
一種用于通過動態(tài)工作負(fù)載調(diào)整來優(yōu)化數(shù)據(jù)中心的功耗的系統(tǒng)和關(guān)聯(lián)方法。將所述數(shù)據(jù)中心的當(dāng)前工作負(fù)載分配轉(zhuǎn)變?yōu)橐宰畹凸牧刻峁┛山邮艿姆?wù)水平的最佳工作負(fù)載解決方案。對應(yīng)于最佳工作負(fù)載解決方案的功率成本與遷移成本的總和是對應(yīng)于相應(yīng)候選工作負(fù)載解決方案的所有總和之中最低的。通過所述數(shù)據(jù)中心的最高溫度和每個候選工作負(fù)載解決方案的附帶冷卻成本來確定所述功率成本。通過在將所述數(shù)據(jù)中心的工作負(fù)載分配從當(dāng)前工作負(fù)載分配轉(zhuǎn)變?yōu)槊總€候選工作負(fù)載解決方案期間出現(xiàn)的性能下降來確定所述遷移成本。
文檔編號G06F9/50GK102770847SQ201180010916
公開日2012年11月7日 申請日期2011年2月7日 優(yōu)先權(quán)日2010年2月26日
發(fā)明者N·曼達(dá)格雷, S·M·烏坦昌達(dá)尼, S·S·穆爾蒂, 周嬪 申請人:國際商業(yè)機(jī)器公司