《WRF數(shù)值氣象預(yù)報模式系統(tǒng)在深騰6800上的移植與測試》由會員分享,可在線閱讀,更多相關(guān)《WRF數(shù)值氣象預(yù)報模式系統(tǒng)在深騰6800上的移植與測試(4頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、WRF數(shù)值氣象預(yù)報模式系統(tǒng)在深騰6800上的移植與測試
摘 要:介紹了WRF中尺度數(shù)值氣象預(yù)報模式與聯(lián)想深騰6800高性能計算機(jī)系統(tǒng),概述WRF模式在聯(lián)想深騰6800上的移植與測試過程。采用3D數(shù)據(jù)集em_quarter_ss進(jìn)行性能分析與正確性測試,并繪制氣象圖。分析串、并行狀態(tài)的運(yùn)算加速比與處理器個數(shù)間的關(guān)系,發(fā)現(xiàn)并行效率相當(dāng)好,非常適用于機(jī)群系統(tǒng)。WRF在深騰6800上的成功移植與測試,也為進(jìn)一步將WRF應(yīng)用于中國國家網(wǎng)格奠定了研究基礎(chǔ)。
下載論文網(wǎng)
關(guān)鍵詞:天氣研究和預(yù)報;深騰6800;中尺度;數(shù)值模擬;移植;測試;國家網(wǎng)格
2、中圖分類號:TP311.5文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2007)06-0245-03
1 WRF模式特點(diǎn)與相關(guān)結(jié)構(gòu)??
WRF(Weather Research Forecast) 數(shù)值氣象預(yù)報模式系統(tǒng)是美國氣象界在繼開發(fā)MM5數(shù)值模式之后,再一次聯(lián)合開發(fā)的新一代中尺度氣象研究與預(yù)報數(shù)值模式及同化系統(tǒng)[1]。對比2000年10月發(fā)布的第一版,2004年6月發(fā)布的WRF第二版具有更多特點(diǎn),包括多重區(qū)域,從幾公里到數(shù)千公里的靈活分辨率,多重嵌套網(wǎng)格,以及與之協(xié)調(diào)的三維變分同化系統(tǒng)3DVAR等。WRF數(shù)值模式采用高度模塊化、并行化和分層設(shè)計技術(shù),集成了迄今
3、為止中尺度方面的研究成果[2]。??
WRF為中尺度研究和業(yè)務(wù)數(shù)值氣象預(yù)報提供共同框架,設(shè)計用于1-10km格距的模擬,與一般計算平臺上典型的實(shí)時預(yù)報能力相適應(yīng);它也為理想化動力研究以及完整物理的數(shù)值氣象預(yù)報與區(qū)域氣候模擬提供共同框架。??
與MM5數(shù)值模式相比,WRF的優(yōu)點(diǎn)有:多維動態(tài)內(nèi)核,更為合理的模式動力框架,先進(jìn)的三維變分資料同化系統(tǒng),可達(dá)幾公里的水平分辨率及集合參數(shù)化物理過程方案等[3]。
圖1為WRFv2模式與其他輸入輸出等模塊的關(guān)系流圖,描述了WRF模式的總體運(yùn)行過程以及與其他模塊的相互聯(lián)系。
圖1中,Part 1為外部數(shù)據(jù)集,即實(shí)際計算數(shù)據(jù)集,需經(jīng)過WR
4、F SI數(shù)據(jù)標(biāo)準(zhǔn)化預(yù)處理后,利用WRF進(jìn)行實(shí)時預(yù)報與氣象研究;Part 2為WRFv2模式提供的幾個測試數(shù)據(jù)集;Part 3為標(biāo)準(zhǔn)輸出與可視化模塊,主要對數(shù)據(jù)進(jìn)行后處理,并采用氣象專用繪圖軟件GrADs對輸出文件進(jìn)行圖形繪制。??
對WRF內(nèi)部模塊按功能[6]進(jìn)行歸類,詳見表1。
2 深騰6800介紹??
面向網(wǎng)格的聯(lián)想深騰6800高性能計算機(jī)系統(tǒng)為COW結(jié)構(gòu),它包括265個四路結(jié)點(diǎn)機(jī),1 060個主頻為1.3GHz的安騰II處理芯片(其中1 024個處理機(jī)用于計算),分布式存儲,內(nèi)存總?cè)萘繛?.6TB,磁盤存儲總?cè)萘繛?0TB(其中光纖盤陣容量61TB)。主要節(jié)點(diǎn)采
5、用LSF作業(yè)管理系統(tǒng),高速連接網(wǎng)絡(luò)為QsNet,點(diǎn)對點(diǎn)通信帶寬大于us300Mbps,延遲時間小于7us。作為中國科學(xué)院e-science重要基礎(chǔ)設(shè)施環(huán)境以及中國網(wǎng)格CNGrid的主要結(jié)點(diǎn)資源,深騰6800高性能計算機(jī)主要應(yīng)用于大規(guī)??茖W(xué)工程計算、數(shù)值模擬、商務(wù)計算和網(wǎng)格信息服務(wù)等多個領(lǐng)域。
3 移植??
移植過程是一個不斷反復(fù)、螺旋上升的過程,主要對程序進(jìn)行編譯和調(diào)試。需要熟悉MPI、OpenMP并行編程以及c/fortran90混和編程技術(shù),并需對WRF原理及模塊間關(guān)系有一定了解[7,8]。下面總結(jié)移植過程,并輔以一些示例說明。
3.1 修改編譯器??
根據(jù)
6、機(jī)器特點(diǎn)選擇Intel Itanium2 ia64 Madison Linux DM-Parallel (e.g. mpp2 at PNNL), efc71 compiler (RSL, MPICH, nesting) 編譯方案。由于使用深騰6800上的ecc/efc71編譯器編譯通不過,重新下載并安裝和使用了Intel ecc/efc Compiler 7.0編譯器,編譯成功。??
修改configure.wrf及各模塊Makefile文件的CC/SC編譯器為Intel ecc Compiler 7.0,F(xiàn)C/LD/SFC編譯器為Intel efc Compiler 7.0。
3
7、.2 修改編譯規(guī)則??
修改各Makefile文件及rules.make文件中的Fortran程序編譯規(guī)則:Intel efc Compiler 編譯器編譯Fortran源程序?yàn)槟繕?biāo)文件時,編譯器只識別后綴名為f 90的文件,故需將*.F文件先編譯為*.f 90,然后再生成*.o目標(biāo)文件。涉及修改Makefile文件的模塊有esmf_time_f90、io_esmf、io_grib1、io_int、io_mce1、io_netCDF、io_phdf5、RSL以及RSL_LITE等。??
另外,configure.wrf文件中缺少對external/io_grib1/模塊的編譯規(guī)則。
8、添加對應(yīng)規(guī)則,并將-L ../external/io_grib1/加入到LIB選項中,以生成正確的libgrib1.a庫文件。
3.3 修改編譯選項??
修改configure.wrf文件及各模塊Makefile文件的編譯選項。例如在mediation_nest_move.f 90的編譯過程中,TIME_FOR_MOVE與TIME_FOR_MOVE2函數(shù)無法識別。需要在configure.wrf的ARCHFLAGS中添加-DMOVE_NESTS選項,以實(shí)現(xiàn)模式的多重嵌套網(wǎng)格功能。
3.4 添加并行庫與函數(shù)庫??
在Intel ecc/efc Compiler 7.0 編
9、譯器的編譯選項中添加與其對應(yīng)的MPI并行庫及MPI Include文件,以保證并行程序的正常運(yùn)行。添加內(nèi)容為:-L/usr/lib/mpi/mpi_intel/lib/、-I/usr/lib/mpi/mpi_intel/include/、/usr/lib/mpi/mpi_intel/lib/libmpi.a。??
使用Intel ecc/efc Compiler 7.0編譯器編譯c/fortran程序,需要在編譯選項中添加相應(yīng)的函數(shù)庫及Include頭文件:/clusterware/compiler/intel/compiler70/ia64/lib/libPEPCF90.a、-I/cl
10、usterware/compiler/intel/compiler70/ia64/include、-L/usr/lib/qsnet/elan/lib/。否則,程序中的庫函數(shù)將無法識別。
3.5 修改源程序錯誤??
WRF模式中存在一些編程錯誤,如函數(shù)變量賦值錯誤、形參傳遞錯誤,函數(shù)與變量的未定義錯誤等,均需針對深騰6800特點(diǎn)做具體修改。如在phys/module_microphysics_driver.f90的編譯過程中,wsm5函數(shù)的調(diào)用出現(xiàn)錯誤“call wsm5(TH=th,...XLS=xls, XLV0=xlv, XLF0=xlf...),more than one p
11、rogram entity with this name is accessible”。需要將賦值號及前面變量去掉,正確形式為call wsm5(th, ..., , xls, xlv, xlf, ...)。
3.6 執(zhí)行編譯??
在WRFv2的run/目錄下執(zhí)行compile命令,進(jìn)行編譯,若成功則生成可執(zhí)行文件;否則重新執(zhí)行各步修改,繼續(xù)編譯、調(diào)試。??
圖2 移植過程示意圖
4 配套軟件安裝??
4.1 數(shù)據(jù)格式軟件netCDF??
WRF模式的I/O只支持netCDF與PHD5數(shù)據(jù)格式。在移植WRF之前安裝netCDF數(shù)據(jù)格式軟件,
12、選擇Intel ecc/efc Compiler 7.0編譯器,修改macros.make、rules.make的編譯規(guī)則與編譯選項,添加相關(guān)函數(shù)庫,重新定義include文件中的變量和函數(shù),如需要在cFortran.h中特別定義f 2cFortran以及pgiFortran選項。上述過程與WRF移植過程基本一致。??
根據(jù)WRF編譯過程調(diào)整NetCDF安裝。如編譯wrf_io.o時,“nf_open”函數(shù)無法識別,原因在于netCDF安裝過程中沒有生成正確的libnetCDF.a文件。需修改netCDF/fortran目錄下的ncfortran.h文件,將#define nf_open
13、 nf_open_替換為#define nf_open nf_open。??
4.2 WRFtoGrADs轉(zhuǎn)換器??
用于轉(zhuǎn)換WRF 模式中的netCDF格式文件為標(biāo)準(zhǔn)的*.ctl與*.dat文件,WRF模式所有netCDF格式的輸入、輸出數(shù)據(jù)均可轉(zhuǎn)化為*.ctl數(shù)據(jù)描述文件與*.dat二進(jìn)制數(shù)據(jù)文件,用于GrADs繪圖。??
4.3 多維數(shù)據(jù)集可視化軟件GrADs??
GrADs(Grid Analysis and Display System)提供一個全32位交互操作的氣象格點(diǎn)數(shù)據(jù)和站點(diǎn)數(shù)據(jù)的分析以及顯示環(huán)境。該系統(tǒng)具有氣象數(shù)據(jù)分析功能強(qiáng)、地圖投影坐標(biāo)豐富、高級編程
14、語言使用容易、圖形顯示快速等特點(diǎn),是氣象數(shù)據(jù)顯示的標(biāo)準(zhǔn)平臺之一。GrADs主要應(yīng)用于氣象學(xué),只處理四維數(shù)據(jù)集,輸出二維圖像比較清晰,但不能做三維圖像。??
5 模式測試及結(jié)果分析??
使用WRF提供的測試數(shù)據(jù)集em_quarter_ss。數(shù)據(jù)來自2000年1月至2004年2月共49個月氣象場的各變量的月平均數(shù)據(jù)。東西方向41個格點(diǎn),起始緯度為0,步長0.000 1;南北方向41個格點(diǎn),起始緯度為起始緯度為0,步長0.000 1;40個高度層。水平格距為10km,垂直格距1.5km,迭代7 200次,輸出8個物理變量。??
(1)編譯em_quarter_ss,生成可執(zhí)
15、行文件ideal.exe與wrf.exe;??
(2)修改namelist與input_sounding相關(guān)數(shù)據(jù)參數(shù);??
(3)執(zhí)行runmefirst.sh腳本,建立文件鏈接;??
(4)單CPU運(yùn)行ideal.exe,生成wrfinput_d01輸入文件;??
(5)采用bsub命令提交作業(yè)腳本,并通過改變處理器數(shù)目進(jìn)行數(shù)據(jù)集測試。??
深騰6800 LSF作業(yè)管理系統(tǒng)采用bsub命令提交作業(yè)腳本,具體形式為:??
bsub-nm(處理器個數(shù))-q queues(隊列名)mpijobs_qsjobname ??
運(yùn)行em_quarter_ss數(shù)據(jù)
16、集,輸出wrfout_d01_year_month_day_minite_second數(shù)據(jù)文件以及rsl.error、rsl.out運(yùn)行信息。對數(shù)據(jù)集測試結(jié)果進(jìn)行性能分析,詳見表2。
分析表2,得到計算時間、加速比以及效率與處理器數(shù)目關(guān)系圖,如圖3-5所示。使用16處理器取得較好運(yùn)算效果,此時效率近似于8處理器,而加速比卻提高了近兩倍。
進(jìn)入WRFtoGrADs目錄,對control_file文件的file_list參數(shù)進(jìn)行修改,用于將wrfout_d01_year_month_day_minite_second結(jié)果數(shù)據(jù)轉(zhuǎn)換為*.ctl與*.dat文件。??
隨機(jī)選擇繪制在2
17、000年1月,經(jīng)度為0.001 5-0.002 3,緯度為0.001 5-0.002 3以及0.28689hPa下氣溫場和壓強(qiáng)場的垂直渦度圖。圖6-9,分別為不同處理器下的輸出結(jié)果。各圖近乎一致,驗(yàn)證了測試結(jié)果的正確性。
6 結(jié)束語??
WRF 模式系統(tǒng)在預(yù)報各種天氣中都具有較好的性能,同時實(shí)現(xiàn)在線完全嵌套大氣化學(xué)模式,并具有預(yù)報空氣質(zhì)量的能力[4]。WRF作為新一代數(shù)值預(yù)報模式的框架,可與其他多種模式耦合(e.g.沙塵暴模式),進(jìn)行更加合理而廣泛的氣象研究與預(yù)報應(yīng)用[5]。??
WRF數(shù)值氣象預(yù)報模式在深騰6800上的移植與測試,是應(yīng)國家自然科學(xué)基金“當(dāng)代并行機(jī)的并行算法應(yīng)用基礎(chǔ)研究(60533020)”、國家973項目“高性能計算研究(2005CB321702)”及國家發(fā)改委項目“基于CNGI的中國國家網(wǎng)格應(yīng)用”項目資助而進(jìn)行的。結(jié)合中國科學(xué)院在超級計算領(lǐng)域的資源優(yōu)勢,將WRF進(jìn)一步運(yùn)用到中國國家網(wǎng)格CNGrid[9]計算中,與MM5及GRAPES數(shù)值模式一起為用戶提供大氣環(huán)境科學(xué)領(lǐng)域的科學(xué)研究與實(shí)際預(yù)測,實(shí)現(xiàn)其廣闊的應(yīng)用前景。
本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。