并行編程組件的配置方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種并行編程組件的配置方法和裝置,其中,該配置方法包括:確定并行編程組件的編譯參數(shù);根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將并行編程組件編譯為可執(zhí)行的并行編程組件;將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中。本發(fā)明通過確定編譯參數(shù)來調(diào)用對應(yīng)的編譯器進行編譯操作,并且將編譯后的可執(zhí)行的并行編程組件配置到節(jié)點中,降低了并行編程組件與對應(yīng)的多種編譯器的匹配復雜度,簡化了并行編程組件的配置操作步驟,提高了并行編程組件配置的自動化程度。
【專利說明】并行編程組件的配置方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機領(lǐng)域,并且特別地,涉及一種并行編程組件的配置方法和裝置?!颈尘凹夹g(shù)】
[0002]MPI (Message Passing Interface)是基于消息傳遞的并行編程模型,多數(shù)并行計算體系架構(gòu)都提供對MPI的支持,MPI提供了一套并行編程APKApplication ProgrammingInterface),用戶可以基于MPI方便地開發(fā)各類并行應(yīng)用程序。目前,MPI是現(xiàn)在主流的并行編程模型,可以基于MPI開發(fā)高性能計算各個領(lǐng)域的絕大部分并行應(yīng)用組件,很多用戶也選擇MPI開發(fā)自己的應(yīng)用組件。因此,MPI并行環(huán)境的部署是高性能計算集群組件環(huán)境部署的重要基礎(chǔ)之一。
[0003]MPI是一種標準或規(guī)范的代表組件,而不是特指某一個用于具體實現(xiàn)的組件,MPI中用于具體實現(xiàn)的組件包括MPICH、MPICH2、0penMP1、MVAPICH、MVAPICH2等,不同MPI的實現(xiàn)組件的性能、特點和使用方式都不相同,不同用戶對不同版本的MPI實現(xiàn)組件也有自己的使用偏好。因此,在MPI并行環(huán)境部署時,通常會配置多個MPI實現(xiàn)組件。此外,每一種MPI實現(xiàn)組件也可能根據(jù)配置參數(shù)的不同形成不同版本的MPI實現(xiàn)組件,這也是在MPI并行環(huán)境部署時需要考慮到的。
[0004]通常,通過手動執(zhí)行配置高性能計算集群的并行編程組件,但是,手動配置方式存在以下不足:
[0005](I).并行編程組件的種類較多,編譯配置這些并行編程組件較為復雜,而且參數(shù)較多且不盡相同,并且還需要針對不同的硬件平臺和網(wǎng)絡(luò)環(huán)境進行不同配置。在對編譯操作流程不熟悉的情況下,很容易出現(xiàn)操作錯誤。
[0006](2).并行編程組件的種類較多,每種并行編程組件可以與不同的編譯器關(guān)聯(lián),形成不同的并行編程組件版本,在手動配置并行編程組件時操作繁瑣,費時費力。
[0007]針對相關(guān)技術(shù)中并行編程組件及其相關(guān)的編譯器種類繁多,對并行編程組件進行配置的操作復雜容易出錯的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0008]針對相關(guān)技術(shù)中并行編程組件及其相關(guān)的編譯器種類繁多,對并行編程組件進行配置的操作復雜容易出錯的問題,本發(fā)明提出一種并行編程組件的配置方法和裝置,能夠在配置并行編程組件時正確地調(diào)用對應(yīng)的編譯器,然后進行配置,簡化了并行編程組件的配置操作步驟,提高了并行編程組件配置的自動化程度。
[0009]本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
[0010]根據(jù)本發(fā)明的一個方面,提供了一種并行編程組件的配置方法。
[0011]上述并行編程組件的配置方法包括:
[0012]確定并行編程組件的編譯參數(shù);
[0013]根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將并行編程組件編譯為可執(zhí)行的并行編程組件;
[0014]將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中。
[0015]其中,上述編譯參數(shù)包括以下至少之一:用于選擇編譯器的選擇參數(shù)、用于選擇節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
[0016]并且,上述并行編程組件的配置方法進一步包括:
[0017]在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度。
[0018]此外,上述并行編程組件的配置方法進一步包括:
[0019]在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與并行編程組件對應(yīng)的配置文件,其中,配置文件包括與運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。
[0020]而且,上述并行編程組件的配置方法進一步包括:
[0021]在生成與該組件對應(yīng)的配置文件之后,對并行編程組件進行功能檢測。
[0022]根據(jù)本發(fā)明的另一個方面,提供了一種并行編程組件的配置裝置。
[0023]上述并行編程組件的配置裝置包括:
[0024]確定模塊,用于確定并行編程組件的編譯參數(shù);
[0025]調(diào)用模塊,用于根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將并行編程組件編譯為可執(zhí)行的并行編程組件;
[0026]配置模塊,用于將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中。
[0027]其中,上述編譯參數(shù)包括以下至少之一:用于選擇編譯器的選擇參數(shù)、用于選擇節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
[0028]并且,上述并行編程組件的配置裝置進一步包括:
[0029]提示模塊,用于在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度。
[0030]而且,上述并行編程組件的配置裝置進一步包括:
[0031]生成模塊,用于在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與并行編程組件對應(yīng)的配置文件,其中,配置文件包括與運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。
[0032]此外,上述并行編程組件的配置裝置進一步包括:
[0033]功能檢測模塊,用于在生成與該組件對應(yīng)的配置文件之后,對并行編程組件進行功能檢測。
[0034]本發(fā)明通過確定編譯參數(shù)來調(diào)用對應(yīng)的編譯器進行編譯操作,并且將編譯后的可執(zhí)行的并行編程組件配置到節(jié)點中,降低了并行編程組件與對應(yīng)的多種編譯器的匹配復雜度,簡化了并行編程組件的配置操作步驟,提高了并行編程組件配置的自動化程度。
【專利附圖】
【附圖說明】
[0035]圖1是根據(jù)本發(fā)明實施例的并行編程組件的配置方法的流程圖;
[0036]圖2是根據(jù)本發(fā)明實施例的并行編程組件的配置裝置的框圖。
【具體實施方式】
[0037]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0038]根據(jù)本發(fā)明的實施例,提供了一種并行編程組件的配置方法。
[0039]如圖1所示,根據(jù)本發(fā)明實施例的并行編程組件的配置方法可以包括:
[0040]步驟S101,確定并行編程組件的編譯參數(shù);
[0041]步驟S103,根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將并行編程組件編譯為可執(zhí)行的并行編程組件;
[0042]步驟S105,將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中。
[0043]根據(jù)本發(fā)明實施例的一個實施例,并行編程組件可以是MPI組件,可以通過以下具體步驟實施配置方法:
[0044]一、自動檢查需要進行MPI組件配置的節(jié)點的環(huán)境,確保在配置過程中不會缺少必要的其它匹配組件。通過依賴關(guān)系判斷能提高MPI組件配置的成功率。
[0045]二、由用戶指定至少一個MPI組件的版本并將其解壓。
[0046]三、設(shè)置解壓后的MPI組件的編譯參數(shù),其中,編譯參數(shù)可以包括以下至少之一:用于選擇編譯器的選擇參數(shù)、用于選擇節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
[0047]四、根據(jù)MPI組件的設(shè)置結(jié)果選擇對應(yīng)的編譯器進行編譯,從而將MPI組件編譯成可執(zhí)行性的組件。
[0048]將編譯完成后的執(zhí)行性的組件配置到節(jié)點的目錄下,在自動配置過程中,可以根據(jù)高性能計算集群的網(wǎng)絡(luò)環(huán)境進行配置參數(shù)調(diào)整和優(yōu)化。這樣,通過無人值守的方式大大提高了 MPI并行環(huán)境的配置效率,節(jié)省了人力。
[0049]此外,根據(jù)本發(fā)明實施例的并行編程組件的配置方法可以進一步包括:在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與并行編程組件對應(yīng)的配置文件,其中,配置文件可以包括與運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。即,在配置完成之后,生成與該MPI組件版本對應(yīng)的配置文件,其中,配置文件包括:與該MPI組件版本相關(guān)的環(huán)境變量。此外,用戶可以根據(jù)自己的需求來設(shè)置不同的環(huán)境變量,不同的環(huán)境變量生成不同的配置文件,同一個MPI組件的版本可以與不同的配置文件一起形成不同的MPI組件版本,以方便用戶在特定的環(huán)境下調(diào)用特定的MPI組件版本。在并行編程組件版本較多時,避免用戶手動配置容易出錯,造成并行編程組件環(huán)境混亂。
[0050]而且,上述并行編程組件的配置方法可以進一步包括:在生成與該組件對應(yīng)的配置文件之后,對并行編程組件進行功能檢測。
[0051]此外,根據(jù)本發(fā)明實施例的并行編程組件的配置方法可以進一步包括:在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度,如果出現(xiàn)錯誤,則做出相應(yīng)的報錯提示。
[0052]根據(jù)本發(fā)明的一個實施例,在用戶指定了多個并行編程組件時,先配置完成一個并行編程組件,再順序地依次配置剩余的并行編程組件。
[0053]根據(jù)本發(fā)明的實施例,本文中提到的MPI組件可以包括MPICH、MPICH2、OpenMPI,MVAPICH、MVAPICH2等本領(lǐng)域技術(shù)人員公知的MPI組件,而文中提到的編譯器可以包括GNU、Intel、PG1、0pen64本領(lǐng)域技術(shù)人員公知的編譯器。[0054]根據(jù)本發(fā)明的實施例,提供了 一種并行編程組件的配置裝置。
[0055]如圖2所示,根據(jù)本發(fā)明實施例的并行編程組件的配置裝置可以包括:
[0056]確定模塊21,用于確定并行編程組件的編譯參數(shù);
[0057]調(diào)用模塊22,用于根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將并行編程組件編譯為可執(zhí)行的并行編程組件;
[0058]配置模塊23,用于將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中。
[0059]其中,上述編譯參數(shù)可以包括以下至少之一:用于選擇編譯器的選擇參數(shù)、用于選擇節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
[0060]并且,根據(jù)本發(fā)明實施例的并行編程組件的配置裝置可以進一步包括:
[0061]提示模塊(未示出),用于在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度。
[0062]而且,根據(jù)本發(fā)明實施例的并行編程組件的配置裝置可以進一步包括:
[0063]生成模塊(未示出),用于在將編譯完成后的可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與并行編程組件對應(yīng)的配置文件,其中,配置文件可以包括與運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。
[0064]此外,根據(jù)本發(fā)明實施例的并行編程組件的配置裝置可以進一步包括:
[0065]功能檢測模塊(未示出),用于在生成與該組件對應(yīng)的配置文件之后,對并行編程組件進行功能檢測。
[0066]根據(jù)本發(fā)明的實施例的并行編程組件的配置方法和裝置不僅適用于不同規(guī)模的高性能計算集群MPI并行環(huán)境的自動快速配置部署,也適用于動態(tài)多變的環(huán)境中(如云計算)對臨時計算資源進行高性能計算組件環(huán)境快速配置部署。
[0067]綜上所述,借助于本發(fā)明的上述技術(shù)方案,通過確定編譯參數(shù)來調(diào)用對應(yīng)的編譯器進行編譯操作,并且將編譯后的可執(zhí)行的并行編程組件配置到節(jié)點中,降低了并行編程組件與對應(yīng)的多種編譯器的匹配復雜度,簡化了并行編程組件的配置操作步驟,提高了并行編程組件配置的自動化程度。并且,本發(fā)明的技術(shù)方案通過自動化的方式簡化了并行編程組件的配置流程,降低了配置難度;通過依賴關(guān)系判斷、容錯性判斷、標準化配置等方式提高了 MPI并行環(huán)境的配置成功率和配置質(zhì)量,最大程度避免了認為操作失誤;通過無人值守的方式大大提高了并行編程組件的配置部署效率,節(jié)省了人力。
[0068]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種并行編程組件的配置方法,其特征在于,包括: 確定所述并行編程組件的編譯參數(shù); 根據(jù)所述編譯參數(shù)調(diào)用對應(yīng)的編譯器將所述并行編程組件編譯為可執(zhí)行的并行編程組件; 將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中。
2.根據(jù)權(quán)利要求1所述的配置方法,其特征在于,所述編譯參數(shù)包括以下至少之一: 用于選擇編譯器的選擇參數(shù)、用于選擇所述節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
3.根據(jù)權(quán)利要求1所述的配置方法,其特征在于,進一步包括: 在將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度。
4.根據(jù)權(quán)利要求1所述的配置方法,其特征在于,進一步包括: 在將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與所述并行編程組件對應(yīng)的配置文件,其中,所述配置文件包括與所述運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。
5.根據(jù)權(quán)利要求4所述的配置方法,其特征在于,進一步包括: 在生成與該組件對應(yīng)的配置文件之后,對所述并行編程組件進行功能檢測。
6.一種并行編程組件的配置裝置,其特征在于,包括: 確定模塊,用于確定所述并行編程組件的編譯參數(shù); 調(diào)用模塊,用于根據(jù)所設(shè)置的編譯參數(shù)調(diào)用對應(yīng)的編譯器將所述并行編程組件編譯為可執(zhí)行的并行編程組件; 配置模塊,用于將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中。
7.根據(jù)權(quán)利要求6所述的配置裝置,其特征在于,所述編譯參數(shù)包括以下至少之一: 用于選擇編譯器的選擇參數(shù)、用于選擇所述節(jié)點間的數(shù)據(jù)傳輸網(wǎng)絡(luò)的計算網(wǎng)絡(luò)參數(shù)。
8.根據(jù)權(quán)利要求6所述的配置裝置,其特征在于,進一步包括: 提示模塊,用于在將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中時,實時提示配置進度。
9.根據(jù)權(quán)利要求6所述的配置裝置,其特征在于,進一步包括: 生成模塊,用于在將編譯完成后的所述可執(zhí)行的并行編程組件配置到節(jié)點中之后,生成與所述并行編程組件對應(yīng)的配置文件,其中,所述配置文件包括與所述運行并行編程組件的環(huán)境對應(yīng)的環(huán)境變量。
10.根據(jù)權(quán)利要求9所述的配置裝置,其特征在于,進一步包括: 功能檢測模塊,用于在生成與該組件對應(yīng)的配置文件之后,對所述并行編程組件進行功能檢測。
【文檔編號】G06F9/38GK103605515SQ201310557010
【公開日】2014年2月26日 申請日期:2013年11月11日 優(yōu)先權(quán)日:2013年11月11日
【發(fā)明者】李斌, 馬少杰, 曹振南, 楊亮, 秦東明, 姜金良, 何滄平, 田相桂, 胡耀國, 易成, 趙明坤, 曹征, 苗春葆, 侯雪峰, 范娟, 程佑景 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司