方鑫+++周珂+++嚴運廣+++陳前程+++黃祥志+++王棟



摘 要: 遙感技術的進步使遙感數據質量得以提高,體量急劇增長,因此有必要研制高效的遙感數據處理集群系統用于提高遙感數據處理的效能。對遙感數據處理的時效性評估可以從處理效率和計算資源利用率兩個角度進行評估。提出一種結合遙感數據處理先驗值的動態雙向實時匹配調度算法,即同步考慮先驗值、任務情況和計算節點狀態的雙向調度的方法。實驗結果表明,該算法有效的提高了集群系統的遙感數據處理效能。
關鍵詞: 任務調度; 動態雙向匹配; 遙感數據處理; 集群
中圖分類號: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 引言
隨著遙感技術的快速發展,遙感數據量呈現幾何級增長,實際應用中對遙感數據處理的時間和精度要求越來越高。集群處理系統的出現大大提高了遙感數據處理的速度。高效的遙感數據處理集群調度方法,是充分發揮集群平臺優勢的關鍵所在。
中國科學院遙感與數字地球研究所研制的面向遙感數據高性能處理集群系統[1,11]具有成本可控、可靠性高、擴展性強等特點,該集群系統的作業調度模塊包括調度節點和計算節點兩個部分。調度節點是集群系統中某一臺計算機,負責整個集群系統資源分配和任務的調度,保存有面向任務隊列和面向計算節點隊列。此外,調度節點上存儲有各個計算節點的負載信息表,表中保存有計算節點的一些實時信息如計算節點MAC地址,CPU利用率等,還存有生產各種遙感產品所需要的平均時間等。計算節點是集群系統中所有計算機,調度節點也可作為計算節點使用。每個(臺)計算節點都連接到調度節點,負責接收調度發來的產品生產任務,和調度節點協同完成工作,計算節點還帶有各種產品生產所需要的動態庫、參數等信息;數據的組織管理采用五層十五級標準[2]。
目前,常用的任務調度算法有:先來先服務算法、雙匹配動態模型算法、截止期最早優先等。這些算法都各有特點。先來先服務算法[10]就是根據到達的先后順序調度執行,結構簡單容易實現,但該算法短作業在系統中的駐留平均時間與長作業的駐留平均時間相同,這對短作業是不利的;雙匹配動態算法[6]能夠較好地實現負載與系統吞吐率的平衡,但當系統中任務量逐漸增多時,性能快速下降;截止期最早最優先算法[12]根據任務截止期來決定任務執行順序,讓截止期最早的任務優先執行,但是截止期最早的任務并不一定是最重要的任務。然而上述任務調度算法,均未考慮到遙感影像數據量大、產品算法耗時長的特點。
1 集群調度算法模型
本文設計的集群調度算法模型是一種結合遙感數據處理先驗值的動態雙向實時匹配調度算法模型,由面向任務隊列模型和面向計算節點隊列模型兩個部分組成。其主要思路是:在結合先驗值的情況下,一方面,面向任務時考慮任務等待時間和任務量大小等因素來確定任務隊列;另一方面,面向計算資源時,在動態獲取計算資源負載率的情況下,形成一個計算資源隊列;將最優計算資源匹配給優先級最高的任務,從而完成任務和計算資源的動態雙向匹配。
1.1 先驗值獲取
本文使用的先驗值定義為集群處理某類產品時,根據各個并行節點反饋到調度節點上的該類產品的處理時間,取平均值。
先驗值是動態更新的,這種動態更新使先驗值的存在更具參考性,當節點上反饋新的該類產品生產時間信息時,和該先驗值再取平均值作為新的先驗值。得到的先驗值在調度中的數據結構,用Map