方鑫+++周珂+++嚴運廣+++陳前程+++黃祥志+++王棟
摘 要: 遙感技術(shù)的進步使遙感數(shù)據(jù)質(zhì)量得以提高,體量急劇增長,因此有必要研制高效的遙感數(shù)據(jù)處理集群系統(tǒng)用于提高遙感數(shù)據(jù)處理的效能。對遙感數(shù)據(jù)處理的時效性評估可以從處理效率和計算資源利用率兩個角度進行評估。提出一種結(jié)合遙感數(shù)據(jù)處理先驗值的動態(tài)雙向?qū)崟r匹配調(diào)度算法,即同步考慮先驗值、任務(wù)情況和計算節(jié)點狀態(tài)的雙向調(diào)度的方法。實驗結(jié)果表明,該算法有效的提高了集群系統(tǒng)的遙感數(shù)據(jù)處理效能。
關(guān)鍵詞: 任務(wù)調(diào)度; 動態(tài)雙向匹配; 遙感數(shù)據(jù)處理; 集群
中圖分類號:TP391 文獻標志碼:A 文章編號:1006-8228(2016)05-04-04
Abstract: The progress of remote sensing technology makes the quality of remote sensing data improved, and the volume of the remote sensing data increased rapidly. Therefore, it is necessary to develop an efficient remote sensing data processing cluster system to improve the efficiency of remote sensing data processing. The timeliness of remote sensing data processing can be evaluated from two perspectives: the processing efficiency and the computing resource utilization. In this paper, a dynamic bidirectional real-time matching scheduling algorithm combined with the prior value of remote sensing data processing is proposed; it's a bi-directional scheduling method of simultaneous consideration of the priori values, task conditions and the computing node state. Experimental results show that the proposed algorithm can effectively improve the efficiency of remote sensing data processing in cluster system.
Key words: task scheduling; dynamic bidirectional matching; remote sensing data processing; cluster
0 引言
隨著遙感技術(shù)的快速發(fā)展,遙感數(shù)據(jù)量呈現(xiàn)幾何級增長,實際應用中對遙感數(shù)據(jù)處理的時間和精度要求越來越高。集群處理系統(tǒng)的出現(xiàn)大大提高了遙感數(shù)據(jù)處理的速度。高效的遙感數(shù)據(jù)處理集群調(diào)度方法,是充分發(fā)揮集群平臺優(yōu)勢的關(guān)鍵所在。
中國科學院遙感與數(shù)字地球研究所研制的面向遙感數(shù)據(jù)高性能處理集群系統(tǒng)[1,11]具有成本可控、可靠性高、擴展性強等特點,該集群系統(tǒng)的作業(yè)調(diào)度模塊包括調(diào)度節(jié)點和計算節(jié)點兩個部分。調(diào)度節(jié)點是集群系統(tǒng)中某一臺計算機,負責整個集群系統(tǒng)資源分配和任務(wù)的調(diào)度,保存有面向任務(wù)隊列和面向計算節(jié)點隊列。此外,調(diào)度節(jié)點上存儲有各個計算節(jié)點的負載信息表,表中保存有計算節(jié)點的一些實時信息如計算節(jié)點MAC地址,CPU利用率等,還存有生產(chǎn)各種遙感產(chǎn)品所需要的平均時間等。計算節(jié)點是集群系統(tǒng)中所有計算機,調(diào)度節(jié)點也可作為計算節(jié)點使用。每個(臺)計算節(jié)點都連接到調(diào)度節(jié)點,負責接收調(diào)度發(fā)來的產(chǎn)品生產(chǎn)任務(wù),和調(diào)度節(jié)點協(xié)同完成工作,計算節(jié)點還帶有各種產(chǎn)品生產(chǎn)所需要的動態(tài)庫、參數(shù)等信息;數(shù)據(jù)的組織管理采用五層十五級標準[2]。
目前,常用的任務(wù)調(diào)度算法有:先來先服務(wù)算法、雙匹配動態(tài)模型算法、截止期最早優(yōu)先等。這些算法都各有特點。先來先服務(wù)算法[10]就是根據(jù)到達的先后順序調(diào)度執(zhí)行,結(jié)構(gòu)簡單容易實現(xiàn),但該算法短作業(yè)在系統(tǒng)中的駐留平均時間與長作業(yè)的駐留平均時間相同,這對短作業(yè)是不利的;雙匹配動態(tài)算法[6]能夠較好地實現(xiàn)負載與系統(tǒng)吞吐率的平衡,但當系統(tǒng)中任務(wù)量逐漸增多時,性能快速下降;截止期最早最優(yōu)先算法[12]根據(jù)任務(wù)截止期來決定任務(wù)執(zhí)行順序,讓截止期最早的任務(wù)優(yōu)先執(zhí)行,但是截止期最早的任務(wù)并不一定是最重要的任務(wù)。然而上述任務(wù)調(diào)度算法,均未考慮到遙感影像數(shù)據(jù)量大、產(chǎn)品算法耗時長的特點。
1 集群調(diào)度算法模型
本文設(shè)計的集群調(diào)度算法模型是一種結(jié)合遙感數(shù)據(jù)處理先驗值的動態(tài)雙向?qū)崟r匹配調(diào)度算法模型,由面向任務(wù)隊列模型和面向計算節(jié)點隊列模型兩個部分組成。其主要思路是:在結(jié)合先驗值的情況下,一方面,面向任務(wù)時考慮任務(wù)等待時間和任務(wù)量大小等因素來確定任務(wù)隊列;另一方面,面向計算資源時,在動態(tài)獲取計算資源負載率的情況下,形成一個計算資源隊列;將最優(yōu)計算資源匹配給優(yōu)先級最高的任務(wù),從而完成任務(wù)和計算資源的動態(tài)雙向匹配。
1.1 先驗值獲取
本文使用的先驗值定義為集群處理某類產(chǎn)品時,根據(jù)各個并行節(jié)點反饋到調(diào)度節(jié)點上的該類產(chǎn)品的處理時間,取平均值。
先驗值是動態(tài)更新的,這種動態(tài)更新使先驗值的存在更具參考性,當節(jié)點上反饋新的該類產(chǎn)品生產(chǎn)時間信息時,和該先驗值再取平均值作為新的先驗值。得到的先驗值在調(diào)度中的數(shù)據(jù)結(jié)構(gòu),用Map