專利名稱:并行計算中作業(yè)全局任務(wù)信息傳遞方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種并行計算中作業(yè)全局任務(wù)信息傳遞方法。
背景技術(shù):
在并行計算中,需要將作業(yè)全局任務(wù)信息傳遞部署到所有運行課題任務(wù)的計算節(jié)點上。作為啟動作業(yè)過程中占用時間較多的部分,全局作業(yè)任務(wù)信息傳遞部署的快慢將直接影響整道作業(yè)的啟動時間與效率。當(dāng)前主流作業(yè)管理系統(tǒng)中,主要通過單層次一對多的方式,直接在作業(yè)總控將作業(yè)任務(wù)信息傳遞到所有計算節(jié)點。當(dāng)系統(tǒng)計算節(jié)點規(guī)模巨大時,在這種方式中由于存在一對多單點瓶頸,作業(yè)總控點的帶寬制約了信息傳遞的效率,導(dǎo)致作業(yè)啟動時間長、效率差。為了提高作業(yè)啟動的效率,減少全局任務(wù)信息傳遞時間,需要其他有效的技術(shù)手段來解決網(wǎng)絡(luò)壓力問題。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是減少全局任務(wù)信息傳遞時間,提高大規(guī)模作業(yè)啟動的效率,有效緩解網(wǎng)絡(luò)壓力。為了解決上述問題,本發(fā)明提供了一種并行計算中作業(yè)全局任務(wù)信息傳遞方法,包括根據(jù)所述并行計算中作業(yè)的規(guī)模,確定所需中間層的資源;所述中間層至少為一層;作業(yè)總控將所述作業(yè)全局任務(wù)信息采用一對多的方式傳遞至中間層的資源,并經(jīng)由所述中間層的資源將所述作業(yè)全局任務(wù)信息傳遞至計算節(jié)點;其中,所述中間層的資源的數(shù)量小于所述計算節(jié)點的數(shù)量。可選的,所述經(jīng)由所述中間層的資源將所述作業(yè)全局任務(wù)信息傳遞至計算節(jié)點的過程中,各層中間層之間的傳遞采用一對多的傳遞方式,最底層中間層的資源將所述作業(yè)全局任務(wù)信息向所述計算節(jié)點進行一對多的傳遞??蛇x的,所述一對多的數(shù)量比為1:35(Γ :400??蛇x的,所述中間層的資源包括物理機、物理機上的虛擬機中的一種或多種??蛇x的,在由作業(yè)總控至計算節(jié)點的傳遞路徑中,所述虛擬機只能向計算節(jié)點傳遞所述作業(yè)全局任務(wù)信息;所述物理機能向物理機、虛擬機或者計算節(jié)點中的一種或多種傳遞所述作業(yè)全局任務(wù)信息。可選的,所述中間層的資源為虛擬機時,對從屬于同一物理機的多個虛擬機,只向其中一個虛擬機傳遞所述作業(yè)全局任務(wù)信息;已得到所述作業(yè)全局任務(wù)信息的虛擬機以內(nèi)存拷貝的方式向從屬于同一物理機的其他虛擬機提供所述作業(yè)全局任務(wù)信息。
可選的,向從屬于同一物理機的多個虛擬機中編號最小的虛擬機傳遞所述作業(yè)全
局任務(wù)信息??蛇x的,在向所述編號最小的虛擬機網(wǎng)絡(luò)傳遞作業(yè)全局任務(wù)信息的同時,還向所述編號最小的虛擬機傳遞從屬于同一物理機的虛擬機信息鏈表;所述編號最小的虛擬機根據(jù)所述虛擬機信息鏈表中的編號,向與所述編號對應(yīng)的虛擬機提供所述作業(yè)全局任務(wù)信息??蛇x的,從屬于同一物理機的虛擬機數(shù)量不超過8個??蛇x的,當(dāng)所述中間層的資源為虛擬機時,還包括根據(jù)所述并行計算中作業(yè)規(guī)模及物理機的負(fù)載情況,計算所需的虛擬機數(shù)量;依據(jù)動態(tài)自適應(yīng)算法選擇最優(yōu)的虛擬機??蛇x的,還包括在作業(yè)總控傳遞所述作業(yè)全局任務(wù)信息之前,對所述作業(yè)全局任務(wù)信息進行壓縮;在計算節(jié)點接收所述作業(yè)全局任務(wù)信息之后,對所述作業(yè)全局任務(wù)信息進行解壓縮。與現(xiàn)有技術(shù)相比,本發(fā)明的技術(shù)方案具有以下優(yōu)點I、在作業(yè)總控與運行課題任務(wù)的計算節(jié)點之間增加中間層,作業(yè)總控僅需向中間層進行作業(yè)全局任務(wù)信息的傳遞,再由中間層向計算節(jié)點傳遞作業(yè)全局任務(wù)信息,有效緩解了作業(yè)總控點的傳輸瓶頸問題,從而減少全局任務(wù)信息傳遞時間,提高作業(yè)啟動的效率,有效緩解網(wǎng)絡(luò)壓力。2、可選方案中,采用虛擬管理資源作為中間層進行作業(yè)全局任務(wù)信息的傳遞,進一步減少了實際物理傳輸量,從而進一步緩解了單點傳送瓶頸問題;并且利用虛擬機內(nèi)存拷貝技術(shù)提高傳輸速率,可有效提高任務(wù)部署效率,減少信息傳遞時間。3、可選方案中,在作業(yè)總控向中間層傳遞作業(yè)全局任務(wù)信息之前對作業(yè)全局任務(wù)信息進行了壓縮,進一步減少了網(wǎng)絡(luò)數(shù)據(jù)傳輸量,從而進一步緩解單點網(wǎng)絡(luò)傳輸壓力,提高了作業(yè)啟動的效率。
閱圖I為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法一具體實施方式
的流程圖;
圖2為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法另一具體實施方式
的流程 閱圖3為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第一實施例的過程示意圖;
閱圖4為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第二實施例的過程示意圖;
圖5為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第三實施例的過程示意圖。
具體實施例方式在下面的描述中闡述了很多具體細節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以很多不同于在此描述的其它方式來實施,本領(lǐng)域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣,因此本發(fā)明不受下面公開的具體實施的限制。 其次,本發(fā)明利用示意圖進行詳細描述,在詳述本發(fā)明實施例時,為便于說明,所述示意圖只是實例,其在此不應(yīng)限制本發(fā)明保護的范圍。為了解決背景技術(shù)中的技術(shù)問題,本發(fā)明提供了一種并行計算中作業(yè)全局任務(wù)信息傳遞方法。圖I為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法一具體實施方式
的流程圖。如圖I所示,本具體實施方式
包括以下步驟執(zhí)行步驟S11,根據(jù)并行計算中作業(yè)的規(guī)模,確定所需中間層的資源;中間層至少為一層;執(zhí)行步驟S12,作業(yè)總控將作業(yè)全局任務(wù)信息采用一對多的方式傳遞至中間層的資源,并經(jīng)由中間層的資源將作業(yè)全局任務(wù)信息傳遞至計算節(jié)點;中間層的資源的數(shù)量小于計算節(jié)點的數(shù)量。具體地,作業(yè)總控按照步驟Sll中確定的最上層的中間層的資源,將作業(yè)全局任務(wù)信息以一對多的方式傳遞至最上層的中間層的資源。然后各層中間層之間按照步驟Sll中確定的各層中間層的資源,依次由上層往下層以一對多的方式傳遞作業(yè)全局任務(wù)信息,直至最底層中間層的資源將作業(yè)全局任務(wù)信息向計算節(jié)點進行一對多的傳遞。需要說明的是,若一對多的比例過低,則在作業(yè)總控這一層向下傳遞的數(shù)據(jù)流減少得不夠明顯,相應(yīng)地,全局任務(wù)信息的傳遞時間減少得有限,作業(yè)啟動速度及網(wǎng)絡(luò)傳輸壓力只能得到部分改善。若一對多的比例過高,則需要增添的物理機較多,成本開銷及管理開銷較大,性價比較低。因此,兼顧傳遞效率及開銷的雙重考慮,優(yōu)選地,一對多的數(shù)量比在1:350^1:400 之間。所述中間層的資源既可以是實際上的物理機,也可以是物理機上的虛擬機。需要說明的是,若從屬于同一物理機的虛擬機數(shù)量過低,則通過增加虛擬機以減少實際物理上的網(wǎng)絡(luò)數(shù)據(jù)傳輸、提高作業(yè)全局任務(wù)信息傳遞效率的效果不明顯。若從屬于同一物理機的虛擬機數(shù)量過高,則對物理機的機器性能要求較高,且對虛擬機的管理開銷較大。因此,優(yōu)選地,從屬于同一物理機的虛擬機數(shù)量不超過8個。同時,需要說明的是,在由作業(yè)總控至計算節(jié)點的傳遞路徑中,虛擬機只能向計算節(jié)點傳遞作業(yè)全局任務(wù)信息,也就是說所述虛擬機總是位于最底層中間層的資源。而物理機則能向物理機、虛擬機或者計算節(jié)點傳遞作業(yè)全局任務(wù)信息,即存在多層中間層的資源的情況下,上層中間層的資源為物理機。由于從屬于同一物理機的多個虛擬機雖然在運行過程中互相獨立,但在實質(zhì)上共享同一物理機的內(nèi)存資源。因此,當(dāng)中間層的資源為虛擬機時,對從屬于同一物理機的多個虛擬機,只需向其中一個虛擬機傳遞作業(yè)全局任務(wù)信息。再由已得到作業(yè)全局任務(wù)信息的虛擬機以內(nèi)存拷貝的方式向從屬于同一物理機的其他虛擬機提供作業(yè)全局任務(wù)信息。通過這樣的方式,只要傳輸一遍作業(yè)全局任務(wù)信息,就能供從屬于同一物理機上的多個虛擬機共同使用,進一步減少了網(wǎng)絡(luò)傳輸數(shù)據(jù)量,從而提高全局任務(wù)信息傳遞效率,減少作業(yè)啟動所需的時間。
具體地,物理機是通過唯一的編號,實現(xiàn)對從屬于同一物理機上的多個虛擬機的管理的。因此,可選擇從屬于同一物理機的多個虛擬機中編號最小的虛擬機,向其實際傳遞作業(yè)全局任務(wù)信息。同時,將從屬于同一物理機的虛擬機信息鏈表也傳遞給編號最小的虛擬機。編號最小的虛擬機根據(jù)虛擬機信息鏈表中的編號,可獲悉從屬于同一物理機的其他虛擬機的信息,從而向這些虛擬器提供作業(yè)全局任務(wù)信息。圖2為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法另一具體實施方式
的流程圖。如圖2所示,本具體實施方式
包括以下步驟執(zhí)行步驟S21,根據(jù)并行計算中作業(yè)的規(guī)模,確定所需中間層的資源;中間層至少為一層;執(zhí)行步驟S22,根據(jù)并行計算中作業(yè)規(guī)模及物理機的負(fù)載情況,計算所需的虛擬機
數(shù)量;執(zhí)行步驟S23,依據(jù)動態(tài)自適應(yīng)算法選擇最優(yōu)的虛擬機;執(zhí)行步驟S24,對作業(yè)全局任務(wù)信息進行壓縮;執(zhí)行步驟S25,作業(yè)總控將作業(yè)全局任務(wù)信息采用一對多的方式傳遞至中間層的資源,并經(jīng)由中間層的資源將作業(yè)全局任務(wù)信息傳遞至計算節(jié)點;中間層的資源的數(shù)量小于計算節(jié)點的數(shù)量;執(zhí)行步驟S26,對作業(yè)全局任務(wù)信息進行解壓縮。與前一具體實施方式
相同的部分,此處不再贅述。與前一具體實施方式
不同的是,本具體實施方式
中間層的資源包含虛擬機,因此本具體實施方式
中包括根據(jù)并行計算中作業(yè)規(guī)模及物理機的負(fù)載情況,計算所需的虛擬機數(shù)量以及依據(jù)動態(tài)自適應(yīng)算法選擇最優(yōu)的虛擬機的步驟。需要說明的是,現(xiàn)有技術(shù)中已有多種根據(jù)作業(yè)規(guī)模和物理機負(fù)載情況計算合適的虛擬機數(shù)量的算法,亦已有多種動態(tài)自適應(yīng)選擇最優(yōu)的虛擬機的算法,本發(fā)明對此不做具體限定,本領(lǐng)域技術(shù)人員可根據(jù)實際情況自由選擇。同時,為了進一步減少網(wǎng)絡(luò)傳輸量、緩解網(wǎng)絡(luò)壓力,本具體實施方式
在作業(yè)總控傳遞所述作業(yè)全局任務(wù)信息之前,對作業(yè)全局任務(wù)信息進行了壓縮,并在計算節(jié)點接收所述作業(yè)全局任務(wù)信息之后,對作業(yè)全局任務(wù)信息進行了解壓縮?,F(xiàn)有技術(shù)中亦有多種壓縮及解壓縮算法,本發(fā)明對此不做具體限定,本領(lǐng)域技術(shù)人員可根據(jù)實際情況自由選擇。下面結(jié)合附圖和具體實施例對本發(fā)明的技術(shù)方案做進一步說明。圖3為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第一實施例的過程示意圖。如圖3所示,本實施例中包含I層中間層,該中間層的資源全部由物理機構(gòu)成。由于作業(yè)總控通過中間層的物理機以一對多的方式傳遞作業(yè)全局任務(wù)信息,因此,所述物理機的數(shù)量遠小于計算節(jié)點的數(shù)量。因此,現(xiàn)有技術(shù)中作業(yè)總控向計算節(jié)點單層間一對多傳輸完畢后才能啟動作業(yè),而現(xiàn)在作業(yè)總控僅需向中間層的物理機傳輸作業(yè)全局任務(wù)信息,網(wǎng)絡(luò)數(shù)據(jù)傳輸量大大減少,有效緩解了作業(yè)總控點的網(wǎng)絡(luò)傳輸壓力,有效提高任務(wù)部署效率。圖4為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第二實施例的過程示意圖。本實施例中包含I層中間層,但與第一實施例不同的是,本實施例中的中間層資源既包括物理機,也包括虛擬機。如圖4所不,作業(yè)總控僅需向從屬于同一物理機上的多個虛擬機的其中一個傳遞作業(yè)全局任務(wù)信息。由已得到作業(yè)全局任務(wù)信息的虛擬機以內(nèi)存拷貝的方式向從屬于同一物理機的其他虛擬機提供作業(yè)全局任務(wù)信息。因此,作業(yè)總控向中間層的資源傳遞的網(wǎng)絡(luò)數(shù)據(jù)量進一步減少,從而提高傳輸效率,減少作業(yè)任務(wù)的啟動時間。圖5為本發(fā)明的并行計算中作業(yè)全局任務(wù)信息傳遞方法第三實施例的過程示意圖。本實施例中包含2層中間層,2層中間層的資源包括物理機和物理機上的虛擬機。通過設(shè)置多層的中間層,可進一步減少作業(yè)總控向中間層的資源傳遞的網(wǎng)絡(luò)數(shù)據(jù)量,從而提高任務(wù)啟動效率。如圖5所示,在由作業(yè)總控至計算節(jié)點的傳遞路徑中,虛擬機直接向計算節(jié)點傳遞作業(yè)全局任務(wù)信息,而當(dāng)中間層的資源為一物理機上,可在其下層繼續(xù)設(shè)置物理機或者物理機上的虛擬機,或者直接由該物理機向計算節(jié)點傳遞作業(yè)全局任務(wù)信息。需要說明的是,通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明的部分或全部可借助軟件并結(jié)合必需的通用硬件平臺來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可包括其上存儲有機器可執(zhí)行指令的一個或多個機器可讀介質(zhì),這些指令在由諸如計算機、計算機網(wǎng)絡(luò)或其他電子設(shè)備等一個或多個機器執(zhí)行時可使得該一個或多個機器根據(jù)本發(fā)明的實施例來執(zhí)行操作。機器可讀介質(zhì)可包括,但不限于,軟盤、光盤、CD-ROM (緊致盤-只讀存儲器)、磁光盤、ROM (只讀存儲器)、RAM (隨機存取存儲器)、EPROM (可擦除可編程只讀存儲器)、EEPROM (電可擦除可編程只讀存儲器)、磁卡或光卡、閃存、或適于存儲機器可執(zhí)行指令的其他類型的介質(zhì)/機器可讀介質(zhì)。本發(fā)明可用于眾多通用或?qū)S玫挠嬎阆到y(tǒng)環(huán)境或配置中。例如個人計算機、服務(wù)器計算機、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費電子設(shè)備、網(wǎng)絡(luò)PC、小型計算機、大型計算機、包括以上任何系統(tǒng)或設(shè)備的分布式計算環(huán)境等。本發(fā)明可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本申請,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠程計算機存儲介質(zhì)中。本發(fā)明雖然已以較佳實施例公開如上,但其并不是用來限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出可能的變動和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護范圍。
權(quán)利要求
1.一種并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于,包括 根據(jù)所述并行計算中作業(yè)的規(guī)模,確定所需中間層的資源;所述中間層至少為一層;作業(yè)總控將所述作業(yè)全局任務(wù)信息采用一對多的方式傳遞至中間層的資源,并經(jīng)由所述中間層的資源將所述作業(yè)全局任務(wù)信息傳遞至計算節(jié)點; 其中,所述中間層的資源的數(shù)量小于所述計算節(jié)點的數(shù)量。
2.如權(quán)利要求I所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 所述經(jīng)由所述中間層的資源將所述作業(yè)全局任務(wù)信息傳遞至計算節(jié)點的過程中,各層中間層之間的傳遞采用一對多的傳遞方式,最底層中間層的資源將所述作業(yè)全局任務(wù)信息向所述計算節(jié)點進行一對多的傳遞。
3.如權(quán)利要求I或2所述的任一種并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于, 所述一對多的數(shù)量比為l:35(Tl:400。
4.如權(quán)利要求I所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于,包括 所述中間層的資源包括物理機、物理機上的虛擬機中的一種或多種。
5.如權(quán)利要求4所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 在由作業(yè)總控至計算節(jié)點的傳遞路徑中,所述虛擬機只能向計算節(jié)點傳遞所述作業(yè)全局任務(wù)信息;所述物理機能向物理機、虛擬機或者計算節(jié)點中的一種或多種傳遞所述作業(yè)全局任務(wù)信息。
6.如權(quán)利要求4所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 所述中間層的資源為虛擬機時,對從屬于同一物理機的多個虛擬機,只向其中一個虛擬機傳遞所述作業(yè)全局任務(wù)信息; 已得到所述作業(yè)全局任務(wù)信息的虛擬機以內(nèi)存拷貝的方式向從屬于同一物理機的其他虛擬機提供所述作業(yè)全局任務(wù)信息。
7.如權(quán)利要求6所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 向從屬于同一物理機的多個虛擬機中編號最小的虛擬機傳遞所述作業(yè)全局任務(wù)信息。
8.如權(quán)利要求7所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 在向所述編號最小的虛擬機網(wǎng)絡(luò)傳遞作業(yè)全局任務(wù)信息的同時,還向所述編號最小的虛擬機傳遞從屬于同一物理機的虛擬機信息鏈表; 所述編號最小的虛擬機根據(jù)所述虛擬機信息鏈表中的編號,向與所述編號對應(yīng)的虛擬機提供所述作業(yè)全局任務(wù)信息。
9.如權(quán)利要求6所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于 從屬于同一物理機的虛擬機數(shù)量不超過8個。
10.如權(quán)利要求4所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于,當(dāng)所述中間層的資源為虛擬機時,還包括 根據(jù)所述并行計算中作業(yè)規(guī)模及物理機的負(fù)載情況,計算所需的虛擬機數(shù)量; 依據(jù)動態(tài)自適應(yīng)算法選擇最優(yōu)的虛擬機。
11.如權(quán)利要求I所述的并行計算中作業(yè)全局任務(wù)信息傳遞方法,其特征在于,還包括 在作業(yè)總控傳遞所述作業(yè)全局任務(wù)信息之前,對所述作業(yè)全局任務(wù)信息進行壓縮;在計算節(jié)點接收所述作業(yè)全局任務(wù)信息之后,對所述作業(yè)全局任務(wù)信息進行解壓縮。·
全文摘要
一種并行計算中作業(yè)全局任務(wù)信息傳遞方法,包括根據(jù)所述并行計算中作業(yè)的規(guī)模,確定所需中間層的資源;所述中間層至少為一層;作業(yè)總控將所述作業(yè)全局任務(wù)信息采用一對多的方式傳遞至中間層的資源,并經(jīng)由所述中間層的資源將所述作業(yè)全局任務(wù)信息傳遞至計算節(jié)點;其中,所述中間層的資源的數(shù)量小于所述計算節(jié)點的數(shù)量。本發(fā)明減少了全局任務(wù)信息傳遞時間,提高了大規(guī)模作業(yè)啟動的效率,有效緩解了網(wǎng)絡(luò)壓力。
文檔編號H04L29/08GK102932410SQ20121035994
公開日2013年2月13日 申請日期2012年9月24日 優(yōu)先權(quán)日2012年9月24日
發(fā)明者宋長明, 張宏宇, 李偉東 申請人:無錫江南計算技術(shù)研究所