亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

異構系統(tǒng)的任務處理方法及裝置的制作方法

文檔序號:6401888閱讀:228來源:國知局
專利名稱:異構系統(tǒng)的任務處理方法及裝置的制作方法
技術領域
本發(fā)明涉及通信技術,尤其涉及一種異構系統(tǒng)的任務處理方法及裝置。
背景技術
隨著高性能計算機體系的變革,各種新型體系結構不斷涌現。采用多核處理器與定制加速協(xié)處理器相結合的異構混合體系成為構造千萬億次計算機系統(tǒng)的一種可行途徑。其中,異構計算(Heterogeneous Computing)主要指使用不同類型指令集和體系架構的計算單元組成系統(tǒng)的計算方式。該異構計算按以何種形式來提供計算類型多樣性,可分為系統(tǒng)異構計算(System Heterogeneous Computing,簡稱SHC)和網絡異構計算(NetworkHeterogeneous Computing,簡稱NHC),其中SHC中以多處理器形式提供多種計算類型,NHC中以網絡連接的多計算機形式提供多種計算類型。該SHC中的計算設備類別可以包括圖形處理器(Graphic Processing Unit,簡稱 GPU)、中央處理器(Central ProcessingUnit,簡稱CPU)、數字信號處理(Digital Signal Processing,簡稱DSP)、專用集成電路(Application Specific Integrated Circuit,簡稱 ASIC)、現場可編程門陣列(Field —Programmable Gate Array,簡稱 FPGA)等。
為了避免異構計算領域發(fā)展混亂,提出了一種開放計算機語言(Open ComputingLanguage,簡稱OpenCL),來作為開放式通用計算標準,其中OpenCL提供了基于任務和基于數據這兩種并行計算方式。目前,支持OpenCL的硬件平臺不斷增多,OpenCL平臺通常包括一個主機和多個OpenCL設備。主機接收到應用程序發(fā)送的計算任務,根據該計算任務中指定的計算設備,主機為該計算設備編寫設備端程序,而后將設備端程序發(fā)送給上述指定的計算設備,然后由該計算設備執(zhí)行以實現計算任務。
但是,采用現有技術中的方法,會導致一些計算設備的計算任務過多,而另一些計算設備閑置,從而造成各計算設備使用不合理的問題。發(fā)明內容
本發(fā)明提供一種異構系統(tǒng)的任務處理方法及裝置,用于優(yōu)化異構系統(tǒng)中對計算設備的合理使用。
本發(fā)明第一方面提供一種異構系統(tǒng)的任務處理方法,包括:
接收計算任務;
根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備;
將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果;
其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
結合第一方面,在第一方面的第一種可能的實施方式中,所述接收計算任務之后,還包括:
從所述計算任務中解析獲取所述任務信息;
根據所述計算任務的任務信息對所述計算任務進行分類;
將分類后的所述計算任務存儲在任務信息數據庫中。
結合第一方面,在第一方面的第二種可能的實施方式中,所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,還包括:
在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息;
根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類;
將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
結合第一方面至第一方面的第二種可能額實施方式中任一項,在第一方面的第三種可能額實施方式中,所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備包括:
根據所述計算任務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備;
根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
結合第一方面的第三種可能的實施方式,在第一方面的第四種可能的實施方式中,所述將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果包括:
將所述計算任務分配給所述目標計算設備進行計算;
在任務信息數據庫中刪除所述計算任務;
根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息;
接收所述目標計算設備返回的計算結果。
結合第一方面 的第四種可能的 實施方式,在第一方面的第五種可能的實施方式中,所述將所述計算任務分配給所述目標計算設備進行計算包括:
根據所述計算任務,確定與所述目標計算設備對應的任務程序;
將所述任務程序發(fā)送給所述目標計算設備。
結合第一方面或第一方面的第五種可能的實施方式,在第一方面的第六種可能的實施方式中,所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級Ih息、所需計算單兀 目息和所需存儲空間 目息;
所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
本發(fā)明第二方面提供一種異構系統(tǒng)的任務處理裝置,包括:
接收模塊,用于接收計算任務;
調度模塊,用于根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備;
設備控制模塊,用于將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果;
其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
結合第二方面,在第二方面的第一種可能的實施方式中,所述裝置還包括:
解析模塊,用于接收計算任務之后,從所述計算任務中解析獲取所述任務信息;
第一分類模塊,用于根據所述計算任務的任務信息對所述計算任務進行分類;
第一存儲模塊,用于將分類后的所述計算任務存儲在任務信息數據庫中。
結合第二方面,在第二方面的第二種可能的實施方式中,所述裝置還包括:
獲取模塊,用于在所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息;
第二分類模塊,用于根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類;
第二存儲模塊,用于將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
結合第二方面至第二方面的第二種可能的實施方式中任一項,在第二方面的第三種可能的實施方式中,所述調度模塊,具體用于根據所述計算任務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備;根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
結合第二方面的第三種可能的實施方式,在第二方面的第四種可能的實施方式中,所述設備控制模塊,用于將所述計算任務分配給所述目標計算設備進行計算;在任務信息數據庫中刪除所述計算任務;根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息;
所述接收模塊,還用于接收所述目標計算設備返回的計算結果。
結合第二方面的第四種可能的實施方式,在第二方面的第五種可能的實施方式中,所述設備控制模塊,具體用于根據所述計算任務,確定與所述目標計算設備對應的任務程序;將所述任務程序發(fā)送給所述目標計算設備。
結合第二方面至第二方面的第五種可能的實施方式中任一項,在第二方面的第六種可能的實施方式中,所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級/[目息、所需計算單兀彳目息和所需存儲空間 目息;
所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
本發(fā)明實施例中,在接收到計算任務后,根據計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從異構系統(tǒng)的各計算設備中選擇目標設備,將接收到的計算任務分配給目標計算設備,由于是根據計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,選擇的目標計算設備,從而使得異構系統(tǒng)中各種類型中的各計算設備的調度更為合理,避免了由于給一些設備分配的計算任務過多,而另一些設備分配的計算任務太少或沒有分配計算任務而導致資源浪費,從而提高異構系統(tǒng)中計算設備的整體計算效率。


為了更清楚地說明本發(fā)明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例一的流程示意圖2為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例二的流程示意圖3為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例三的流程示意圖4為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例四的流程示意圖5為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例五的流程示意圖6為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例六的流程示意圖7為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例七的流程示意圖8為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例一的結構示意圖9為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例二的結構示意圖10為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例三的結構示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例一的流程示意圖,異構系統(tǒng)中可以包括一個主機和多個不同類型的計算設備,主機上可以配置多個應用模塊,由應用模塊產生計算任務,計算設備用于執(zhí)行各計算任務。本實施例的執(zhí)行主體為異構系統(tǒng)的任務處理裝置,該裝置可以采用軟件或硬件的方式實現,可集成在主機中。如圖1所示,該方法包括:
SlOl、接收計算任務;
該計算任務可以是應用模塊發(fā)送的,該應用模塊具體地可以是一種應用程序或一種實體的應用設備。該應用模塊可以集成在主機中,或者配置在網絡側。其中,應用模塊為了提供應用功能需要執(zhí)行大量的工作負載行為,該工作負載行為可以包括控制密集型應用、數據密集型應用、計算密集型應用等,舉例說明,這些應用可以為數據挖掘、迭代方法、數值方法和金融建模等;
本發(fā)明實施例主要涉及計算密集型應用,這類應用的吞吐量嚴重依賴于底層計算設備的計算效率,因此,本發(fā)明實施例提供的調度機制更能適應于計算密集型應用。然而,其他類型的應用也可以適用于本發(fā)明實施例的異構系統(tǒng)的任務處理方法。
S102、根據上述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從上述異構系統(tǒng)的各計算設備中選擇目標計算設備。
具體地,該預設的調度規(guī)則可以是考慮計算任務的優(yōu)先級、計算設備的可用資源信息,采用某種算法獲取多種信息綜合后結果的規(guī)則。具體地,計算任務的優(yōu)先級可以在解析計算任務時從計算任務中獲取到,計算設備的可用資源信息可以在獲取設備信息時實時采集計算設備的資源狀態(tài)而獲取到,計算設備的可用資源可以包括計算設備中可用處理單元、可用存儲單元的數量,其中,可用處理單元跟所述計算設備的核數相關,可用存儲單元的數量和存儲空間大小相關。
S103、將上述計算任務分配給上述目標計算設備進行計算,并接收返回的計算結果;
具體地,接收到計算設備返回的計算結果后,通過主機反饋給下發(fā)計算任務的應用模塊。
需要說明的是,本發(fā)明實施例中上述異構系統(tǒng)包括至少兩種類型的計算設備,例如包括多個CPU和多個GPU等多種類型的計算設備。
本實施例中,在接收到計算任務后,根據計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從異構系統(tǒng)的各計算設備中選擇目標設備,將接收到的計算任務分配給目標計算設備,由于是根據計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,選擇的目標計算設備,從而使得異構系統(tǒng)中各種類型中的各計算設備的調度更為合理,避免了由于給一些設備分配的計算任務過多,而另一些設備分配的計算任務太少或沒有分配計算任務而導致資源浪費,從而提高異構系統(tǒng)中計算設備的整體計算效率。
圖2為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例二的流程示意圖,在實施例一的基礎上,如圖2所示,SlOl接收計算任務之后,還可以執(zhí)行下述步驟:
S201、從該計算任務中解析獲取上述任務信息。該任務信息可以包含下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級信息、所需計算單元信息和所需存儲空間信息等。
S202、根據上述計算任務的任務信息對上述計算任務進行分類。
S203、將分類后的該計算任務存儲在任務信息數據庫中。
—般可以根據上述任務信息中的計算任務的分類信息對計算任務進行分類,該計算任務的分類信息可以為計算任務的特性屬性,例如圖像處理的計算任務可以分為一類;在存儲時,可以根據分類,將計算任務分別存儲。
由于應用模塊的計算任務可能很多,需要排隊進行調度處理,所以可以獲取計算任務的任務信息進行存儲,以備后續(xù)進行調度。對于計算任務的分類,有助于對應查找到與此類計算任務對應的計算設備,以便于在較小的合適范圍內找到目標計算設備,能提高查找效率。對計算任務的分類可以根據調度的需求來執(zhí)行。典型的是根據計算任務所需要的計算設備類型來對計算任務進行分類。
圖3為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例三的流程示意圖,在上述實施例的基礎上,如圖3所示,在S102根據上述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從上述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,還可以執(zhí)行下述步驟:
S301、在該異構系統(tǒng)的計算設備注冊加載到上述異構系統(tǒng)中時,獲取設備信息。
具體地,該設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息等。異構系統(tǒng)可以在計算設備注冊加載時采集設備信息。注冊加載可以發(fā)生在整個異構系統(tǒng)初始化時對所有連接的計算設備進行加載,也可以在某個計算設備連接到異構系統(tǒng)時,對該計算設備的設備信息進行補充采集。
S302、根據上述設備信息對上述異構系統(tǒng)的計算設備進行分類。
為了便于統(tǒng)一管理這些計算設備,在存儲這些設備信息之前,將異構系統(tǒng)中的計算設備劃分為多類多級,每一個可用的計算設備抽象成一個可調度的單元,每一個單元由一個二元組RU (P,M)表示,其中P表示該計算設備的可用處理單元的大小,M表示該計算設備的可用存儲空間的大??;進一步地將計算設備分類,具有相同使用特性的計算設備分為一類,可表示為RG (Σ RU,F),其中F表示這類計算設備的核心特性,通過分類,可以避免在調度過程中在大量無規(guī)則計算設備之間調度而造成對系統(tǒng)性能的消耗。
S303、將獲取到的設備信息按照上述計算設備的分類存儲在設備資源池數據庫中。
需要說明的是,并不僅限于在該異構系統(tǒng)的計算設備注冊加載到上述異構系統(tǒng)中時獲取設備信息,還可以實時地獲取設備信息。例如,初始可用資源信息可以是在該異構系統(tǒng)的計算設備注冊加載到上述異構系統(tǒng)中時獲取的,即時可用資源信息可以是在任意時刻獲取的,也可以是后續(xù)對設備資源池數據庫更新時獲取的,或者在需要分配計算任務時獲取,這些設備信息在設備資源池數據庫中是可以動態(tài)的加載、刪除或修改的,這樣可以保證更加合理地選擇目標計算設備。
圖4為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例四的流程示意圖,在上述實施例的基礎上,如圖4所示,上述根據上述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從上述異構系統(tǒng)的各計算設備中選擇目標計算設備的具體流程為:
S401、根據上述計算任務的分類和上述計算設備的分類,查找與上述計算任務對應類型的計算設備組,上述計算設備組中包括至少一個相同類型的計算設備。
例如一個圖像處理的計算任務,確認該計算任務由GPU來執(zhí)行,于是查找到對應的GPU組,里面包含該異構系統(tǒng)中所有的GPU。
S402、根據上述計算設備的上述設備信息,采用調度算法,從上述計算機設備組中選擇至少一個目標計算設備。
該調度算法可以有多種,主要是結合計算設備的類型、可用資源以及計算任務的特性等來確定;此時用到的設備信息,可以是選擇之前實時收集的。
以動態(tài)優(yōu)先權調度算法為例,先根據計算任務的分類,在設備資源池數據庫中根據分類后的計算設備的F特性確定出計算設備組,然后采用動態(tài)優(yōu)先權算法,即公式priority= (Kp*Pi+Km*Mi)*Kf來計算上述計算設備組中計算設備的優(yōu)先級,其中Kp表示處理單元的權重,Km表示內存單元權重,Kf表示計算設備的特性的權重。
圖5為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例五的流程示意圖,在上述實施例的基礎上,對S402進行了優(yōu)化,在計算出該計算設備組中各計算設備的優(yōu)先級后,進一步還可以再結合這些計算設備的忙閑系數,從上述計算機設備組中選擇至少一個目標計算設備,如圖5所示,具體為:
S501、計算上述計算設備組中各計算設備的優(yōu)先級,按照計算出的優(yōu)先級從高到低對計算設備進行排序。
S502、從上述計算設備組中選擇一個計算設備,一般第一次選擇時先選優(yōu)先級最高的計算設備,后續(xù)循環(huán)判斷的過程中,可以按照優(yōu)先級從高到低依次進行選擇。
S503、判斷選擇的計算設備是否繁忙,具體可以根據計算設備正在執(zhí)行的計算任務的數量來判斷,若是,則執(zhí)行S504,若否,則執(zhí)行S505。
S504、判斷上述選擇的計算設備是否為最后一個計算設備,即該計算設備組中的其它設備都已經經過判斷,若是,則執(zhí)行S506,若否,則返回執(zhí)行S502。
S505、根據上述計算任務,確定與上述目標計算設備對應的任務程序。
S506、等待一定時延,之后返回S502,即過一段時候后該計算設備組中計算設備的繁忙狀態(tài)會發(fā)生變化,此時再重新進行選擇。
圖6為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例六的流程示意圖,在上述實施例的基礎上,將上述計算任務分配給上述目標計算設備進行計算,并接收返回的計算結果,具體為:
S601、將上述計算任務分配給上述目標計算設備進行計算,即將要執(zhí)行的計算任務發(fā)送給選擇出的對應的計算設備。
S602、在上述任務信息數據庫中刪除上述計算任務,具體地,將計算任務發(fā)送給對應的計算設備后,就無需再存儲該計算任務,這樣可以節(jié)省內存。
S603、根據目標計算設備分配的計算任務,在上述設備資源池數據庫中更新上述目標設備的設備信息,即發(fā)送完計算任務之后,對該計算任務進行計算的目標計算設備的可用資源發(fā)生了變化,于是,要更新設備資源池數據庫中存儲的該目標計算設備的設備信息,這樣便于在后續(xù)選擇計算設備時,可以依據計算設備實時的設備信息,使得動態(tài)選擇計算設備的結果更加合理。
需要說明的是,S602和S603沒有執(zhí)行的先后順序。
S604、接收該目標計算設備返回的計算結果,并將該計算結果發(fā)送給下發(fā)該計算任務的對應應用模塊。
圖7為本發(fā)明提供的異構系統(tǒng)的任務處理方法實施例七的流程示意圖,上述將計算任務分配給上述目標計算設備進行計算,具體為根據上述計算任務,確定與上述目標計算設備對應的任務程序,將該任務程序發(fā)送給上述目標計算設備,在上述實施例的基礎上,如圖4所示,確定與上述目標計算設備對應的任務程序的具體過程為:
S701、創(chuàng)建(PI atform )平臺,該平臺初始化異構系統(tǒng)中所有計算設備的類型,即確定該異構系統(tǒng)都包括哪些類型的計算設備。
S702、創(chuàng)建計算設備,即從上述某一類型的計算設備中選擇出目標計算設備。
S703、創(chuàng)建上下文(context),即建立上述異構系統(tǒng)中目標計算設備與主機的聯(lián)系O
S704、創(chuàng)建命令隊列,即分別建立主機對上述異構系統(tǒng)中目標計算設備發(fā)送信息的通道。
需要說明的是,S701 S704可以是異構系統(tǒng)的任務處理裝置預先初始化好的,也可以是在確定完目標計算設備后再進行。上述是以確定完目標計算設備后來描述的,如果是預先初始化好,那么S702可以是確定出該異構系統(tǒng)中所有的計算設備或者可能用到的計算設備;S703可以是建立上述異構系統(tǒng)中所有計算設備或可能用到的計算設備與主機的聯(lián)系;S704可以是分別建立主機對上述異構系統(tǒng)中所有計算設備或可能用到的計算設備發(fā)送信息的通道。下述步驟可以是在具體要分配某個計算任務時再進行操作的。
S705、創(chuàng)建內存對象,即建立存儲一些數據的對象,例如一個圖片處理的計算任務,這里可以存儲待處理的圖片。
S706、創(chuàng)建程序對象,即確定與上述目標計算設備對應的計算任務,可以是提供該計算任務的存儲位置。
S707、編譯程序對象,將上述計算任務編譯為目標計算設備可以識別的程序,例如,一個圖像處理任務要發(fā)送給GPU設備,接收到的應用層下發(fā)的計算任務的編寫方式GPU設備不一定能識別,就將該圖像處理任務的對應程序編譯為GPU設備可以識別的格式。
S708、創(chuàng)建kernel對象,這里kernel是要具體發(fā)送給某一個計算設備的程序,它可以是上述程序對象中的一部分,例如一個圖像處理任務總共有10個步驟,其中“上移”是其中一個步驟,要由具體的一個GPU設備來做,那么就創(chuàng)建“上移”對應的kernel。
S709、設置kernel參數,即為具體的計算任務賦值,例如上述“上移”這個任務,可能需要被賦予上移的距離、角度等數值。
上述編寫完成后,將該編寫完成的kernel程序發(fā)送給具體執(zhí)行該程序的其中一個目標計算設備即可。
本實施例中,接收到計算任務后,根據計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,并按照預設的調度規(guī)則,從上述異構系統(tǒng)的各計算設備中選擇目標設備,然后將接收到的計算任務分配給目標計算設備,這樣可以實現對異構系統(tǒng)中各種類型中的各計算設備都進行合理調度,避免給一些設備分配的計算任務過多,而另一些設備沒有計算任務可以執(zhí)行,從而提高異構系統(tǒng)中計算設備的整體計算效率;進一步地,將已經發(fā)送給計算設備的計算任務刪除,可以節(jié)省存儲空間,且實時地對設備信息進行更新,更可以保證動態(tài)分配計算任務的合理性。
圖8為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例一的結構示意圖,如圖8所示,該裝置包括:接收模塊801、調度模塊802和設備控制模塊803,其中:
接收模塊801,用于接收計算任務;調度模塊802,用于根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備;設備控制模塊803,用于將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果;其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
上述各模塊可用于執(zhí)行前述實施例一的方法,其實現原理和技術效果類似,在此不再贅述。
圖9為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例二的結構示意圖,如圖9所示,在圖8的基礎上,該裝置還包括:解析模塊804、第一分類模塊805、第一存儲模塊806,其中:
解析模塊804,用于接收計算任務之后,從所述計算任務中解析獲取所述任務信息;第一分類模塊805,用于根據所述計算任務的任務信息對所述計算任務進行分類;第一存儲模塊806,用于將分類后的所述計算任務存儲在任務信息數據庫中。
圖10為本發(fā)明提供的異構系統(tǒng)的任務處理裝置實施例三的結構示意圖,如圖10所示,在圖8的基礎上,該裝置還包括:獲取模塊807,第二分類模塊808,第二存儲模塊809,其中:
獲取模塊807,用于在所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息;第二分類模塊808,用于根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類;第二存儲模塊809,用于將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
進一步地,上述調度模塊802,具體用于根據所述計算任務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備;根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
具體地,上述設備控制模塊803,用于將所述計算任務分配給所述目標計算設備進行計算;設備控制模塊803,還用于在任務信息數據庫中刪除所述計算任務;根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息;接收模塊801,還用于接收所述目標計算設備返回的計算結果。更具體地,上述設備控制模塊803,具體用于根據所述計算任務,確定與所述目標計算設備對應的任務程序;將所述任務程序發(fā)送給所述目標計算設備。
需要說明的是,所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級信息、所需計算單元信息和所需存儲空間信息;所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
上述各模塊可用于執(zhí)行前述方法實施例,其實現原理和技術效果類似,在此不再贅述。
在本發(fā)明另一實施例中,還提供另一異構系統(tǒng),該系統(tǒng)包括:主機、至少兩個不同類型的計算設備、接收器和處理器,其中,接收器,用于接收計算任務。處理器,用于根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)貝1J,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備;將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果。其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
所述系統(tǒng)還包括存儲器,上述處理器,還用于接收計算任務之后,從所述計算任務中解析獲取所述任務信息;根據所述計算任務的任務信息對所述計算任務進行分類。該存儲器,用于將分類后的所述計算任務存儲在任務信息數據庫中。
上述處理器,還用于在所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息;根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類。上述存儲器,用于將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
上述處理器,具體用于根據所述計算任務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備;根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
上述處理器,用于將所述計算任務分配給所述目標計算設備進行計算;在任務信息數據庫中刪除所述計算任務;根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息。上述接收器,還用于接收所述目標計算設備返回的計算結果。其中,該處理器,具體用于根據所述計算任務,確定與所述目標計算設備對應的任務程序;將所述任務程序發(fā)送給所述目標計算設備。
需要說明的是,所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級信息、所需計算單元信息和所需存儲空間信息。所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
上述異構系統(tǒng)的處理可用于執(zhí)行前述方法實施例,其實現原理和技術效果類似,在此不再贅述。
在本發(fā)明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。
上述以軟件功能單元的形式實現的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟件功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory, ROM)、隨機存取存儲器(Random Access Memory, RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍。
權利要求
1.一種異構系統(tǒng)的任務處理方法,其特征在于,包括: 接收計算任務; 根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備; 將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果; 其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
2.根據權利要求1所述的方法,其特征在于,所述接收計算任務之后,還包括: 從所述計算任務中解析獲取所述任務信息; 根據所述計算任務的任務信息對所述計算任務進行分類; 將分類后的所述計算任務存儲在任務信息數據庫中。
3.根據權利要求1所述的方法,其特征在于,所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,還包括: 在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息; 根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類; 將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
4.根據權利要求1-3任一所述的方法,其特征在于,所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備包括: 根據所述計算任 務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備; 根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
5.根據權利要求4所述的方法,其特征在于,所述將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果包括: 將所述計算任務分配給所述目標計算設備進行計算; 在任務信息數據庫中刪除所述計算任務; 根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息; 接收所述目標計算設備返回的計算結果。
6.根據權利要求5所述的方法,其特征在于,所述將所述計算任務分配給所述目標計算設備進行計算包括: 根據所述計算任務,確定與所述目標計算設備對應的任務程序; 將所述任務程序發(fā)送給所述目標計算設備。
7.根據權利要求1-6任一所述的方法,其特征在于, 所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級信息、所需計算單兀 目息和所需存儲空間 目息; 所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
8.—種異構系統(tǒng)的任務處理裝置,其特征在于,包括: 接收模塊,用于接收計算任務; 調度模塊,用于根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備; 設備控制模塊,用于將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果; 其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。
9.根據權利要求8所述的裝置,其特征在于,還包括: 解析模塊,用于接收計算任務之后,從所述計算任務中解析獲取所述任務信息; 第一分類模塊,用于根據所述計算任務的任務信息對所述計算任務進行分類; 第一存儲模塊,用于將分類后的所述計算任務存儲在任務信息數據庫中。
10.根據權利要求8所述的裝置,其特征在于,還包括: 獲取模塊,用于在所述根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備之前,在所述異構系統(tǒng)的計算設備注冊加載到所述異構系統(tǒng)中時,獲取設備信息; 第二分類模塊,用于根據所述設備信息對所述異構系統(tǒng)的計算設備進行分類; 第二存儲模塊,用于將獲取到的設備信息按照所述計算設備的分類存儲在設備資源池數據庫中。
11.根據權利要求8-10任一所述的裝置,其特征在于,所述調度模塊,具體用于根據所述計算任務的分類和所述計算設備的分類,查找與所述計算任務對應類型的計算設備組,所述計算設備組中包括至少一個相同類型的計算設備;根據所述計算設備組中各計算設備的所述設備信息,采用調度算法,從所述計算設備組中選擇至少一個目標計算設備。
12.根據權利要求11所述的裝置,其特征在于,所述設備控制模塊,具體用于將所述計算任務分配給所述目標計算設備進行計算;在任務信息數據庫中刪除所述計算任務;根據目標計算設備分配的計算任務,在設備資源池數據庫中更新所述目標計算設備的設備信息; 所述接收模塊,還用于接收所述目標計算設備返回的計算結果。
13.根據權利要求12所述的裝置,其特征在于,所述設備控制模塊,具體用于根據所述計算任務,確定與所述目標計算設備對應的任務程序;將所述任務程序發(fā)送給所述目標計算設備。
14.根據權利要求 8-13任一所述的裝置,其特征在于, 所述任務信息包括下述信息的至少一個或組合:計算任務的分類信息、優(yōu)先級信息、所需計算單兀 目息和所需存儲空間 目息; 所述設備信息包括下述信息的至少一個或組合:計算設備的類型信息、供應商信息、型號、初始可用資源信息和即時可用資源信息。
全文摘要
本發(fā)明實施例提供一種異構系統(tǒng)的任務處理方法及裝置,該方法包括接收計算任務;根據所述計算任務的任務信息和異構系統(tǒng)中至少一個計算設備的設備信息,按照預設的調度規(guī)則,從所述異構系統(tǒng)的各計算設備中選擇目標計算設備;將所述計算任務分配給所述目標計算設備進行計算,并接收返回的計算結果;其中,所述異構系統(tǒng)包括至少兩種類型的計算設備。本發(fā)明實施例中,通過根據任務信息和設備信息,以及預設調度規(guī)則來選擇目標計算設備,實現了對異構系統(tǒng)中計算設備的合理使用。
文檔編號G06F9/50GK103197976SQ20131012454
公開日2013年7月10日 申請日期2013年4月11日 優(yōu)先權日2013年4月11日
發(fā)明者陳琳 申請人:華為技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1