專利名稱:計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法和系統(tǒng)。
背景技術(shù):
貝奧武夫(Beowulf)集群是一種高性能的并行計(jì)算機(jī)集群結(jié)構(gòu),它是由一組獨(dú)立的計(jì)算機(jī)系統(tǒng)構(gòu)建的松耦合的多處理機(jī)系統(tǒng),系統(tǒng)中各進(jìn)程借助網(wǎng)絡(luò)實(shí)現(xiàn)通信、共享內(nèi)存?zhèn)鬟f信息,從而實(shí)現(xiàn)分布式并行計(jì)算。Beowulf 集群的設(shè)計(jì)目標(biāo)是使一般大學(xué)的計(jì)算機(jī)系和小型研究機(jī)構(gòu)有能力建立自己的超級計(jì)算機(jī)系統(tǒng),每秒可運(yùn)行上十億條指令。Beowulf集群技術(shù)解決了如何通過使用普通計(jì)算機(jī)來達(dá)到高性能、高實(shí)時(shí)的計(jì)算系統(tǒng)的問題。近年來,Beowulf 集群系統(tǒng)迅速發(fā)展,主要是因?yàn)樽鳛榧汗?jié)點(diǎn)的工作站系統(tǒng)的處理性能越來越強(qiáng),更快的處理器和更高效的多CPU機(jī)器大量進(jìn)入市場,以及局域網(wǎng)新技術(shù)和新協(xié)議的引入, 集群節(jié)點(diǎn)間的通信能獲得更高的帶寬和較小的延遲,集群系統(tǒng)比傳統(tǒng)的并行計(jì)算機(jī)更易于融合到已有的網(wǎng)絡(luò)系統(tǒng)中去。目前,集群系統(tǒng)的開發(fā)工具日臻成熟,其價(jià)格也愈加便宜并且易于構(gòu)建。另外,集群系統(tǒng)的可擴(kuò)展性良好,節(jié)點(diǎn)的性能也很容易通過增加內(nèi)存或改善處理器性能獲得提聞。信息傳遞接口(Message Passing Interface, MPI)是一種消息傳遞編程接口,它提供了實(shí)現(xiàn)其一系列接口的多語言函數(shù)集。MPI是Beomilf集群上常用的消息傳遞機(jī)制,并行程序常常使用MPI來進(jìn)行數(shù)據(jù)的發(fā)送與接收。MPI標(biāo)準(zhǔn)定義了一組函數(shù),使應(yīng)用程序可以將消息從一個(gè)MPI進(jìn)程傳遞到另一個(gè)MPI進(jìn)程。在Beowulf集群系統(tǒng)中,N個(gè)節(jié)點(diǎn)(如計(jì)算機(jī))之間使用MPI進(jìn)行數(shù)據(jù)傳輸時(shí),通常采用順次傳輸模型。具體地說,首先給每個(gè)節(jié)點(diǎn)依次編一個(gè)號(hào)碼,從0開始,直到N-1。圖Ia示出了現(xiàn)有技術(shù)的第I輪數(shù)據(jù)發(fā)送過程的示意圖,圖Ib示出了現(xiàn)有技術(shù)的第I輪數(shù)據(jù)接收過程的示意圖,圖Ia和圖Ib示出了 6個(gè)節(jié)點(diǎn)的情況。如圖Ia和圖Ib所示,在第I輪數(shù)據(jù)傳輸過程中,除節(jié)點(diǎn)0以外的其它節(jié)點(diǎn)都使用MPI發(fā)送(MPI_Send)函數(shù)向節(jié)點(diǎn)0發(fā)送數(shù)據(jù),此時(shí)節(jié)點(diǎn)0在一個(gè)循環(huán)語句中使用MPI接收(MPI_Recv)函數(shù)依次接收從節(jié)點(diǎn)I到N-I發(fā)送過來的數(shù)據(jù)。在第2輪數(shù)據(jù)傳輸過程中,除節(jié)點(diǎn)I以外的其它節(jié)點(diǎn)都使用MPI_Send函數(shù)向節(jié)點(diǎn)I發(fā)送數(shù)據(jù),此時(shí)節(jié)點(diǎn)I在一個(gè)循環(huán)語句中使用MPI_Recv函數(shù)依次接收從節(jié)點(diǎn)O、2到N-I發(fā)送過來的數(shù)據(jù)。依次類推,直到第N輪數(shù)據(jù)傳輸過程結(jié)束后,所有節(jié)點(diǎn)都獲得了其他節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù),整個(gè)數(shù)據(jù)傳輸過程完成。上述采用順次傳輸模型的數(shù)據(jù)傳輸方法存在如下缺點(diǎn)在通常情況下,集群系統(tǒng)中所有節(jié)點(diǎn)的網(wǎng)卡都是同構(gòu)的,所以它們的最大傳輸帶寬是相同的。由于在每一輪數(shù)據(jù)傳輸過程中,所有節(jié)點(diǎn)都會(huì)向同一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù),在將接收節(jié)點(diǎn)的帶寬打滿的情況下,所有發(fā)送節(jié)點(diǎn)的帶寬是沒用滿的,這樣造成了整體傳輸帶寬的浪費(fèi)
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸系統(tǒng)和相應(yīng)的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法。根據(jù)本發(fā)明的一個(gè)方面,提供了一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法,包括將N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程分為N-I輪,N彡2 ;對于每個(gè)節(jié)點(diǎn),隨機(jī)選擇該節(jié)點(diǎn)的數(shù)據(jù)發(fā)送順序,所述數(shù)據(jù)發(fā)送順序是在數(shù)據(jù)傳輸過程中接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序;在每一輪數(shù)據(jù)傳輸過程中,每個(gè)節(jié)點(diǎn)都執(zhí)行一次發(fā)送動(dòng)作,執(zhí)行發(fā)送動(dòng)作的節(jié)點(diǎn)按照自身的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù);執(zhí)行接收動(dòng)作的節(jié)點(diǎn)根據(jù)先到先收的方式接收數(shù)據(jù);其中,所述發(fā)送動(dòng)作采用非阻塞式通信方法來執(zhí)行。 根據(jù)本發(fā)明的另一方面,提供了一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸系統(tǒng),包括N個(gè)節(jié)點(diǎn),所述N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程分為N-I輪,N > 2 ;其中,每一個(gè)節(jié)點(diǎn)包括發(fā)送單元,用于在每一輪數(shù)據(jù)傳輸過程中,執(zhí)行一次發(fā)送動(dòng)作,所述發(fā)送動(dòng)作具體為按照自身的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù);所述數(shù)據(jù)發(fā)送順序是隨機(jī)選擇的,所述數(shù)據(jù)發(fā)送順序是在數(shù)據(jù)傳輸過程中接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序;接收單元,用于根據(jù)先到先收的方式接收數(shù)據(jù);其中,所述發(fā)送單元具體用于采用非阻塞式通信方法執(zhí)行發(fā)送動(dòng)作。根據(jù)本發(fā)明提供的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法和系統(tǒng),在每一輪數(shù)據(jù)傳輸過程中,執(zhí)行發(fā)送動(dòng)作的節(jié)點(diǎn)按照自身隨機(jī)選擇的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù),這樣同時(shí)發(fā)往同一個(gè)節(jié)點(diǎn)的概率大大減少,極少出現(xiàn)一個(gè)節(jié)點(diǎn)同時(shí)接收所有其他節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的情況,將數(shù)據(jù)分散傳輸,保證每個(gè)節(jié)點(diǎn)的網(wǎng)卡都可以較為充分的利用最大傳輸帶寬工作。執(zhí)行接收動(dòng)作的節(jié)點(diǎn)根據(jù)先到先收的方式接收數(shù)據(jù),實(shí)現(xiàn)了無延遲的數(shù)據(jù)接收。上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中圖Ia示出了現(xiàn)有技術(shù)的第I輪數(shù)據(jù)發(fā)送過程的示意圖;圖Ib示出了現(xiàn)有技術(shù)的第I輪數(shù)據(jù)接收過程的示意圖;圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法的流程圖;圖3a示出了本發(fā)明實(shí)施例中第I輪數(shù)據(jù)發(fā)送過程的示意圖;圖3b示出了本發(fā)明實(shí)施例中第I輪數(shù)據(jù)接收過程的示意圖;圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。與現(xiàn)有技術(shù)的數(shù)據(jù)傳輸方法采用順次傳輸模型不同的是,本發(fā)明的數(shù)據(jù)傳輸方法采用分輪次隨機(jī)收發(fā)模型。本發(fā)明的集群系統(tǒng)包括N個(gè)節(jié)點(diǎn),NS 2,那么這N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程就被分為N-I輪。圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)傳輸方法的流程圖。如圖2所示,該計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法包括如下步驟步驟101、對于N個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn),隨機(jī)選擇該節(jié)點(diǎn)的數(shù)據(jù)發(fā)送順序。該數(shù)據(jù)發(fā)送順序是指在數(shù)據(jù)傳輸過程中,接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序。該數(shù)據(jù)發(fā)送順序限定了節(jié)點(diǎn)在每一輪數(shù)據(jù)傳輸過程向哪個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)。每 個(gè)節(jié)點(diǎn)的數(shù)據(jù)發(fā)送順序是隨機(jī)選擇的,一旦選定該數(shù)據(jù)發(fā)送順序,在N-I輪的數(shù)據(jù)傳輸過程中,每個(gè)節(jié)點(diǎn)都按照對應(yīng)的數(shù)據(jù)發(fā)送順序向指定節(jié)點(diǎn)發(fā)送數(shù)據(jù)。設(shè)N為6,給這6個(gè)節(jié)點(diǎn)分別編一個(gè)號(hào)碼為0、1、2、3、4、5。對于其中的每個(gè)節(jié)點(diǎn),隨機(jī)選擇對應(yīng)的數(shù)據(jù)發(fā)送順序。表I示出了為每個(gè)節(jié)點(diǎn)隨機(jī)選擇的數(shù)據(jù)發(fā)送順序。表I.節(jié)點(diǎn)與數(shù)據(jù)發(fā)送順序?qū)?yīng)表
權(quán)利要求
1.一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法,包括 將N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程分為N-I輪,N > 2 ; 對于每個(gè)節(jié)點(diǎn),隨機(jī)選擇該節(jié)點(diǎn)的數(shù)據(jù)發(fā)送順序,所述數(shù)據(jù)發(fā)送順序是在數(shù)據(jù)傳輸過程中接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序; 在每一輪數(shù)據(jù)傳輸過程中,每個(gè)節(jié)點(diǎn)都執(zhí)行一次發(fā)送動(dòng)作,執(zhí)行發(fā)送動(dòng)作的節(jié)點(diǎn)按照自身的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù);執(zhí)行接收動(dòng)作的節(jié)點(diǎn)根據(jù)先到先收的方式接收數(shù)據(jù); 其中,所述發(fā)送動(dòng)作采用非阻塞式通信方法來執(zhí)行。
2.根據(jù)權(quán)利要求I所述的數(shù)據(jù)傳輸方法,所述接收動(dòng)作采用阻塞式通信方法來執(zhí)行。
3.根據(jù)權(quán)利要求I或2所述的數(shù)據(jù)傳輸方法,所述N個(gè)節(jié)點(diǎn)屬于貝奧武夫集群系統(tǒng),所述發(fā)送動(dòng)作采用非阻塞式的MPI發(fā)送函數(shù)來實(shí)現(xiàn)。
4.根據(jù)權(quán)利要求2所述的數(shù)據(jù)傳輸方法,所述N個(gè)節(jié)點(diǎn)屬于貝奧武夫集群系統(tǒng),所述接收動(dòng)作采用阻塞式的MPI接收函數(shù)來實(shí)現(xiàn)。
5.一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸系統(tǒng),包括N個(gè)節(jié)點(diǎn),所述N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程分為N-I輪,N > 2 ; 其中,每一個(gè)節(jié)點(diǎn)包括 發(fā)送單元,用于在每一輪數(shù)據(jù)傳輸過程中,執(zhí)行一次發(fā)送動(dòng)作,所述發(fā)送動(dòng)作具體為按照自身的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù);所述數(shù)據(jù)發(fā)送順序是隨機(jī)選擇的,所述數(shù)據(jù)發(fā)送順序是在數(shù)據(jù)傳輸過程中接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序; 接收單元,用于根據(jù)先到先收的方式接收數(shù)據(jù); 其中,所述發(fā)送單元具體用于采用非阻塞式通信方法執(zhí)行發(fā)送動(dòng)作。
6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)傳輸系統(tǒng),所述接收單元具體用于采用阻塞式通信方法執(zhí)行接收動(dòng)作。
7.根據(jù)權(quán)利要求5或6所述的數(shù)據(jù)傳輸系統(tǒng),所述數(shù)據(jù)傳輸系統(tǒng)為貝奧武夫集群系統(tǒng),所述發(fā)送單元具體用于采用非阻塞式的MPI發(fā)送函數(shù)來實(shí)現(xiàn)所述發(fā)送動(dòng)作。
8.根據(jù)權(quán)利要求6所述的數(shù)據(jù)傳輸系統(tǒng),所述數(shù)據(jù)傳輸系統(tǒng)為貝奧武夫集群系統(tǒng),所述接收單元具體用于采用阻塞式的MPI接收函數(shù)來實(shí)現(xiàn)所述接收動(dòng)作。
全文摘要
本發(fā)明公開了一種計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法和系統(tǒng)。其中數(shù)據(jù)傳輸系統(tǒng)包括N個(gè)節(jié)點(diǎn),所述N個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸過程分為N-1輪,N≥2;其中,每一個(gè)節(jié)點(diǎn)包括發(fā)送單元,用于在每一輪數(shù)據(jù)傳輸過程中,執(zhí)行一次發(fā)送動(dòng)作,所述發(fā)送動(dòng)作具體為按照自身的數(shù)據(jù)發(fā)送順序發(fā)送數(shù)據(jù);所述數(shù)據(jù)發(fā)送順序是隨機(jī)選擇的,所述數(shù)據(jù)發(fā)送順序是在數(shù)據(jù)傳輸過程中接收該節(jié)點(diǎn)發(fā)送的數(shù)據(jù)的節(jié)點(diǎn)按照輪次的排列順序;接收單元,用于根據(jù)先到先收的方式接收數(shù)據(jù);其中,所述發(fā)送單元具體用于采用非阻塞式通信方法執(zhí)行發(fā)送動(dòng)作。本發(fā)明提供的計(jì)算機(jī)集群中節(jié)點(diǎn)間數(shù)據(jù)傳輸方法和系統(tǒng)將數(shù)據(jù)分散傳輸,保證每個(gè)節(jié)點(diǎn)的網(wǎng)卡都可以較為充分的利用最大傳輸帶寬工作。
文檔編號(hào)H04L12/861GK102984084SQ20121047539
公開日2013年3月20日 申請日期2012年11月21日 優(yōu)先權(quán)日2012年11月21日
發(fā)明者何銳邦, 唐會(huì)軍 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司