新四季網

並行計算集群電源的能耗控制方法

2023-10-06 03:00:19


專利名稱::並行計算集群電源的能耗控制方法
技術領域:
:本發明屬於網絡並行計算集群電源的能耗控制的
技術領域:

背景技術:
:現有的並行集群系統耗電量巨大,但實際利用率僅在50%左右,造成了電能的極大浪費,而實際上電費開支也是很龐大的。因此,如何有效節約電能的消耗,又不造成性能的下降,是本技術所要解決的問題。DVS是dynamicvoltagescaling動態電壓調整的簡稱。研究結果顯示,處理器的功率跟它的電壓幾乎是線性關係,能耗跟電壓的三次方成正比關係,而處理器又是計算機中能耗的大頭,那麼根據負載的情況動態調整處理器的電壓就能夠節省電能的消耗。目前DVS在標準ACPI和IPMI中申明支持。ACPI是高級配置的電源接口規範的簡稱,IPMI是智能平臺管理接口的簡稱。DVS是最近研究的熱點,但它在cluster上的應用現在主要還停留在研究階段,主要原因是,支持DVS的ACPI現在在一般集群上還都沒有完全實現,也就是說,現在於一般的集群,是沒辦法進行DVS的。一些系統,比如webserver對內存的使用有一定的規律性,那麼,可以通過對內存的空閒間隔時間的建模以及預測,來設置內存的能耗狀態,從而減少內存的能源消耗。參見Disk-awareRequestDistribution-basedWebServerPowerManagement,LinZhong,DepartmentofElectricalEngineeringPrinceton。同上,磁碟的使用也有一定規律性。依據負載的分布以及系統得性能來動態的關閉或者啟用硬碟。參見A.R.Lebeck,X.Fan,H.Zengh,andC.S.Ellis.Powerawarepageallocation.InProceedingsoftheNinthInternationalConferenceonArchitecturalSupportforProgrammingLanguagesandOperatingSystems(ASPLOSIX),2000.而對內存和磁碟的管理,由於缺乏相應的硬體的支持,現有的研究更多的是停留在模擬的階段;而且內存和磁碟也不是計算機中功耗的主要部件,它們在實際系統中耗電比例很小(一塊普通磁碟正常工作的功耗大約是2、3w)。這兩方面的工作和研究這兩年來已經越來越少了。相對來說,關掉結點省電更徹底,操作也方便。但是這個時候就帶來了新的問題,把空閒結點關掉了後來新的任務怎麼辦,再把機器打開必然會引入不小的延遲,這將大大影響這個系統得性能。
發明內容本發明的目的在於提供一種省電但又不影響系統性能的並行計算集群電源的能耗控制方法。我們對此使用的方法是在關閉其他空閒結點地同時,也保留有限數目的結點作為冗餘,以備新進任務的到來。通過這種方式,來儘量減小對系統性能的影響。這裡面有兩個關鍵點。一是冗餘結點數目的決定,二是要隨著負載動態的開關結點。本發明的特徵在於該方法在關閉其他空閒結點的同時,也保留有限數目的結點作為冗餘,以準備迎接新任務到來的方法,該方法在網際網路管理結點中結合一個名稱為openPBS的公開源碼的可移植的批處理系統,按以下步驟完成步驟1)修改openPBS中的調度器,在其中插入我們的代碼,以便在任務結束或者由新任務提交或者在每一個調度周期到來的時候執行我們的代碼,插入的方法如下修改位於源碼包中src/scheduler.cc/samples/fifo/的fifo.c,在其中的函數intscheduling_cycle(intsd)頭部加入函數調用node_manage(cmd,sinfo),修改為intscheduling_cycle(intcmd,intsd),node_manage是我們自己定義的函數,就是用以實施結點開關控制的策略的;步驟2)初始化,令N=1,N為所述冗餘結點數目;步驟3)檢查事件命令,如果是錯誤或者退出的命令則退出,否則進入下一步;步驟4)判別是否是新任務提交,若是新任務提交,則更新任務的歷史記錄,根據記錄按下述方法重新計算N首先,對最近一段時間內提交的任務的記錄按下式計算所述任務所要求結點數目的累積概率分布cdf(x)=P(n≤x),x是自變量,範圍為最近提交的任務所要求的結點數目的數值範圍,n表示某個任務要求的結點數目;上式的含義是最近一段時間內,所要求的結點數目不大於x的任務在最近所有任務中所佔的比例;隨著x的變化,就構成了任務要求結點數目的累積概率分布;其次,選擇某一個概率p0,p0的取值範圍為80%~90%,來求得對應的結點數目,以作為冗餘結點數目N,即N=cdf-1(p0),接下來轉入步驟5;若非新提交任務,則直接轉到步驟5;步驟5)計算空閒結點數目n_freen_free=n_on-n_use-n_require,其中,n_on為所述系統中處於開機狀態的所有結點的數目;n_use為正在運行任務的結點數目;n_require為還沒有被調度運行的任務所要求的結點數目;步驟6)判斷空閒的結點數目與冗餘結點數目之大小對於非新提交任務的情況,N為上一個調度周期的冗餘結點數目N;對於新提交任務的情況,N由步驟4中計算得出;步驟7)若n_free<N,則用WakeOnLAN的區域網喚醒操作啟動N-n_free個結點;若n_free>N,則關閉n_free-N個空閒結點;步驟8)在下一個調度周期,重複步驟3~步驟7。本發明是在下述的測試環境下實施的硬體伺服器7臺(ItaniumIIRX2600)CPUIntelItanium21GHz×2內存2G軟體RedHatLinuxAdvanceServerrelease3本發明按以下指標進行評價●EnergyConsumption消耗的電能,實際測試中以累計的開機時間來計算●Performance系統得性能,這裡我們用boundedslowdown帶邊界的減速率來表示。對某一個任務Ti,最後,我們用平均的boundedslowdown來衡量系統的整體性能。平均的值越大,性能越差。整個集群在PBS下的大致部署框架可以用圖1來描述。圖中,pbs_sched就是我們所修改的調度器,運行在用作伺服器的結點上,來控制其他客戶結點的啟動與關閉。事實上,客戶結點上也要作一些相應的設置。比如伺服器遠程關掉某個結點,我們會標誌該結點已經被關掉,不要在其上再分配任務,那麼,後來,當此結點由關機的狀態啟動後,得通知server自己已經啟動起來了,可以參與資源的調度了。這個動作可以在客戶結點每次開機的時候自動運行。為了比較,我們另外又加入了一種策略,就是隨時關掉所有空閒的結點,有任務到來時再打開相應數目的結點以跑任務,我們稱之為「全關」。而原本不實施任何電源管理策略的情況,我們稱之為「全開」;我們所實現的電源管理方法,我們稱之為「冗餘」。我們的測試任務集來自http//www.supercluster.org上的trace記錄。該記錄是來自於一個擁有224個cpu的cluster。由於我們沒有他們那麼大規模的集群,因此,對任務要求的結點數,提交的間隔,運行的時間都進行了按比例縮放。測試的結果見圖2和圖3。從測試結果看出,我們提出並且應用的保留冗餘結點的方法,從節能上,效果已經接近全關的方法(節能的極限),也就是說,已經接近能耗的下界了。從bounded_slowdown這個性能指標來看,相對於全開的指標(該指標也是最優指標)來說,差別不是很大,而對於全關來說,就好了很多。由於該測試集相對於原任務集進行了按比例壓縮,測出的一些數據可能會有些失真。尤其是任務提交間隔的壓縮,使得系統更加繁忙。以我們按原任務集模擬的結果來看,保留冗餘t的節能效果更接近於「全關」的策略,而平均的bounded_slowdown也更接近於「全開」,就是說,實際上「保留冗餘結點」這個方法的效果還會更好。圖1.並行集群部署圖;圖2.本發明的電能消耗比較圖;圖3.本發明的系統性能比較圖;圖4.累積概率分布與冗餘結點數目計算示範圖;圖5.本發明的程序流程具體實施例方式我們保留冗餘結點的主要目的是保證系統的響應時間不會因我們的策略而增長太多,也就是保證QOS。基本的思路就是時刻保持有N個冗餘結點,儘可能使下一個任務到來時,能夠立即投入執行,而不會引入額外的延遲。保留多少冗餘結點,也就是N的取值大有考究。一種方法是預測,通過對負載的建模來確定冗餘的多少。由於負載的建模在預測上並不是很準,因此,我們採用另外一種思路假設從統計上來說,N能滿足絕大多數(比如90%)的任務的需求,那麼當保留N個冗餘結點的時候,90%的可能新提交的任務可以立即運行,這樣從總體上來說也能極大減小對系統性能的影響。對最近一段時間內提交的任務的記錄按下式計算任務要求結點數目的累積概率分布cdf(x)=P(x≥n),x是自變量,範圍為最近提交的任務所要求的結點數目的數值範圍,n表示某個任務要求的結點數目;上式的含義是最近一段時間內,所要求的結點數目不大於x的任務的總和在最近所有任務中所佔的比例;隨著x的變化,就構成了任務要求結點數目的累積概率分布;對最近一段時間內提交的並行任務的記錄進行統計分析,按照上式計算累積概率分布。然後根據給定的概率,比如80%,令N=cdf-1(80%),以作為保留的冗餘數目。也就是說,這樣從統計上來說80%的任務所要求的結點數目不會超過N。圖1演示了這種計算(數據來自有224個結點的集群的任務記錄)。橫軸表示結點數目,縱軸表示對應的cdf(x)的值。在圖1中可以看到冗餘大約8個結點就可以應付80%的任務了。而8個結點相對於224個結點來說,完全是可以接受的(8/224=3.6%)。這兒要注意的是隨著系統的持續運行,歷史記錄也在不斷更新,N也在一直重新計算。因為負載隨時在變化,而要維持總是冗餘N個結點的狀態,那麼肯定要隨時根據當前的狀態決定開機和關機,這個工作顯然不能由人來完成,而是應該經由程序控制的。由於Linux下rsh對root帳戶的限制,關機是通過ssh遠程關機的,只要配好RSA密鑰,直接執行sshnode_namepoweroff就可以關掉node_name指示的結點。而開機是通過前面提到的WakeOnLAN來實現的。WakeOnLAN一般翻譯成區域網喚醒。它指通過網絡遠程開機的技術。它的工作原理是在區域網上廣播含有目標機器的網卡Mac地址的數據包,當目標機器接受到這個包後,就把本機啟動起來。它需要網卡和主板的支持(現在市場上的網卡和主板基本上都支持)。由於我們的方法是要用到自動開機的,因此,這是我們的電源管理存在的基礎之一。動態開關結點的策略簡述每當有任務提交或者結束的時候,計算N,然後檢查當前空閒結點的數目,如果小於N,那麼通過WakeOnLAN打開不足的結點;如果大於N,那麼自動關掉多餘的結點。實際操作中還要看集群管理軟體的調度器的調度策略進行相應修改。開關結點都要求自動完成,而無須手工操作。一般並行計算集群都會使用資源管理軟體來整合和管理整個集群的資源,同時也負責分發和調度提交上來的任務,這樣的軟體有openPBS等。PBS是PortableBatchSystem的簡稱,是一個管理任務和計算機資源的系統。openpbs就是開源可以免費使用的PBS。我們在結點層面上的電源管理操作實際上也就是對集群資源的一種管理。但是我們的這種管理可能會影響其它管理軟體(如PBS等)的正常運作,比如當我們把結點關掉後,PBS就會認為那些結點unavailable了,當有任務請求大於當前的最大資源時,它會直接返回failure,而不是等待將那些結點再行啟動起來。為了解決兩者之間的不協調,我們選擇將我們的電源管理方法與openPBS整合到一起。與openPBS整合到一起,也有很多好處,比如當系統使用openPBS進行管理時,所有任務都通過openpbs來進行提交和調度。這樣,我們就可以知道提交的任務的歷史記錄,也能夠輕易知道系統的負載狀況以及具體某個結點的狀態(free或者busy)。我們整合的方法是修改openpbs的調度器,在其中插入代碼。每當有任務結束或者有新任務提交又或者在每一個schedulecycle時執行我們的代碼,就是如前文所述的那樣,動態開關結點,並且決定任務的調度。圖5描述了修改後的scheduler的大致流程。為了簡便起見,只是著重描繪出scheduler主循環體中關於電源管理的大致流程。其它任務的調度,資源的分配等就不畫出來了。權利要求1.並行計算集群電源能耗控制方法,特徵是該方法在關閉其他空閒結點的同時,也保留有限數目的結點作為冗餘,以準備迎接新任務到來的方法,該方法在網際網路管理結點中結合一個名稱為openPBS的公開源碼的可移植的批處理系統,按以下步驟完成步驟1)修改openPBS中的調度器,在其中插入我們的代碼,以便在任務結束或者由新任務提交或者在每一個調度周期到來的時候執行我們的代碼,插入的方法如下修改位於源碼包中src/scheduler.cc/samples/fifo/的fifo.c,在其中的函數intscheduling_cycle(intsd)頭部加入函數調用node_manage(cmd,sinfo),修改為intscheduling_cycle(intcmd,intsd),node_manage是我們自己定義的函數,就是用以實施結點開關控制的策略的;步驟2)初始化,令N=1,N為所述冗餘結點數目;步驟3)檢查事件命令,如果是錯誤或者退出的命令則退出,否則進入下一步;步驟4)判別是否是新任務提交,若是新任務提交,則更新任務的歷史記錄,根據記錄按下述方法重新計算N首先,對最近一段時間內提交的任務的記錄按下式計算所述任務所要求結點數目的累積概率分布cdf(x)=P(n≤x),x是自變量,範圍為最近提交的任務所要求的結點數目的數值範圍,n表示某個任務要求的結點數目;上式的含義是最近一段時間內,所要求的結點數目不大於x的任務在最近所有任務中所佔的比例;隨著x的變化,就構成了任務要求結點數目的累積概率分布;其次,選擇某一個概率p0,p0的取值範圍為80%~90%,來求得對應的結點數目,以作為冗餘結點數目N,即N=cdf-1(p0),接下來轉入步驟5;若非新提交任務,則直接轉到步驟5;步驟5)計算空閒結點數目n_freen_free=n_on-n_use-n_require,其中,n_on為所述系統中處於開機狀態的所有結點的數目;n_use為正在運行任務的結點數目;n_require為還沒有被調度運行的任務所要求的結點數目;步驟6)判斷空閒的結點數目與冗餘結點數目之大小對於非新提交任務的情況,N為上一個調度周期的冗餘結點數目N;對於新提交任務的情況,N由步驟4中計算得出;步驟7)若n_free<N,則用WakeOnLAN的區域網喚醒操作啟動N-n_free個結點;若n_free>N,則關閉n_free-N個空閒結點;步驟8)在下一個調度周期,重複步驟3~步驟7。全文摘要本發明屬於並行集群電源能耗控制領域,其特徵在於,該方法在關閉其他空閒結點時也保留有限數目的結點作為冗餘,以迎接新任務,所述方法在伺服器中通過在openPBS系統調度器中加入啟動或關閉結點的代碼來實現,而冗餘結點的計算要根據在最近一段時間內所有到達任務所要求結點數目的累積概率分布來決定,本發明設定上述分布中80%~90%所對應的結點數目作為冗餘結點的數目,它隨著在系統運行過程中,所形成的任務的歷史記錄的不斷更新而更新。實驗證明,本發明的節能效果已接近全關的狀態,即能耗的下限。文檔編號G06F1/32GK1758610SQ20051011577公開日2006年4月12日申請日期2005年11月11日優先權日2005年11月11日發明者陳文光,蔣飛雲,鄭緯民申請人:清華大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀