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