龔道永 宋長明 劉沙 漆鋒濱
摘 要:針對超級計算機系統(tǒng)中網(wǎng)絡(luò)引導(dǎo)時間開銷大的問題,提出網(wǎng)絡(luò)引導(dǎo)分布算法是影響網(wǎng)絡(luò)引導(dǎo)性能的主要因素之一,是優(yōu)化網(wǎng)絡(luò)引導(dǎo)性能的主要方向的觀點。首先,分析了影響大規(guī)模網(wǎng)絡(luò)引導(dǎo)性能的主要因素;其次,結(jié)合一種典型超級計算機系統(tǒng),分析了超節(jié)點循環(huán)分布算法(SCDA)和插件循環(huán)分布算法(BCDA)的網(wǎng)絡(luò)引導(dǎo)數(shù)據(jù)流拓撲結(jié)構(gòu);最后,量化分析了這兩種算法對各個網(wǎng)絡(luò)路徑段的壓力和可獲得的網(wǎng)絡(luò)性能,發(fā)現(xiàn)BCDA性能是SCDA性能的1~20倍。通過理論分析和模型推導(dǎo)發(fā)現(xiàn),在計算節(jié)點和引導(dǎo)服務(wù)器之間使用更細粒度的映射算法可以在引導(dǎo)部分資源時使用盡量多的引導(dǎo)服務(wù)器,減少對局部網(wǎng)絡(luò)資源的過早競爭,提升網(wǎng)絡(luò)引導(dǎo)性能。
關(guān)鍵詞:超級計算機;插件板;超節(jié)點;網(wǎng)絡(luò)引導(dǎo)開銷;全路徑最小帶寬;網(wǎng)絡(luò)引導(dǎo)分布算法
中圖分類號: TP338.6并行計算機
文獻標志碼:A
Abstract: Since the network booting time overhead is high in supercomputer system, the idea that the network boot distribution algorithm is one of the main factors affecting the network boot performance and the main direction of optimizing network boot performance was proposed. Firstly, the main factors affecting large-scale network boot performance were analyzed. Secondly, combined with a typical supercomputer system, the network boot data flow topologies of Supernode Cyclic Distribution Algorithm (SCDA) and Board Cyclic Distribution Algorithm (BCDA) were analyzed. Finally, the pressure of above two algorithms on each network path branch and the available network performance were quantitatively analyzed. It can be seen that the bandwidth performance of BCDA is 1—20 times of that of SCDA. Theoretical analysis and model deduction show that the finer-grained mapping algorithm between compute nodes and boot servers can make as many boot servers as possible be used while boot some resources, reducing the premature competition for partial network resources and improving network boot performance.
Key words: supercomputer; board; supernode; network boot overhead; full path minimum bandwidth; network boot distribution algorithm
0 引言
當前,超級計算機的應(yīng)用日趨廣泛,在國民經(jīng)濟中發(fā)揮著越來越重要的作用[1]。超級計算機系統(tǒng)在使用前需要將操作系統(tǒng)、系統(tǒng)服務(wù)、配置參數(shù)等軟件環(huán)境加載到CPU上啟動運行后才能使用,主要部署方法有硬盤加載、光驅(qū)加載、USB加載、網(wǎng)絡(luò)加載等。超級計算機的主機基本都是無盤環(huán)境,配置了具有較高性能的內(nèi)部網(wǎng)絡(luò),因此網(wǎng)絡(luò)引導(dǎo)正成為大規(guī)模系統(tǒng)必不可少的一種管理技術(shù)[2]。在網(wǎng)絡(luò)引導(dǎo)方法中,Red Hat開發(fā)的KickStart技術(shù)[3]可以實現(xiàn)全自動化的無人值守安裝部署,預(yù)啟動執(zhí)行環(huán)境(Preboot eXecution Environment, PXE)技術(shù)[4]可以實現(xiàn)網(wǎng)絡(luò)啟動,再加上普通文件傳輸協(xié)議(Trivial File Transfer Protocol, TFTP)[5]、動態(tài)配置協(xié)議(Dynamic Host Configuration Protocol, DHCP)[6]、網(wǎng)絡(luò)文件系統(tǒng)(Network File System, NFS)[7]等軟件技術(shù),就可以實現(xiàn)快捷的大規(guī)模部署。人們?nèi)找骊P(guān)注網(wǎng)絡(luò)引導(dǎo)協(xié)議與開銷的研究[8-10],研究還發(fā)現(xiàn),網(wǎng)絡(luò)引導(dǎo)開銷隨系統(tǒng)規(guī)模的增大而增加[11],對相同的系統(tǒng)來說,不同網(wǎng)絡(luò)引導(dǎo)算法的開銷可能相差數(shù)十倍,網(wǎng)絡(luò)引導(dǎo)分布算法在大規(guī)模系統(tǒng)網(wǎng)絡(luò)引導(dǎo)中扮演著日益重要的地位[12]。
超算系統(tǒng)中引導(dǎo)服務(wù)器的數(shù)量(N)遠小于需網(wǎng)絡(luò)引導(dǎo)的計算節(jié)點個數(shù)(M,即N 1 引導(dǎo)網(wǎng)絡(luò)拓撲結(jié)構(gòu) 1.1 網(wǎng)絡(luò)加載均衡性分析 超級計算機計算節(jié)點網(wǎng)絡(luò)引導(dǎo)過程中,每個計算節(jié)點都根據(jù)網(wǎng)絡(luò)分布算法,通過網(wǎng)絡(luò)從對應(yīng)引導(dǎo)服務(wù)器上遠程加載操作系統(tǒng)及其軟件環(huán)境(若干個文件)。批量計算資源網(wǎng)絡(luò)引導(dǎo)加載時,不同計算節(jié)點的網(wǎng)絡(luò)引導(dǎo)路徑是不同的,此時引導(dǎo)最慢的計算節(jié)點就是該次批量引導(dǎo)的性能瓶頸。為均衡系統(tǒng)中各個部分的引導(dǎo)性能,通常會為一定拓撲的計算系統(tǒng)配置相同個數(shù)的引導(dǎo)服務(wù)器,結(jié)合常用的引導(dǎo)模式,來盡量均衡并優(yōu)化網(wǎng)絡(luò)引導(dǎo)的性能,從而實現(xiàn)各個計算單元引導(dǎo)能力的均衡化,避免產(chǎn)生短板效應(yīng)。 1.2 影響網(wǎng)絡(luò)加載性能的主要因素 系統(tǒng)網(wǎng)絡(luò)引導(dǎo)的開銷主要取決于以下5個主要因素:1)網(wǎng)絡(luò)引導(dǎo)所使用網(wǎng)絡(luò)路徑的物理帶寬。批量資源引導(dǎo)時,不同網(wǎng)絡(luò)路徑段可能有不同的資源來競爭和分配網(wǎng)絡(luò)帶寬,經(jīng)過算法分配后,在各個網(wǎng)絡(luò)路徑段的最小均分帶寬才是批量引導(dǎo)的帶寬。2)批量引導(dǎo)的資源數(shù)量。批量引導(dǎo)資源越多,越容易產(chǎn)生網(wǎng)絡(luò)擁堵和帶寬競爭現(xiàn)象,單點分配的帶寬也就越低。3)批量引導(dǎo)資源的拓撲關(guān)系。大規(guī)模系統(tǒng)往往采用層次化網(wǎng)絡(luò)結(jié)構(gòu),資源的網(wǎng)絡(luò)連接存在一定的拓撲結(jié)構(gòu),引導(dǎo)同一網(wǎng)絡(luò)拓撲內(nèi)的批量資源,其必然產(chǎn)生該網(wǎng)絡(luò)拓撲內(nèi)的帶寬競爭。4)批量引導(dǎo)的網(wǎng)絡(luò)分布算法。通過網(wǎng)絡(luò)引導(dǎo)的分布式算法可以控制網(wǎng)絡(luò)引導(dǎo)批量計算資源時在各個網(wǎng)絡(luò)路徑上的競爭與分配關(guān)系,均衡不同網(wǎng)絡(luò)路徑上的平均帶寬分配,減小木桶效應(yīng)中長板與短板的剪刀差,優(yōu)化批量資源引導(dǎo)的開銷。5)網(wǎng)絡(luò)引導(dǎo)的文件大小。在帶寬固定的情況下,引導(dǎo)時間與文件大小成正比關(guān)系。當系統(tǒng)設(shè)計組裝完成后,前3個因素就已經(jīng)全部確定,最后只能通過優(yōu)化文件大小和調(diào)整網(wǎng)絡(luò)引導(dǎo)的軟件分布算法優(yōu)化性能。本文主要研究前4個因素。 1.3 某國產(chǎn)超算系統(tǒng)的網(wǎng)絡(luò)引導(dǎo)結(jié)構(gòu) 某國產(chǎn)超算系統(tǒng)網(wǎng)絡(luò)引導(dǎo)物理連接關(guān)系拓撲結(jié)構(gòu)如圖1所示。 系統(tǒng)由若干個計算機倉組成,每個機倉包含4個超節(jié)點,每個超節(jié)點由32個插件和1個超節(jié)點交換機(SwitchSuperNode)組成,每個插件包含8個CPU(縮寫為C)和1個插件內(nèi)交換機(SwitchBoard)。假設(shè)系統(tǒng)中引導(dǎo)服務(wù)器個數(shù)為NBootServ,插件板(Board,下文縮寫為bd)個數(shù)為NBoard,超節(jié)點個數(shù)為NSuperNode。每臺外圍級聯(lián)以太交換機連接多個兼職的引導(dǎo)服務(wù)器,每個級聯(lián)交換機連接20臺引導(dǎo)服務(wù)器,級聯(lián)交換機上的剩余端口用于其他網(wǎng)絡(luò)服務(wù),如此,每個引導(dǎo)服務(wù)器在級聯(lián)交換機的上行端口上可分配的理論帶寬與下行網(wǎng)絡(luò)的帶寬完全匹配。 CPU的網(wǎng)絡(luò)引導(dǎo)過程,從計算節(jié)點到引導(dǎo)服務(wù)器上,要經(jīng)歷5個不同的網(wǎng)絡(luò),其帶寬和功能如下:N1(千兆網(wǎng)),計算節(jié)點到插件內(nèi)交換芯片的千兆網(wǎng)絡(luò);N2(千兆網(wǎng)),插件內(nèi)Switch到超節(jié)點以太交換機的千兆網(wǎng)絡(luò);N3(雙萬兆網(wǎng)),超節(jié)點以太交換機到系統(tǒng)核心交換機的雙萬兆聚合網(wǎng)絡(luò);N4(雙萬兆網(wǎng)),系統(tǒng)核心交換機到外圍級聯(lián)交換機的雙萬兆聚合網(wǎng)絡(luò);N5(千兆網(wǎng)),引導(dǎo)服務(wù)器到外圍級聯(lián)交換機的千兆網(wǎng)絡(luò)。 系統(tǒng)中每個超節(jié)點對應(yīng)1臺引導(dǎo)服務(wù)器。系統(tǒng)超節(jié)點個數(shù)與引導(dǎo)服務(wù)器的個數(shù)相同,即平均每個超節(jié)點1臺。每20臺引導(dǎo)服務(wù)器通過1臺外圍級聯(lián)交換機聚合連接到核心交換機,共8臺級聯(lián)交換機。每個外圍級聯(lián)交換機的下行端口帶寬為1000(本文所述帶寬單位均為Mb/s,下同),上行端口聚合后帶寬為20×1000。同一個超節(jié)點內(nèi)同時引導(dǎo)的計算節(jié)點越多,其每個插件(CPU)在上行端口上分配到的理論帶寬就越低。 同時引導(dǎo)連續(xù)的批量資源時,任何一種算法下每個CPU的引導(dǎo)都要經(jīng)過從N1到N5的所有路徑,因此每個CPU的實際理論帶寬是各段路徑上理論帶寬的最小值,比較最小帶寬才有意義。因此每個CPU實際能分配到的理論帶寬為BW全路徑最小帶寬=min(BWN1,BWN2,BWN3,BWN4,BWN5) 。本文最大推導(dǎo)了系統(tǒng)擴展到160個超節(jié)點時的情況。 2 兩種網(wǎng)絡(luò)引導(dǎo)分布算法 基于所分析目標系統(tǒng)的結(jié)構(gòu)化特征,本文重點分析超節(jié)點循環(huán)分布算法(Supernode Cyclic Distribution Algorithm, SCDA)和插件循環(huán)分布算法(Board Cyclic Distribution Algorithm, BCDA),它們都是塊分布算法,其區(qū)別在于塊大小分別是超節(jié)點和插件。 2.1 超節(jié)點循環(huán)分布算法 超節(jié)點循環(huán)分布算法,是指計算系統(tǒng)以超節(jié)點為單位循環(huán)分布對應(yīng)各引導(dǎo)服務(wù)器。SCDA計算節(jié)點與引導(dǎo)服務(wù)器邏輯映射關(guān)系如圖2所示。超節(jié)點與引導(dǎo)服務(wù)器的對應(yīng)關(guān)系為:SuperNode0→BootServ0,SuperNode1→BootServ1,…,SuperNoden-1→BootServn-1。 此時計算系統(tǒng)以超節(jié)點為單位循環(huán)對應(yīng)1臺引導(dǎo)服務(wù)器,一個超節(jié)點內(nèi)的所有計算資源都對應(yīng)一臺引導(dǎo)服務(wù)器。當NSuperNode≤NBootServ時,每個超節(jié)點可確保使用一臺獨立的引導(dǎo)服務(wù)器;當NSuperNode>NBootServ時,則存在1臺引導(dǎo)服務(wù)器服務(wù)多個超節(jié)點的情況。在大批量資源網(wǎng)絡(luò)引導(dǎo)時,引導(dǎo)最慢的資源成為瓶頸,為均衡系統(tǒng)中各個部分的引導(dǎo)性能,通常為每個超節(jié)點配置相同數(shù)量的引導(dǎo)服務(wù)器。超節(jié)點循環(huán)分布就相當于塊大小為32的插件塊循環(huán)分布模式。 超節(jié)點循環(huán)分布算法下,每個CPU獨占一條N1路徑,每個插件的資源競爭一條N2路徑,每個超節(jié)點內(nèi)的資源競爭一條N3路徑,每20個連續(xù)的超節(jié)點競爭一條N4路徑,每個超節(jié)點內(nèi)的資源競爭一條N5路徑。同時引導(dǎo)不同規(guī)模的連續(xù)計算資源時,每個CPU在對應(yīng)各網(wǎng)絡(luò)路徑上所能分配到的理論帶寬及全路徑最小理論帶寬如表1所示。 引導(dǎo)單個CPU時不存在競爭關(guān)系,全路徑最小理論帶寬為BW=1000;引導(dǎo)一個超節(jié)點內(nèi)的N(N≥1)個插件時,單CPU獲得的全路徑最小理論帶寬為BW=1000/(8×N),此時對N1、N2的競爭已經(jīng)達到最大化;引導(dǎo)一個完整超節(jié)點時,本次引導(dǎo)對本超節(jié)點對應(yīng)的N1、N2、N3的競爭已經(jīng)達到最大化,對應(yīng)N5的競爭也達到了最大化,每個CPU獲得的全路徑最小理論帶寬為BW=1000/256;引導(dǎo)超過一個完整超節(jié)點的連續(xù)計算資源,不同超節(jié)點的引導(dǎo)服務(wù)器不同,一個完整超節(jié)點對應(yīng)一組N1、N2、N3、N5路徑,已經(jīng)達到最大化競爭且與其他超節(jié)點無關(guān)。多超節(jié)點引導(dǎo)時,超節(jié)點之間不存在對同一組N1、N2、N3、N5的競爭,只存在對公共N4路徑的競爭,因此多超節(jié)點批量引導(dǎo)獲得的全路徑最小理論帶寬等同于引導(dǎo)一個完整超節(jié)點的帶寬,即BW全路徑最小帶寬=1000/256。 2.2 插件循環(huán)分布算法 插件循環(huán)分布模式下,計算系統(tǒng)以插件為單位循環(huán)對應(yīng)1臺引導(dǎo)服務(wù)器,BCDA計算節(jié)點與引導(dǎo)服務(wù)器邏輯映射關(guān)系如圖3所示。 當Nboard≤NBootServ時,每個插件可確保獨占一臺引導(dǎo)服務(wù)器;當Nboard>NBootServ時,存在1臺引導(dǎo)服務(wù)器為多個插件提供引導(dǎo)服務(wù)的情況??紤]到系統(tǒng)中插件板個數(shù)很多,為每個插件配備獨立的引導(dǎo)服務(wù)器,代價過高,所以普遍情況是多個插件對應(yīng)1個引導(dǎo)服務(wù)器。 插件循環(huán)分布算法下,每個CPU獨占一條N1路徑,每個插件競爭一條N2路徑,每個超節(jié)點內(nèi)的所有插件競爭一條N3路徑,但均分到32個引導(dǎo)服務(wù)器上(即32條N4路徑),每5個連續(xù)超節(jié)點均分到所有的160臺引導(dǎo)服務(wù)器(即平均競爭8條N4路徑);對應(yīng)同一臺引導(dǎo)服務(wù)器的來源于不同超節(jié)點的32個插件則競爭一個N5路徑。 使用插件循環(huán)分布算法時,同時引導(dǎo)不同規(guī)模的連續(xù)計算資源,每個CPU在對應(yīng)各網(wǎng)絡(luò)路徑上所能分配到的理論帶寬及全路徑最小理論帶寬如表2所示。 引導(dǎo)單個CPU時,不存在競爭關(guān)系,CPU獲得的全路徑最小理論帶寬為BW=1000;引導(dǎo)一個超節(jié)點內(nèi)連續(xù)的N(N≤20)個插件時,每個CPU獲得的全路徑最小帶寬為BW=1000/8,此時N2、N5路徑成為瓶頸;引導(dǎo)超節(jié)點內(nèi)連續(xù)的N個計算插件(20 3 網(wǎng)絡(luò)引導(dǎo)開銷分析 3.1 兩種算法下的網(wǎng)絡(luò)引導(dǎo)開銷 超級計算機的映像文件通常都有定制化特征,占用空間較小。以某國產(chǎn)超算系統(tǒng)為例,經(jīng)過定制優(yōu)化和壓縮后,待網(wǎng)絡(luò)引導(dǎo)的文件大小約為50MB(文中計算引導(dǎo)開銷都是這個大小為基礎(chǔ)進行計算),針對最大擴展到160個超節(jié)點,使用160臺引導(dǎo)服務(wù)器的情況,可計算出兩種不同引導(dǎo)算法下幾種典型連續(xù)批量資源的引導(dǎo)開銷,如表3所示。超節(jié)點循環(huán)分布算法時,引導(dǎo)一個超節(jié)點內(nèi)的部分資源時,引導(dǎo)開銷與資源規(guī)模成正比,完整超節(jié)點時引導(dǎo)開銷已經(jīng)最大化,從滿超節(jié)點到整機規(guī)模,引導(dǎo)加載開銷一直維持在最大開銷。插件循環(huán)分布算法時,1~20個插件時,加載開銷相同,21個插件~1.25個機倉時,開銷微幅增加,大于1.25個機倉時,開銷與批量引導(dǎo)的資源規(guī)模成正比關(guān)系。 3.2 兩種算法下的網(wǎng)絡(luò)引導(dǎo)帶寬 根據(jù)表1~2,進一步研究兩種循環(huán)分布算法下網(wǎng)絡(luò)引導(dǎo)的理論帶寬,可以推導(dǎo)出在不同批量引導(dǎo)規(guī)模下,兩種算法在N1、N2、N3、N4、N5等各個網(wǎng)絡(luò)路徑段的理論帶寬、各自全路徑的最小理論帶寬以及最小帶寬對比數(shù)據(jù)。 在超節(jié)點循環(huán)分布算法下,N1路徑的帶寬始終為1000,N2路徑上帶寬始終為125,N3路徑的帶寬隨插件個數(shù)的增加而降低,從1個到32個插件時,帶寬從2500逐步降低到78.13,大于32個插件時維持在78.13;N4路徑的帶寬規(guī)律與N3類似,從1個插件到5個機倉時,帶寬從2500逐步降低到3.91,大于5機倉時維持在3.91,在1~32個插件時與N3的帶寬相同;N5路徑在1~32個插件時的帶寬是相同規(guī)模下N3帶寬的1/20,即1~32插件時帶寬為125~3.91,大于5個機倉時,帶寬維持在3.91??梢奛5始終是網(wǎng)絡(luò)引導(dǎo)加載的性能瓶頸。規(guī)模大于5個連續(xù)滿機倉時,N4性能與N5性能相同,網(wǎng)絡(luò)競爭都達到最大化,成為性能瓶頸。該算法下,提升N4、N5尤其是N5的帶寬(即引導(dǎo)服務(wù)器的上網(wǎng)帶寬)是降低開銷、提升帶寬的有效方法,具體可通過多網(wǎng)卡捆綁、升級萬兆網(wǎng)卡等手段實現(xiàn)。 插件循環(huán)分布算法下,N1路徑的帶寬始終為1000,N2路徑上帶寬始終為125,N3路徑的帶寬隨插件個數(shù)的增加而降低,從1個到32個插件時,帶寬從2500逐步降低到78.13,大于32個插件時維持在78.13;N4路徑的帶寬在1~20個插件時與N3相同,從2500逐步降低到125,從21個插件到1.25個機倉時,帶寬均為125,從2.5個機倉到整機,帶寬從62.5逐步降低到3.91;N5路徑在1個插件到1.25個機倉,帶寬均為125,從2.5機倉到整機,帶寬和相同規(guī)模下N4的帶寬相同,即從62.5逐步降低到3.91??梢姡?~20個插件時,N2、N5同時成為性能瓶頸;21插件~1.25機倉時,N3成為瓶頸,且與其他路徑的差異并不大;大于2.5機倉時,N4、N5同時成為瓶頸,且引導(dǎo)帶寬隨批量引導(dǎo)資源規(guī)模的增大而降低,至整機規(guī)模時帶寬最低。該算法下,系統(tǒng)將批量引導(dǎo)產(chǎn)生的網(wǎng)絡(luò)數(shù)據(jù)流量均衡到了各個網(wǎng)絡(luò)路徑段上,減少了不同資源同時引導(dǎo)產(chǎn)生的網(wǎng)絡(luò)競爭沖突。 4 網(wǎng)絡(luò)引導(dǎo)加載的性能優(yōu)化方法 大規(guī)模系統(tǒng)映像網(wǎng)絡(luò)引導(dǎo)性能是影響系統(tǒng)軟環(huán)境部署性能的關(guān)鍵一環(huán),快速引導(dǎo)對用戶環(huán)境構(gòu)建十分重要。研究影響網(wǎng)絡(luò)引導(dǎo)開銷的主要因素可以發(fā)現(xiàn),在網(wǎng)絡(luò)引導(dǎo)映像文件大小固定的前提下,網(wǎng)絡(luò)物理帶寬、各段網(wǎng)絡(luò)帶寬的均衡性、網(wǎng)絡(luò)引導(dǎo)分布式算法等是決定批量資源網(wǎng)絡(luò)引導(dǎo)性能的關(guān)鍵因素。 1)網(wǎng)絡(luò)物理帶寬。網(wǎng)絡(luò)引導(dǎo)所用網(wǎng)絡(luò)路徑的物理帶寬是影響網(wǎng)絡(luò)開銷的決定性因素,提高物理帶寬的主要方法有:①配置高帶寬交換機,以提高網(wǎng)絡(luò)通路的物理帶寬;②增加網(wǎng)絡(luò)引導(dǎo)服務(wù)器的數(shù)量、配置高帶寬網(wǎng)卡等,以提升引導(dǎo)服務(wù)的上網(wǎng)帶寬。該方法需要較高的成本。 2)各段網(wǎng)絡(luò)帶寬的均衡性。引導(dǎo)批量資源所經(jīng)過的各網(wǎng)絡(luò)路徑段的性能匹配十分關(guān)鍵,因為實際有效帶寬是全路徑各網(wǎng)絡(luò)段的最小帶寬,因此必須高度重視各段網(wǎng)絡(luò)性能的匹配性設(shè)計,避免產(chǎn)生網(wǎng)絡(luò)性能瓶頸,提升容易產(chǎn)生性能瓶頸的網(wǎng)絡(luò)段最低帶寬,降低全路徑帶寬設(shè)計中的木桶效應(yīng),才能最大化系統(tǒng)投入的產(chǎn)出。該方法成本較低。 3)批量資源網(wǎng)絡(luò)引導(dǎo)的分布算法。在多層次網(wǎng)絡(luò)中,可通過網(wǎng)絡(luò)引導(dǎo)分布式算法控制批量資源引導(dǎo)時網(wǎng)絡(luò)數(shù)據(jù)包在各網(wǎng)絡(luò)路徑段的數(shù)據(jù)流量,優(yōu)化對各段網(wǎng)絡(luò)的使用,均衡在各個網(wǎng)絡(luò)路徑段的流量負載和帶寬分配,減少局部網(wǎng)絡(luò)競爭,減小木桶效應(yīng)中長板與短板的剪刀差,從而降低批量資源引導(dǎo)的開銷。該方法不增加系統(tǒng)的成本,只通過改變對網(wǎng)絡(luò)資源的使用方法來實現(xiàn)。 總體來說,網(wǎng)絡(luò)引導(dǎo)服務(wù)器的數(shù)量十分有限,而所有計算資源的網(wǎng)絡(luò)引導(dǎo)最終都要通過引導(dǎo)服務(wù)器的網(wǎng)卡來提供服務(wù),雖然可以通過算法將局部引導(dǎo)的網(wǎng)絡(luò)流量分布到盡可能多的引導(dǎo)服務(wù)器上,但在批量引導(dǎo)大規(guī)模資源時,引導(dǎo)服務(wù)器的負載仍然成為焦點,成為制約網(wǎng)絡(luò)引導(dǎo)性能的最大瓶頸,對某國產(chǎn)超算系統(tǒng)在上述兩種算法的分析也說明了這一點。這也正說明了全路徑網(wǎng)絡(luò)性能均衡設(shè)計的重要性,否則,再高的網(wǎng)絡(luò)局部性能也難以發(fā)揮應(yīng)有的作用。 5 結(jié)語 本文詳細分析了一種確定網(wǎng)絡(luò)結(jié)構(gòu)大規(guī)模系統(tǒng)的網(wǎng)絡(luò)引導(dǎo)算法,研究了影響網(wǎng)絡(luò)引導(dǎo)性能的主要因素,對兩種算法進行了量化對比分析,并對優(yōu)化網(wǎng)絡(luò)引導(dǎo)性能的主要方法進行了總結(jié)。在設(shè)計引導(dǎo)分布算法時,在計算節(jié)點和引導(dǎo)服務(wù)器之間使用更細粒度的映射算法,可以在引導(dǎo)部分資源時使用盡量多的引導(dǎo)服務(wù)器,減少對局部網(wǎng)絡(luò)資源的過早競爭,提升網(wǎng)絡(luò)引導(dǎo)性能。雖然不同網(wǎng)絡(luò)結(jié)構(gòu)下的批量網(wǎng)絡(luò)引導(dǎo)性能可能會呈現(xiàn)出不同的規(guī)律,但都可以進行相應(yīng)的量化分析研究。對于確定網(wǎng)絡(luò)結(jié)構(gòu)的系統(tǒng)來說,可以通過合理的網(wǎng)絡(luò)算法設(shè)計、全路徑網(wǎng)絡(luò)帶寬均衡配置等方法來優(yōu)化網(wǎng)絡(luò)引導(dǎo)性能,以實現(xiàn)經(jīng)濟與性能的綜合平衡。事實上,對可變網(wǎng)絡(luò)結(jié)構(gòu)的系統(tǒng),也可通過類似方法,分析推算出對應(yīng)網(wǎng)絡(luò)結(jié)構(gòu)下的理論帶寬和網(wǎng)絡(luò)競爭情況,這無論對系統(tǒng)網(wǎng)絡(luò)設(shè)計還是網(wǎng)絡(luò)應(yīng)用優(yōu)化都具有一定的指導(dǎo)意義。本文并未對可變網(wǎng)絡(luò)拓撲結(jié)構(gòu)的系統(tǒng)進行深入研究,也沒有對其他引導(dǎo)網(wǎng)絡(luò)架構(gòu)的系統(tǒng)進行深入分析,這也是下一步的研究方向。 參考文獻 (References) [1] 劉沙,龔道永.超級計算機低功耗技術(shù)研究[J].高性能計算技術(shù),2014,227(2):60-67.(LIU S, GONG D Y. Research of lowpower techniques for HPC [J]. Journal of High Performance Computing Technology, 2014, 227(3): 60-67.) [2] 毛樟根,雷鳴.一種MPP系統(tǒng)開工的設(shè)計與實現(xiàn)[J].高性能計算技術(shù),2011,210(3):30-34.(MAO Z G, LEI M. A kind of design and practice of MPP system management [J]. Journal of High Performance Computing Technology, 2011, 210(3): 30-34.) [3] Red Hat Company. The Red Hat kickstart installation method [EB/OL]. [2018-10-20]. http://fedoraproject.org/wiki/Anaconda/Kickstart. [4] Intel Corporation. Preboot Execution Environment (PXE) specification version 2.1 [EB/OL]. [2018-10-20]. http://www.pix.net/software/pxeboot/archive/pxespec.pdf. [5] RFC 1350. The TFTP protocol (revision 2) [S/OL]. [2018-10-20]. http://www.rfc-editor.org/info/rfc1350. [6] RFC 2131. Dynamic host configuration protocol [S/OL]. [2018-10-20]. http://www.rfc-editor.org/info/rfc2131. [7] RFC 3530. Network File System (NFS) version 4 protocol [S/OL].[2018-10-20]. http://www.rfc-editor.org/info/rfc3530. [8] 劉青昆,陰元友,鄭曉薇,等.基于KickStart 的Linux 網(wǎng)絡(luò)安裝新模型[J].計算機工程,2008,34( 21):103-105.(LIU Q K, YIN Y Y, ZHENG X W, et al. New model to Linux network installation based on Kickstart [J]. Computer Engineering, 2008, 34(21): 103-105.) [9] 顧夢非,徐煒民.一個基于Linux 的集群部署方案[J].計算機應(yīng)用與軟件,2008,25(1):102-104.(GU M F, XU W M. A deployment system for clusters based on Linux [J]. Computer Applications and Software, 2008, 25(1): 102-104.) [10] 李懷剛,邱建新.網(wǎng)絡(luò)安裝Linux 的技術(shù)原理分析及實現(xiàn)[J].計算機應(yīng)用與軟件,2006,23(9):109-111.(LI H G, QIU J X. The realization and principle of Linuxs install through network [J]. Computer Applications and Software, 2006, 23(9): 109-111.) [11] 王春耕,付金輝,朱建濤.大規(guī)模集群系統(tǒng)中基于Image的系統(tǒng)安裝[J].高性能計算技術(shù),2007,187(4):44-48.(WANG C G, FU J H, ZHU J T. Installation of operating system based on image in large scale cluster system [J]. Journal of High Performance Computing Technology, 2007, 187(4): 44-48.) [12] 周虎廷,羅茂盛,周達民.集群計算機系統(tǒng)部署分析與研究[J].高性能計算技術(shù),2013,223(4):56-59.(ZHOU H T, LUO M S, ZHOU D M. Analysis and research of the deployment of cluster computer system [J]. Journal of High Performance Computing Technology, 2013, 223(4): 56-59.) [13] HENDRIKS E A, MINNICH R G, CHOI S, et al. Pink: a 1024-node single-system image Linux cluster [C]// Proceedings of the 2004 International Conference on High Performance Computing and Grid in Asia Pacific Region. Piscataway, NJ: IEEE, 2004: 454-461. [14] NGUYEN T L, LEBRE A. Virtual machine boot time model [C]// Proceedings of the 25th Euromicro International Conference on Parallel, Distributed and Network-based Processing. Piscataway, NJ: IEEE, 2017: 430-437. [15] 董小社,孫發(fā)龍,李紀云,等.基于映像的集群部署系統(tǒng)設(shè)計與實現(xiàn)[J].計算機工程,2005,31(24):132-134.(DONG X S, SUN F L, LI J Y, et al. Design and implementation of image based cluster deployment system [J]. Computer Engineering, 2005, 31(24): 132-134.)