国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于軟硬件協(xié)同思想的機(jī)群互連系統(tǒng)通信協(xié)議設(shè)計*

2018-12-19 01:55倪博遠(yuǎn)
通信技術(shù) 2018年12期
關(guān)鍵詞:描述符機(jī)群數(shù)據(jù)通信

倪博遠(yuǎn)

(空軍工程大學(xué) 信息與導(dǎo)航學(xué)院,陜西 西安 710077)

0 引 言

目前,較常見的機(jī)群互連網(wǎng)絡(luò)大多數(shù)采用數(shù)據(jù)包控制所包含軟件的通信協(xié)議。此種方法產(chǎn)生的通信開銷較大。對此,更多專家教授在研究機(jī)群通信協(xié)議時,在高速交換網(wǎng)絡(luò)中所采用的硬件通信其自身處理開銷代價相對較小,而包含的軟件通信協(xié)議自身處理開銷代價相對較大,這是因前期針對機(jī)群通信協(xié)議的研究關(guān)注點主要放在對用戶層軟件通信協(xié)議的研究上。典型的用戶層通信協(xié)議主要有U-NET、VIA等,但所研究的用戶層協(xié)議提供給用戶的通信效率相對較低,效果不理想[1]。

經(jīng)過對前期研究的分析,誘發(fā)用戶通信效率降低的關(guān)鍵和主要因素是,機(jī)群互連網(wǎng)絡(luò)所包含的硬件協(xié)議在設(shè)計之初,缺乏設(shè)計與機(jī)群互連網(wǎng)絡(luò)所包含的用戶態(tài)軟件協(xié)議運行之間的協(xié)調(diào)配合。

FPGA以及相關(guān)可編程板件自身容量的不斷擴(kuò)充,有效地輔助機(jī)群硬件互連技術(shù)快速發(fā)展。通過前期對相關(guān)文獻(xiàn)的研究,本文研究的機(jī)群互連系統(tǒng)所采取的軟硬件協(xié)同(Software/Hardware Codesign)思想,是通過借助FPGA的硬件資源研究機(jī)群互連系統(tǒng)的通信協(xié)議,以提升機(jī)群互連網(wǎng)絡(luò)SHC-NET(Software/Hardware Codesign Network)的性能。

1 軟硬件協(xié)同設(shè)計

對通信協(xié)議的設(shè)計可以采用的方法具有多樣性。當(dāng)前,比較典型的一種方法是協(xié)同設(shè)計系統(tǒng)的軟硬件,以期實現(xiàn)對整個通信系統(tǒng)資源的協(xié)調(diào)、合理、整體的配置,有效提升通信系統(tǒng)整體效率。通過采用軟硬件協(xié)同設(shè)計通信協(xié)議的方法,研究的重難點主要集中在軟件和硬件通信協(xié)議之間如何實現(xiàn)通信過程中軟硬件之間的有效、合理分工。

對于機(jī)群互連系統(tǒng)通信協(xié)議的研究,若在設(shè)計之初的任務(wù)分配過程中,通過硬件承擔(dān)較多的通信協(xié)議處理任務(wù),則可有效減輕處理通信協(xié)議的主機(jī)CPU負(fù)擔(dān),充分實現(xiàn)高集成度的通信與計算一體化,從而有效提升機(jī)群互連系統(tǒng)的計算效率。同時,通信協(xié)議硬件處理部分較小的延遲開銷,可以有效提升系統(tǒng)整體的通信效率。

用軟件實現(xiàn)機(jī)群互連系統(tǒng)通信協(xié)議,即將通信協(xié)議本身更多的計算與處理工作交由處理通信協(xié)議的主機(jī)CPU來完成,增大了CPU的處理負(fù)擔(dān)。同時,由于借由軟件來處理與分析的通信協(xié)議往往延遲較大,不利于提高系統(tǒng)整體的通信效率。但是,軟件相比硬件處理相對復(fù)雜的通信協(xié)議更容易。因此,軟件處理通信協(xié)議可以有效增強(qiáng)機(jī)群通信協(xié)議的可擴(kuò)展性與設(shè)計靈活性,用戶可根據(jù)自身實際應(yīng)用需要,隨時、靈活且自主地設(shè)計滿足自身需求的通信系統(tǒng)[2]。

在分析LOGP等通信開銷模型時可以發(fā)現(xiàn),當(dāng)前高性能互連網(wǎng)絡(luò)中在物理層上用戶傳輸?shù)臄?shù)據(jù)速率較高,但用戶終端最終所獲得的數(shù)據(jù)傳輸速率卻很低。經(jīng)過對相關(guān)原因的分析發(fā)現(xiàn),主要導(dǎo)致用戶終端數(shù)據(jù)通信效率低的因素是在通信系統(tǒng)中相關(guān)數(shù)據(jù)處理過程應(yīng)用的通信協(xié)議產(chǎn)生的開銷較大。通信協(xié)議產(chǎn)生的處理開銷主要包括兩個部分,即硬件通信處理開銷和軟件處理開銷。表1所給的數(shù)據(jù)主要表現(xiàn)了以太網(wǎng)的通信性能。

表1 以太網(wǎng)的通信性能

對表1所示的以太網(wǎng)性能進(jìn)行分析可知,較好的軟件通信協(xié)議雖然能夠極大地提升用戶通信性能,但是應(yīng)用于實際的通信系統(tǒng)后,用戶最終通信效率仍然較低。例如:TCP/IP協(xié)議應(yīng)用于千兆位以太網(wǎng)中,通信延遲高達(dá)59 μs,但通信帶寬僅有248 Mb/s;應(yīng)用較新的M-VIA用戶態(tài)協(xié)議后,雖然通信性能相比未使用M-VIA時有很大的改善,但總體性能仍然有待提升,因為此時的通信延遲仍高達(dá)19 μs,通信帶寬也僅為480 Mb/s,帶寬效率僅為48%。機(jī)群互連網(wǎng)絡(luò)所包含的硬件協(xié)議與用戶態(tài)軟件協(xié)議在設(shè)計之初缺乏有效的協(xié)調(diào)配合與整體設(shè)計,是用戶終端通信效率相對較低的主要因素。為此,本文主要通過采用相關(guān)軟硬件協(xié)同設(shè)計的思路,設(shè)計機(jī)群互連系統(tǒng)所包含的通信協(xié)議,以期為用戶提供更高效的網(wǎng)絡(luò)通信[3]。

對機(jī)群互連系統(tǒng)所涉及的通信協(xié)議進(jìn)行軟硬件協(xié)同設(shè)計,可以實現(xiàn)合理、高效、整體地配置整個通信系統(tǒng)所包含的系統(tǒng)資源,從整體上提高通信系統(tǒng)的效率。軟硬件協(xié)同設(shè)計的設(shè)計方法相較于傳統(tǒng)的設(shè)計方法,更加強(qiáng)調(diào)軟件設(shè)計師和硬件設(shè)計師兩類人員的相互協(xié)調(diào)與配合,通過采用并行設(shè)計方法,協(xié)調(diào)配合完成系統(tǒng)軟件和硬件設(shè)計,并在設(shè)計過程中貫穿對軟硬件一致性的控制和系統(tǒng)正確性的判斷。本文所選的軟硬件協(xié)同方法可以在硬件完成前幫助軟件設(shè)計者提前熟悉硬件模塊,結(jié)合硬件模塊需求幫助軟件設(shè)計者更好地設(shè)計相應(yīng)的硬件驅(qū)動、操作系統(tǒng)以及所需要的應(yīng)用程序等軟件。同樣,軟硬件協(xié)同的方法幫助硬件設(shè)計師提前熟悉與適應(yīng)軟件模塊,進(jìn)而在設(shè)計硬件平臺過程中,通過采用適應(yīng)軟件設(shè)計者設(shè)計需求的高性能硬件平臺,減少整體設(shè)計中的盲目性。在系統(tǒng)設(shè)計的早期階段,軟硬件協(xié)同設(shè)計還可以提前論證系統(tǒng)設(shè)計的正確性,發(fā)現(xiàn)通信系統(tǒng)設(shè)計過程中存在的諸多不足與部分錯誤,進(jìn)而有效降低傳統(tǒng)設(shè)計方法不能在軟件設(shè)計階段及時發(fā)現(xiàn)并改正所設(shè)計通信系統(tǒng)的缺陷,進(jìn)而有效降低重新設(shè)計系統(tǒng)的可能性。

通過應(yīng)用軟硬件協(xié)同方法設(shè)計機(jī)群互連通信協(xié)議的技術(shù)重難點在于,合理分工軟件和硬件通信協(xié)議之間所承擔(dān)的通信任務(wù)。對于機(jī)群互連系統(tǒng)所包含的通信協(xié)議,通過硬件承擔(dān)較多的通信協(xié)議處理任務(wù),可有效減輕處理通信協(xié)議的主機(jī)CPU負(fù)擔(dān),充分實現(xiàn)高集成度的通信與計算一體化,從而有效提升機(jī)群互連系統(tǒng)的計算效率。同時,通信協(xié)議硬件處理部分較小的延遲開銷可以有效提升系統(tǒng)整體的通信效率。但是,通過硬件實現(xiàn)機(jī)群互連系統(tǒng)通信協(xié)議的需求存在較為明顯的缺點,如邏輯復(fù)雜、網(wǎng)卡成本高且機(jī)群的靈活性和可擴(kuò)展性下降明顯等。

2 機(jī)群互連系統(tǒng)的硬件通信協(xié)議設(shè)計

2.1 基于軟硬件協(xié)同的NIC設(shè)計

當(dāng)前,VISI技術(shù)不斷進(jìn)步與發(fā)展,可編程芯片F(xiàn)PGA與多樣化的ARM板件自身容量在不斷增加,處理能力不斷增強(qiáng),為機(jī)群互連系統(tǒng)實現(xiàn)硬件上的互連提供了理論基礎(chǔ)與硬件支持,為軟硬件協(xié)同處理通信協(xié)議提供了良好的發(fā)展機(jī)會。通信描述符作為機(jī)群互連系統(tǒng)所包含的數(shù)據(jù)通信基礎(chǔ),用戶通過通信描述符向網(wǎng)卡提交通信任務(wù)。為有效提高機(jī)群互連系統(tǒng)中包含的數(shù)據(jù)通信的自身效率,借助軟硬件協(xié)同的設(shè)計思路與設(shè)計構(gòu)想,SHC-NET在網(wǎng)卡中直接實現(xiàn)通信描述符(Descriptor-DESC)的處理與運算,并借由硬件邏輯實現(xiàn)通信描述符中所包含的硬件通信描述符(Hardware Descriptor-HDESC)的處理與計算實現(xiàn)。

HDESC包含接收描述符和發(fā)送描述符兩類。其中,發(fā)送描述符主要是為實現(xiàn)數(shù)據(jù)的發(fā)送而構(gòu)建,接收描述符主要是為實現(xiàn)數(shù)據(jù)的接收而構(gòu)建。每個HDESC均包括長度寄存器和地址寄存器。在網(wǎng)卡中應(yīng)用硬件通信描述符實現(xiàn)數(shù)據(jù)通信的過程,如圖1所示。

基于HDESC的數(shù)據(jù)通信過程包含的具體步驟為:

步驟1:通過PCI接口,用戶將通信過程需要交互的信息寫入NIC相關(guān)負(fù)責(zé)發(fā)送/接收任務(wù)的硬件通信描述符寄存器中。通信過程需要交互的信息主要包括數(shù)據(jù)的MAC地址、數(shù)據(jù)的發(fā)送長度等信息。

圖1 數(shù)據(jù)通信

步驟2:啟動NIC后,根據(jù)寄存在硬件發(fā)送描述符所包含的寄存器信息,從內(nèi)存中直接以DMA方式讀取出用戶緩沖區(qū)數(shù)據(jù),通過進(jìn)一步融合相應(yīng)的通信控制信息,包裝形成發(fā)送幀發(fā)送數(shù)據(jù)至相應(yīng)的通信鏈路。

步驟3:接收端NIC收到相應(yīng)傳輸?shù)臄?shù)據(jù)后,通過分析硬件接收描述符寄存器的內(nèi)容和接收到的數(shù)據(jù)幀幀頭控制信息,將所接收到的數(shù)據(jù)通過DMA方式直接送入接收緩沖區(qū)中[4]。

通過分析數(shù)據(jù)通信的相關(guān)通信過程可知,在使用硬件通信發(fā)送/接收描述符進(jìn)行相關(guān)通信后,NIC每次只需要訪問一次內(nèi)存即可完成相關(guān)數(shù)據(jù)通信過程,有效提高了數(shù)據(jù)傳輸與處理計算的效率。

2.2 基于軟硬件協(xié)同的機(jī)群數(shù)據(jù)通信過程

應(yīng)用軟硬件協(xié)同思想構(gòu)建的SHC-NET,用戶發(fā)送數(shù)據(jù)可以通過圖2的過程表示。數(shù)據(jù)接收過程與數(shù)據(jù)發(fā)送的過程相類似。

圖2 SHC-NET的數(shù)據(jù)通信過程

用戶發(fā)送數(shù)據(jù)的過程如下:

(1)用戶通過MPI_Send函數(shù)將用戶緩沖區(qū)信息寫入核心空間的發(fā)送隊列中。發(fā)送隊列由DESC組成,每個DESC含有用戶通信的緩沖區(qū)信息。

(2)根據(jù)發(fā)送隊列中DESC信息初始化網(wǎng)卡中所運行的HDESC,并運行其中核心空間的底半函數(shù)。

(3)根據(jù)HDESC的內(nèi)容,NIC組織并完成相關(guān)數(shù)據(jù)發(fā)送過程。

3 性能測試

本文在測試基于軟硬協(xié)同理念構(gòu)建的機(jī)群互連系統(tǒng)通信協(xié)議的性能時,選用2臺PC機(jī)作為機(jī)群的2個終端用戶,通過選用帶寬200 Mb/s的SHC-NET交換機(jī)將實驗用2臺PC機(jī)互連,通過MPI的pingpong基準(zhǔn)測試程序,測試SHC-NET在機(jī)群互連系統(tǒng)中的通信性能。其中,本次實驗所使用的實驗PC機(jī)的基本配置為PⅢ 800CPU、256 MB內(nèi)存、133 MHz系統(tǒng)總線,實驗中各個節(jié)點安裝的操作系統(tǒng)均為Linux 6.2版本。最終的性能測試結(jié)果,如表2表示。

表2 測試SHC-NET測試結(jié)果

從表2可以知道,基于軟硬件協(xié)同理念設(shè)計的應(yīng)用于機(jī)群互連系統(tǒng)中的SHC-NET所產(chǎn)生的通信時延總體較低,主要原因可以概括如下:

(1)在通信過程中信息傳輸時,以太網(wǎng)必須將網(wǎng)卡通信描述符放置在內(nèi)存中,在每次進(jìn)行數(shù)據(jù)通信時,網(wǎng)卡至少需要訪問2次內(nèi)存,由此產(chǎn)生的通信延遲很大,且整體通信的通信效率很低。SHC-NET通過采用硬件通信描述符,每次數(shù)據(jù)通信過程中,網(wǎng)卡只需要訪問一次內(nèi)存,降低了網(wǎng)絡(luò)的通信時間開銷,提高了數(shù)據(jù)通信效率[5]。

(2)通過軟硬件協(xié)同設(shè)計,SHC-NET中的用戶數(shù)據(jù)通過精簡協(xié)議進(jìn)行數(shù)據(jù)傳輸,有效降低了軟件通信開銷。

4 結(jié) 語

經(jīng)過深入的分析和研究,本文提出采用軟硬件協(xié)同的思想,利用FPGA及相關(guān)可以使用的ARM板的硬件資源進(jìn)行機(jī)群互連系統(tǒng)通信協(xié)議的研究,以實現(xiàn)高性能的機(jī)群互連網(wǎng)絡(luò)。測試結(jié)果表明,本文設(shè)計構(gòu)建的SHC-NET能夠滿足MPI用戶的最大通信延遲為5 μs;與千兆以太網(wǎng)為MPI用戶提供的通信最大延遲60 μs,效果提升明顯;同時,千兆以太網(wǎng)通過M-VIA協(xié)議提供給用戶的通信延遲也有19 μs。可見,通過軟硬件協(xié)同設(shè)計的SHC-NET網(wǎng)絡(luò)具有低延遲的數(shù)據(jù)通信特征。

猜你喜歡
描述符機(jī)群數(shù)據(jù)通信
基于AKAZE的BOLD掩碼描述符的匹配算法的研究
歐洲共同語言參考標(biāo)準(zhǔn)在中國高校學(xué)術(shù)英語寫作教學(xué)適用性的研究:可理解性,可行性和有用性
基于深度學(xué)習(xí)的局部描述符
數(shù)據(jù)通信網(wǎng)絡(luò)維護(hù)與網(wǎng)絡(luò)安全問題探討
施工機(jī)群配置優(yōu)化研究綜述
施工機(jī)群配置優(yōu)化研究綜述
監(jiān)測系統(tǒng)接口數(shù)據(jù)通信方式
一種基于PCIE總線的改進(jìn)分散集聚DMA的設(shè)計
關(guān)于數(shù)據(jù)通信電源現(xiàn)狀和高壓直流供電新系統(tǒng)的分析
廣東省機(jī)群吊桶灑水滅火技術(shù)發(fā)展與應(yīng)用①