資源調(diào)度從來就不是個誘人的話題。它們是必須要做的事情,但是通常很復(fù)雜而且常常令用戶沮喪、讓系統(tǒng)管理員忙碌。最常見的抱怨是:“為什么我的作業(yè)沒有運行?”問題的答案通常依賴于對一些調(diào)度規(guī)則的解釋,或者干脆說已經(jīng)滿負載,或者在極罕見的情況下稱一個用戶的程序?qū)е铝嗽搯栴}。
如果你不知道什么是資源的時刻表,那么接下來的這幾段必須要看了。這個名詞是說,您有很多個資源、很多個作業(yè)在排隊,需要列出這些資源以最佳的狀態(tài)工作。一些常見的資源調(diào)度比如SunGird、Engine,Torque/Maui、Moab、PBS、Platform以及PlatformLava。集群是體現(xiàn)資源調(diào)度最好的例子。在一個128節(jié)點的集群里,每個計算節(jié)點有八個核。大部分的用戶的程序需要1-16個核來工作,但是有一些需要256個核。問題就是,給出一個工作的清單,什么才是這個集群被充分利用的最佳工作方式?
用戶在提交“作業(yè)”的時候經(jīng)常通過一個腳本(類似于qsub,queuesummit)使得作業(yè)插入到隊列調(diào)度中去,如果被允許,用戶可以使用類似qstat(queuestatus,隊列狀態(tài))的腳本來控制自己的程序,同時打印出一些讓人困擾的信息,沒有一個信息可以回答你“為什么我的作業(yè)沒有運行”(當(dāng)然,這里也提供了這條消息,但是看起來最簡單的方式還是給系統(tǒng)管理員發(fā)個郵件)。
為了使調(diào)度問題更棘手一點,在某些情況下,我們不知道這些應(yīng)用程序?qū)\行多長時間,而且也許有一些其它所需的資源(比如內(nèi)存容量、存儲、處理器類型等)。因此,資源調(diào)度這個工作并不簡單,但是對于集群利用率來說非常重要。實際上,多核的出現(xiàn)使得內(nèi)核級調(diào)度工作比以前更加重要(當(dāng)然也更加困難)。在內(nèi)核級,內(nèi)核必須被安排,而且將任務(wù)在核心之間互相轉(zhuǎn)移必須基于緩存。有趣的是,高層次的資源調(diào)度能力已經(jīng)延伸到CPU,控制核心的位置對獲得最好性能是非常必要的。
為什么資源調(diào)度將會成為高性能計算以后新的、很酷的工具?并不是因為一種新的額GUI或者一些其它的神秘的功能。真正的原因是云計算。但是這并不意味著云將會很快到處都是,實際上,資源調(diào)度將會把云放在合適的地方。
最近,我聽到一個新澤西技術(shù)研究所的DavidPerel使用SunGridEngine(SGE)所做的ApacheHadoop動態(tài)資源分配實驗。隨后有一個深入的研究,有關(guān)SunGridEngine更新的文章。在新的版本里有兩個誘人的更新,第一個是云計算,第二個則是Hadoop,類似于一種大眾云計算的東西。
最特別的是,SGE新的版本允許云中的互換,就好像亞馬遜的EC2。作業(yè)被允許,SGE可以控制之間的聯(lián)系。使用EC2的話,用戶需要為應(yīng)用程序構(gòu)建AMI圖像。除此之外,他們還需要提供EC2上的賬戶信息。一旦做到這一點,用戶可以講作業(yè)插入隊列,對于EC2來說,則有了一個“云爆發(fā)”。
另外一個新功能是與Hadoop的整合。如果你不知道什么是Hadoop的話,那就Google一下。只是架設(shè)好一個Hadopp集群并非易事。這是一種不依賴一個數(shù)據(jù)庫的強大的搜索模式。通常,地圖搜索減少啟動服務(wù)器的數(shù)量,給每個本地硬盤驅(qū)動器設(shè)置不同的數(shù)據(jù)。SGE已經(jīng)得到增強,現(xiàn)在Hadoop作業(yè)可以直接提交。
在這一點上行,云中的高性能計算是一件喜憂參半的事情。除非你使用一個特別設(shè)計的HPC云計算,就好像Penguin的POD服務(wù),對HPC性能至關(guān)重要的I/O資源可以多樣化。這可能會改變。作為單獨服務(wù)器包含更多內(nèi)核。HPC應(yīng)用調(diào)查顯示,57%的HPC用戶使用32處理器或者更少的核心。這些人證實了ClusterMoney.net有關(guān)此調(diào)查55%的數(shù)字。當(dāng)云計算開始使用48個內(nèi)核的服務(wù)器時,可能會消除一些服務(wù)器到服務(wù)器通信問題的形成。
高性能計算可能會采取一種不同的、使用密集多核服務(wù)器的方式進入云計算。用戶可以在桌面上就將作業(yè)加到SGE中去。這種資源調(diào)度方式會接觸可以運行虛擬機的本地資源或者云中資源。這種資源調(diào)度方式可能會讓HPC實現(xiàn)寶貴的桌面化。聽起來像網(wǎng)格計算,但是更簡單。