基于網(wǎng)格技術(shù)的儀器設(shè)備共享模型
摘要:文章提出了一種基于網(wǎng)格的儀器設(shè)備共享模型,能為提供超強(qiáng)的計(jì)算能力,將設(shè)備對用戶透明化,并用一個實(shí)驗(yàn)實(shí)例來對模型進(jìn)行論證。在面對更為復(fù)雜的實(shí)際情況時,對提出的模型進(jìn)行修正,改進(jìn)。
關(guān)鍵詞:網(wǎng)格計(jì)算;模型;分布式計(jì)算
0 引言
近年來,信息量存儲越來越高、信息處理越來越復(fù)雜。而且,儀器設(shè)備的處理性能日益成為發(fā)展的瓶頸,很難得到突破性的提高。網(wǎng)格作為一種重要的基礎(chǔ)設(shè)施,和其它的系統(tǒng)相比,具有分布性、自相似性、動態(tài)多樣性(不可預(yù)測性)以及管理的多重性等特點(diǎn)。其可以實(shí)現(xiàn)跨平臺、跨地域的資源整合,以解決復(fù)雜的大規(guī)模問題。網(wǎng)格在分布式超級計(jì)算、高吞吐率計(jì)算、數(shù)據(jù)密集型計(jì)算、數(shù)據(jù)資源共享等多個科學(xué)研究領(lǐng)域有著廣泛的實(shí)踐應(yīng)用?;诖?,我們提出了一種基于網(wǎng)格的三層結(jié)構(gòu)的儀器設(shè)備共享模型。該模型利用分布計(jì)算技術(shù),將目前分散、空閑的儀器設(shè)備的計(jì)算資源集中起來組成網(wǎng)格,實(shí)現(xiàn)了儀器設(shè)備的虛擬化、透明化與設(shè)備無關(guān)性,同時為用戶提供超強(qiáng)的計(jì)算能力,用以滿足高性能計(jì)算的需求。
1 儀器設(shè)備共享的模型
1.1 模型的提出
網(wǎng)格計(jì)算資源,就像我們平時用電一樣,我們不需要知道它是從那個地方的發(fā)電站輸送過來的,也不需要知道該電力是通過什么樣的發(fā)電機(jī)產(chǎn)生的,更不需要自己購買發(fā)電機(jī),不管是水力發(fā)電,還是核能發(fā)電,我們使用的是一種統(tǒng)一形式的“電能”。通過這樣的方式,用戶不需要自行購買昂貴的高性能設(shè)備或者軟件,只需接入網(wǎng)格系統(tǒng)就可以得到需要的計(jì)算資源。同時在滿足用戶需求的情況下,降低了用戶維護(hù)設(shè)備儀器、軟件維護(hù)與更新所需的成本。這里,我們將空閑的儀器設(shè)備的計(jì)算能力集中到了網(wǎng)格中,設(shè)計(jì)了一種三層結(jié)構(gòu)的儀器設(shè)備共享模型。通過此模型,實(shí)現(xiàn)儀器設(shè)備的虛擬化、透明化,并為有高性能計(jì)算需求的用戶提供超強(qiáng)的計(jì)算資源。
1.2 模型的介紹
如圖1所示,用戶向主控機(jī)發(fā)出任務(wù)請求,主控機(jī)能夠自動將任務(wù)遞交給空閑的主任務(wù)機(jī),若是主任務(wù)機(jī)都在忙碌狀態(tài),則請求放入等待消息隊(duì)列。主任務(wù)機(jī)接受任務(wù),將計(jì)算任務(wù)智能分解后分配到其資源池的計(jì)算單元進(jìn)行計(jì)算,然后返回的計(jì)算結(jié)果由主任務(wù)機(jī)進(jìn)行整合,整合后的最終結(jié)果由主控機(jī)接收,反饋給用戶。
1.3 可行性分析
(1)TCP/IP協(xié)議,為模型中主控機(jī)與主任務(wù)機(jī),主任務(wù)機(jī)與計(jì)算單元提供了可靠的通信技術(shù)。
(2)利用分布式計(jì)算可以實(shí)現(xiàn)網(wǎng)格資源池設(shè)備的共享與資源的整合,為協(xié)同計(jì)算提供了有效的技術(shù)支持。
(3)當(dāng)儀器設(shè)備接入網(wǎng)格時,通過socket接口向主控機(jī)發(fā)送上線通知,在主控機(jī)建立消息索引,成為網(wǎng)格中的一個單元,從而實(shí)現(xiàn)了網(wǎng)格資源池中的實(shí)時動態(tài)的接入。同時當(dāng)儀器設(shè)備退出網(wǎng)格資源池時,發(fā)送下線通知給主控機(jī),主控機(jī)端注銷其索引。在運(yùn)行時,主控機(jī)實(shí)時監(jiān)測網(wǎng)格資源池中設(shè)備的運(yùn)行狀況,若出現(xiàn)無效資源,就注銷其索引。從而實(shí)現(xiàn)了網(wǎng)格資源池中資源的動態(tài)管理。
2 理論模型的實(shí)驗(yàn)論證
2.1 實(shí)驗(yàn)論證方案
需求:求解1到2000的階乘的和。即S=1!+2!+3!+………+2000!。
方案:
(1)寫一個求解階乘和的代碼(不考慮算法優(yōu)化),在傳統(tǒng)模式下在用一臺計(jì)算機(jī)運(yùn)行程序,得出結(jié)果并記錄耗時。
(2)在儀器設(shè)備共享的模型中采用一臺主任務(wù)機(jī)、一臺計(jì)算單元的情形下,采用與第一步相同的算法運(yùn)行求解問題,記錄結(jié)果和耗時。
(3)將計(jì)算單元依次增加到兩臺、三臺到多臺,其他實(shí)驗(yàn)條件不變,記錄實(shí)驗(yàn)結(jié)果。
2.2 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)時在小型局域網(wǎng)內(nèi)進(jìn)行,網(wǎng)絡(luò)間的連接良好,沒有出現(xiàn)網(wǎng)絡(luò)突然斷開等異?,F(xiàn)象。
2.3 實(shí)驗(yàn)結(jié)果及分析
實(shí)驗(yàn)測試結(jié)果如表2所示。
通過以上實(shí)驗(yàn)數(shù)據(jù),我們可以看到在使用一個計(jì)算單元時,比一般情況下使用一臺電腦進(jìn)行計(jì)算耗時多,這是由于網(wǎng)格中信息傳送、資源調(diào)度所消耗的時間。而當(dāng)計(jì)算單元增加到兩臺、三臺時總消耗時間明顯減少,由此我們可以得出結(jié)論,此模式能實(shí)現(xiàn)儀器設(shè)備共享,提供預(yù)期的、強(qiáng)大的計(jì)算能力,滿足用戶需求。
3 模型的改進(jìn)與前景
本模型的資源整合功能將閑置設(shè)備資源充分利用,提供了強(qiáng)大的計(jì)算能力,實(shí)現(xiàn)了設(shè)備儀器的虛擬化。由于對設(shè)備資源的動態(tài)管理,網(wǎng)格資源池就像一臺計(jì)算能力可持續(xù)增長的超級計(jì)算機(jī)。但是在復(fù)雜的實(shí)際應(yīng)用環(huán)境中,主任務(wù)機(jī)與用戶機(jī)計(jì)算單元往往相互重疊,其復(fù)雜度是理論模型不能解決的。
理論模型中計(jì)算單元中,主任務(wù)機(jī)是固定的,所以在運(yùn)行時,會有許多儀器設(shè)備處于閑置狀態(tài),造成了計(jì)算資源的大量浪費(fèi)。鑒于此,該模型的計(jì)算能力還有很大的提升空間。
為此對模型進(jìn)行了改造,提出星型結(jié)構(gòu)的儀器設(shè)備共享模型。
由用戶端向網(wǎng)格主控機(jī)提出需求,網(wǎng)格主控機(jī)根據(jù)資源池內(nèi)閑置資源指定某個單元為臨時的主任務(wù)機(jī),臨時的主任務(wù)機(jī)接到任務(wù)后,自行組織閑置資源作為計(jì)算單元,然后返回的計(jì)算結(jié)果由臨時的主任務(wù)機(jī)進(jìn)行整合,整合后的最終結(jié)果由主控機(jī)接收,反饋給用戶,同時,臨時的主任務(wù)機(jī)變?yōu)槠胀ㄙY源。此模型的任務(wù)中的用戶、主任務(wù)機(jī)、計(jì)算單元都為網(wǎng)格中的某個單元。
在星型結(jié)構(gòu)中,我們可以看出主任務(wù)機(jī)、用戶、計(jì)算單元之間的角色轉(zhuǎn)換由主控機(jī)智能地進(jìn)行,減少了儀器設(shè)備的閑置狀態(tài),接入網(wǎng)格中的單元也不是單一的角色,這樣可以適應(yīng)實(shí)際應(yīng)用中復(fù)雜的情形。
4 結(jié)束語
本文針對網(wǎng)格計(jì)算提出了解決的理論模型,并通過一個簡單的實(shí)例進(jìn)行論證。其實(shí)驗(yàn)結(jié)果表明此模型是可行的、高效的。我們通過深入分析,找出了此模型的不足,并針對這種不足,又提出了更為優(yōu)化的星形設(shè)備共享模型。雖然這模型是實(shí)驗(yàn)室的一個雛形,但它展示了閑散儀器設(shè)備整合后提供的強(qiáng)大計(jì)算能力。它是現(xiàn)有單個資源不能滿足越來越復(fù)雜的業(yè)務(wù)需求,越來越高的計(jì)算能力需求的解決方案。