林 海 銘
(廣東省建筑科學(xué)研究院集團(tuán)股份有限公司 廣東 廣州 510500)
?
基于Hadoop MapReduce的大規(guī)模雷電電磁傳播數(shù)值仿真
林 海 銘
(廣東省建筑科學(xué)研究院集團(tuán)股份有限公司 廣東 廣州 510500)
面對(duì)大規(guī)模雷電電磁問題,單機(jī)計(jì)算不能達(dá)到完全解決問題的程度,可以考慮利用新興云計(jì)算技術(shù)來解決。提出基于Hadoop MapReduce框架的域分解時(shí)域有限差分并行算法,在6節(jié)點(diǎn)的Hadoop實(shí)驗(yàn)室集群上,對(duì)上海浦東某地區(qū)發(fā)生的大規(guī)模雷電電磁傳播過程進(jìn)行數(shù)值仿真,并測(cè)試不同計(jì)算子域所獲得的加速比。計(jì)算結(jié)果顯示,所提出的并行算法能有效地求解大規(guī)模雷電電磁傳播問題,且計(jì)算模型越大、計(jì)算節(jié)點(diǎn)越多,加速比也大,在設(shè)定的計(jì)算環(huán)境下,最大加速比為2.4,受硬盤空間限制,最大計(jì)算規(guī)模為1 368萬節(jié)點(diǎn)。
云計(jì)算 Hadoop MapReduce 雷電 有限差分法 并行計(jì)算
自2007年IBM正式提出云計(jì)算[1]的概念以來,許多學(xué)者、研究機(jī)構(gòu)和IT公司都從不同角度定義了云計(jì)算。云計(jì)算是以虛擬化技術(shù)為基礎(chǔ),以網(wǎng)絡(luò)為載體,以用戶為主體,以IaaS、PaaS、SaaS服務(wù)為形式,整合大規(guī)模、可擴(kuò)展的分布式資源進(jìn)行協(xié)同工作的超級(jí)計(jì)算范式。云計(jì)算的基礎(chǔ)設(shè)施架構(gòu)在普通機(jī)器上,能夠無縫地?cái)U(kuò)展到包含數(shù)千個(gè)節(jié)點(diǎn)的大規(guī)模集群上,擴(kuò)展性好,最大限度地利用廉價(jià)計(jì)算資源。云計(jì)算通過普通機(jī)器的冗余獲得高可用性,能夠容忍節(jié)點(diǎn)失效。同時(shí),用戶通過即付即用方式使用云中心資源,可以避免在基礎(chǔ)設(shè)備上的投資,也脫離技術(shù)與部署的復(fù)雜性。
云計(jì)算的興起,為科學(xué)計(jì)算提供了新的工具,基于云計(jì)算的科學(xué)計(jì)算稱為研究熱點(diǎn)。Jakovits等[2]在Hadoop MapReduce框架上實(shí)現(xiàn)基于Monte Carlo的線性方程組求解,并跟Hadoop CG和Twister CG進(jìn)行比較,結(jié)果顯示Hadoop Monte Carlo的效率高于Hadoop CG,但低于Twister CG,同時(shí)隨著Markov鏈的增加,Monte Carlo不容易收斂。Xuan等[3]在Hadoop框架頂層加了包含Dataflow DAG、Controllers、Resource Manager等數(shù)據(jù)流層,形成適合科學(xué)工作流的數(shù)據(jù)流驅(qū)動(dòng)云模型SciFlow,整合了分子動(dòng)力學(xué)MD程序GROMACS和前向流采樣FFS算法,設(shè)計(jì)其基于數(shù)據(jù)流驅(qū)動(dòng)的MapReduce實(shí)現(xiàn)。Yang等[4]提出基于MapReduce的圖形算法Mapper-side Schimmy來實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)仿真,用包含10萬個(gè)神經(jīng)元23億個(gè)邊的算例進(jìn)行驗(yàn)證,此算法能提高性能64%,但MapReduce框架不適合迭代算法,在Hadoop頂層增加了適用于大規(guī)模圖形處理的框架Giraph,性能提升了60%。Dalman等[5]在Amazon云平臺(tái)上無縫集成了Hadoop MapReduce框架和生物醫(yī)學(xué)工程的C-MFA框架,在Hadoop streaming接口上獲得加速比17(64核),通過自定義數(shù)據(jù)類型和參數(shù)調(diào)優(yōu),加速比提高到48。Gu等[6]提出科學(xué)工作流SWF建模方法和XML數(shù)據(jù)管理模型XML-DMM,其中SWF建模負(fù)責(zé)數(shù)據(jù)的處理,XML-DMM確保了云環(huán)境中數(shù)據(jù)的一致性和分布式資源的利用率,并設(shè)計(jì)了Rollback、Break-Point和Release Resource三種動(dòng)態(tài)執(zhí)行機(jī)制來提高SWF的執(zhí)行效率,在Hadoop平臺(tái)上實(shí)現(xiàn),并用計(jì)算大海表面溫度SST的例子進(jìn)行驗(yàn)證。Vijayakumar等[7]使用FASTA算法提出了生物信息學(xué)中的基因序列比對(duì)優(yōu)化方法,并在Hadoop和Greenplum MPP 數(shù)據(jù)庫組合的平臺(tái)上實(shí)現(xiàn),實(shí)驗(yàn)結(jié)果表明這種組合平臺(tái)上的計(jì)算時(shí)間比Hadoop+PostgreSQL平均減少了48%。
空間雷電電磁傳播問題具有計(jì)算/數(shù)據(jù)密集型的特性,隨著計(jì)算規(guī)模和精度的不斷提高,單機(jī)即使是高性能計(jì)算機(jī)已經(jīng)不能完全求解問題,本文在云計(jì)算環(huán)境下實(shí)現(xiàn)有限差分法求解大規(guī)模電磁傳播問題,具有重要的探索意義和實(shí)用價(jià)值。
Hadoop是一個(gè)應(yīng)用最為廣泛的開源MapReduce實(shí)現(xiàn),通過廉價(jià)PC組建成具有強(qiáng)大數(shù)據(jù)處理能力的計(jì)算平臺(tái),每個(gè)PC提供本地計(jì)算和存儲(chǔ),通過高度抽象的編程模型實(shí)現(xiàn)分布式計(jì)算。Hadoop通過數(shù)據(jù)復(fù)制和局部重新計(jì)算實(shí)現(xiàn)錯(cuò)誤容忍和失效恢復(fù),而不是通過硬件的高可靠性,既能解決傳統(tǒng)高性能計(jì)算中容錯(cuò)性不足的問題,也降低了基礎(chǔ)設(shè)備的購置、維護(hù)費(fèi)用。Hadoop平臺(tái)包含HDFS、MapReduce、YARN、HBase、Hive、Pig等模塊,用于計(jì)算的Hadoop平臺(tái)主要包括分布式文件系統(tǒng)HDFS和并行計(jì)算框架MapReduce兩部分。
1.1 HDFS
Hadoop的分布式文件系統(tǒng)HDFS采用Master/Slaver架構(gòu),典型的HDFS由一個(gè)NameNode和一定數(shù)目的DataNode組成。其中,NameNode是中心服務(wù)器,負(fù)責(zé)管理文件系統(tǒng)的Namespace并接受客戶端對(duì)文件的訪問;DataNode是數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),在Namenode的指揮下進(jìn)行數(shù)據(jù)塊的創(chuàng)建、刪除和復(fù)制[8]。HDFS通過硬件的冗余和數(shù)據(jù)塊的備份實(shí)現(xiàn)高容錯(cuò)性,通過流式訪問實(shí)現(xiàn)高數(shù)據(jù)吞吐量,提供高傳輸帶寬實(shí)現(xiàn)海量數(shù)據(jù)管理,要求每個(gè)時(shí)刻只能一個(gè)用戶寫入數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)的一致性。
1.2 MapReduce
MapReduce[8]是當(dāng)前最為流行的分布式編程模型,用戶只要根據(jù)自身需求實(shí)現(xiàn)Mapper和Reducer接口,就能自動(dòng)并行化自己的應(yīng)用程序。Mapper接口通過map()函數(shù)對(duì)輸入進(jìn)行映射操作。在各個(gè)工作節(jié)點(diǎn)上,map()函數(shù)獲得一串由主節(jié)點(diǎn)分配的鍵值對(duì)(key/value)作為輸入。對(duì)于一個(gè)key/value,在map()中進(jìn)行相應(yīng)的操作,可以產(chǎn)生一串key/value作為輸出,這個(gè)過程的可以表示為map :: (key1; value1) to list(key2; value2)。Reducer接口通過reduce()函數(shù)對(duì)輸入進(jìn)行規(guī)約。reducer()函數(shù)獲得一串key相同的鍵值對(duì)作為輸入,規(guī)約成新的值作為輸出,形式為reduce::(key2;list(value2)) to list(value3)。
2.1 Yee’s FDTD
在各向同性、時(shí)間無關(guān)的電磁空間中,電磁傳播過程可用以下矢量方程表示:
(1)
(2)
其中,E為電場(chǎng)強(qiáng)度矢量,H為磁場(chǎng)強(qiáng)度矢量,ε為介電常數(shù),μ為磁導(dǎo)率,σ為電導(dǎo)率。
通過Yee晶格把計(jì)算空間沿3個(gè)軸向劃分成長方體小網(wǎng)格,將計(jì)算空間中的連續(xù)變量離散化,節(jié)點(diǎn)(i,j,k)處的電磁場(chǎng)分量如圖1所示。
圖1 Yee晶格
通過中心差分法并假設(shè)網(wǎng)格為方體(Δx=Δy=Δz=δ),式(1)和式(2)可離散為:
(3)
(4)
(5)
(6)
(7)
(8)
2.2 Mur邊界條件
在一長方體(0 (9) (10) 圖2中,P0為邊界節(jié)點(diǎn),Q0為P0相對(duì)的節(jié)點(diǎn),P1、P2、P3、P4是P0相鄰的節(jié)點(diǎn),Q1、Q2、Q3、Q4為Q0相鄰的節(jié)點(diǎn),假設(shè)網(wǎng)格單元長度為δ,式(9)和式(10)可離散為: (11) fn(P3)+fn(P4)+fn(Q1)+fn(Q2)+fn(Q3)+fn(Q4)] (12) 圖2 節(jié)點(diǎn)示意圖 為保證FDTD的計(jì)算穩(wěn)定性,對(duì)截?cái)噙吔缟暇W(wǎng)格節(jié)點(diǎn)(圖3所示)做如下處理,可以避免對(duì)棱邊及角頂點(diǎn)處網(wǎng)格節(jié)點(diǎn)(圖中空心圓節(jié)點(diǎn))的計(jì)算:與長方體棱邊相鄰的節(jié)點(diǎn)(圖中方形節(jié)點(diǎn))采用式(11)近似計(jì)算;內(nèi)部節(jié)點(diǎn)(圖中實(shí)心圓節(jié)點(diǎn))則采用式(12)近似計(jì)算。 圖3 邊界節(jié)點(diǎn)處理示意圖 2.3 DD-FDTD 根據(jù)迭代方程式(3)至式(8),得到FDTD算法的數(shù)據(jù)相關(guān)性圖(圖4)。每一網(wǎng)格點(diǎn)上的電磁計(jì)算都與相鄰網(wǎng)格點(diǎn)存在數(shù)據(jù)相關(guān)聯(lián),但當(dāng)把一個(gè)完整的計(jì)算域劃分為若干個(gè)子區(qū)域時(shí),子域邊界處網(wǎng)格節(jié)點(diǎn)上的電磁計(jì)算用到臨域邊界處網(wǎng)格節(jié)點(diǎn)上的切向場(chǎng)量,存在數(shù)據(jù)依賴性,而子域內(nèi)部網(wǎng)格節(jié)點(diǎn)上的電磁計(jì)算所需的數(shù)據(jù)都在本域內(nèi),與其他子域不存在數(shù)據(jù)依賴性,可以獨(dú)立完成計(jì)算。 圖4 數(shù)據(jù)相關(guān)性 DD-FDTD的基本原理如圖5所示。在計(jì)算第N個(gè)時(shí)間步時(shí),首先計(jì)算電場(chǎng)分量,根據(jù)式(8),計(jì)算子區(qū)域1內(nèi)部網(wǎng)格節(jié)點(diǎn)的電場(chǎng)分量Ez所需的磁場(chǎng)分量Hx、Hy全在該區(qū)域中,能獨(dú)立完成。但計(jì)算子域邊界處網(wǎng)格節(jié)點(diǎn)的電場(chǎng)分量Ez所需的磁場(chǎng)分量Hy位于臨域2邊界處的網(wǎng)格節(jié)點(diǎn)上,開始計(jì)算Ez之前必須將上一時(shí)間步的磁場(chǎng)分量Hy從臨域2傳遞到1中。計(jì)算磁場(chǎng)分量情況類似。 圖5 DD-FDTD的基本原理 計(jì)算前,對(duì)計(jì)算網(wǎng)格進(jìn)行分區(qū),對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行編號(hào),標(biāo)記分塊邊界節(jié)點(diǎn)(不同于物理邊界,物理邊界通過節(jié)點(diǎn)編號(hào)判斷),初始化電/磁場(chǎng)6個(gè)計(jì)算分量。網(wǎng)格節(jié)點(diǎn)信息存儲(chǔ)到輸入文件中,主要包括塊編號(hào)、邊界標(biāo)記、節(jié)點(diǎn)編號(hào)、電磁場(chǎng)分量初始值等。 根據(jù)上述的FDTD算法基本理論及其域分解并行化技術(shù),設(shè)計(jì)一個(gè)類DD_FDTDSolver實(shí)現(xiàn)基于MapReduce的DD-FDTD并行化。在DD-FDTD中,各個(gè)分塊內(nèi)部的計(jì)算都是獨(dú)立的,只有邊界節(jié)點(diǎn)上的計(jì)算需要用到相鄰分塊中的數(shù)據(jù)。因此,MapReduce過程只需要Mapper過程,每個(gè)Mapper負(fù)責(zé)一個(gè)分塊的計(jì)算,不需要Combiner和Reducer對(duì)Mapper的結(jié)果進(jìn)行歸約。 在Mapper中,輸入文件為上述的格式化文件,在Job的配置中用Hadoop的NLineInputFormat類設(shè)置輸入格式,master將N行數(shù)據(jù)分配給一個(gè)Mapper,N的大小由屬性mapreduce.input.lineinputformat.linespermap控制。在此N設(shè)置為每個(gè)分塊里的數(shù)據(jù)量,從而實(shí)現(xiàn)每個(gè)Mapper獨(dú)立計(jì)算一個(gè)分塊,Mapper數(shù)為FDTD域分解的分塊數(shù)。Mapper將所分配到的數(shù)據(jù)塊以鍵值對(duì)的形式傳給map()函數(shù),作為其輸入,其中“鍵”為該行數(shù)據(jù)在整個(gè)輸入數(shù)據(jù)文件中的偏移量,“值”為一整行數(shù)據(jù),即為一個(gè)網(wǎng)格節(jié)點(diǎn)信息數(shù)據(jù)。在每個(gè)迭代步中,每個(gè)節(jié)點(diǎn)上的電/磁場(chǎng)分量的計(jì)算所需的數(shù)據(jù)都是前邊迭代步的計(jì)算結(jié)果。因此可以在setup()函數(shù)中,根據(jù)塊編號(hào)從HDFS上的文件讀取相應(yīng)的相鄰分塊邊界節(jié)點(diǎn)的結(jié)果數(shù)據(jù)和本塊內(nèi)部節(jié)點(diǎn)的結(jié)果數(shù)據(jù),分別存儲(chǔ)在數(shù)組A和數(shù)組B中。在map()函數(shù)中根據(jù)節(jié)點(diǎn)編號(hào),判斷是節(jié)點(diǎn)類別,若為物理邊界節(jié)點(diǎn),則利用式(11)和式(12)進(jìn)行計(jì)算;若為分塊邊界節(jié)點(diǎn),則從數(shù)組A獲取臨域邊界節(jié)點(diǎn)數(shù)據(jù)根據(jù)迭代式(3)至式(8)進(jìn)行計(jì)算。否則,從數(shù)組B中獲取本塊節(jié)點(diǎn)數(shù)據(jù)按照迭代式(3)至式(8)進(jìn)行計(jì)算。最后更新“值”中的6個(gè)分量值,輸出到HDFS上相應(yīng)的文件中作為下一迭代步的輸入數(shù)據(jù)。 Hadoop Job的基本配置參數(shù)可以采用系統(tǒng)默認(rèn)的,而關(guān)鍵配置參數(shù)往往是通過啟動(dòng)命令進(jìn)行傳遞給Job啟動(dòng)函數(shù),在此需要通過啟動(dòng)命令配置的關(guān)鍵參數(shù)包括:輸入數(shù)據(jù)文件路徑、輸出結(jié)果路徑、行數(shù)Nline和分塊數(shù)Nsplit?;贛apReduce框架DD-FDTD并行實(shí)現(xiàn)的算法流程如圖6所示。 圖6 基于MapReduce的DD-FDTD流程圖 4.1 雷電電磁傳播 以上海浦東某地區(qū)發(fā)生的雷電電磁傳播過程為例,驗(yàn)證上述所提的算法。忽略小型建筑物,只對(duì)大型建筑物及長方體空間(1500 m×1500 m×750 m)內(nèi)的空氣介質(zhì)進(jìn)行建模,網(wǎng)格模型如圖7所示(只顯示建筑物的網(wǎng)格)。 圖7 網(wǎng)格模型 將雷電流近似為線電流源進(jìn)行加載,要在電磁場(chǎng)中添加線電流源,只需將下邊子項(xiàng)加到式(8)的右邊。 其中,I為線電流隨時(shí)間變化的表達(dá)式,is,js為雷電流所在節(jié)點(diǎn)在x、y方向上的坐標(biāo)。 本文采用IEEE推薦的8/20 μs雙指函數(shù)波形雷電流模型,形式為: In(is,js,k)=I0(e-α(Δt·n-kδ/v)-e-β(Δt·n-kδ/v)) 其中,I0=23.3 kA,α=7.714×104,β=2.489×105,v=1.3×108m/s。雷電電磁場(chǎng)的頻率范圍就要集中在102~106Hz,計(jì)算時(shí)將頻率設(shè)置為1 MHz,波長300 m,取Yee晶格大小δ=10 m,足以滿足穩(wěn)定性條件。計(jì)算域?yàn)?500 m×1500 m×750 m的長方體,由空氣和建筑物構(gòu)成,其中,空氣的電磁參數(shù)為εr1=1、μr1=1、σ=0;假設(shè)建筑物各項(xiàng)同性,其電磁參數(shù)為εr2=6.0、μr2=1.13、σ=0.05 S/m。雷電流位于z=0平面的中心,在10 μs時(shí)達(dá)到峰值,此時(shí)x方向的電/磁場(chǎng)的云圖如圖8、圖9(兩截面分別在z=0 m和z=375 m處)和圖10、圖11(兩截面分別在z=150 m和z=600 m處)所示。從截面圖可以看出建筑物貫穿電磁場(chǎng),引起電磁場(chǎng)傳播不均勻,對(duì)電磁場(chǎng)起一定的屏蔽作用。 圖8 Ex云圖 圖9 Hx云圖 圖10 Ex云圖 圖11 Hx云圖 4.2 加速比 用三種不同尺寸的網(wǎng)格離散化計(jì)算域,得到三種不同規(guī)模的網(wǎng)格模型,分別由21 375、1 710 000、13 680 000個(gè)節(jié)點(diǎn)構(gòu)成(受硬盤空間限制,不繼續(xù)加密)。采用MATLAB將網(wǎng)格模型分為數(shù)目不等的計(jì)算子域并生成輸入文件。在Hadoop實(shí)驗(yàn)集群(配置的最大map數(shù)為12)上測(cè)試其加速比,測(cè)試結(jié)果如圖12所示。對(duì)于每一個(gè)網(wǎng)格模型,加速比隨map數(shù)的增加而增加,但曲線的斜率隨map數(shù)的增加逐漸減小,即加速比增長逐漸減緩。對(duì)于不同網(wǎng)格模型,網(wǎng)格模型的規(guī)模越大,獲得更好的加速效率。對(duì)于同一個(gè)網(wǎng)格模型,map數(shù)的增加意味著Hadoop集群中更多的worker分配到計(jì)算任務(wù)參與計(jì)算,從而使得整體計(jì)算的并行度增大,獲得更好的加速效果。但節(jié)點(diǎn)增加會(huì)引起數(shù)據(jù)讀寫和節(jié)點(diǎn)之間通信等方面的性能開銷增加,而導(dǎo)致加速比的增長率變小。對(duì)于小模型,數(shù)據(jù)讀寫和節(jié)點(diǎn)之間通信等方面的開銷所占的比重大于計(jì)算的開銷,計(jì)算節(jié)點(diǎn)的增加提高了計(jì)算并行度,加速比增加,但節(jié)點(diǎn)處于未飽和狀態(tài)并且未飽和狀態(tài)越來越嚴(yán)重,增長速度下降比較快。對(duì)于大模型,數(shù)據(jù)讀寫和節(jié)點(diǎn)通信方面的開銷比小模型的大,但其屬于計(jì)算密集型,即計(jì)算方面的開銷占絕大部分,計(jì)算模型規(guī)模的增大使得計(jì)算的開銷在整體開銷中所占的比重也增大,計(jì)算節(jié)點(diǎn)的增加加大了計(jì)算并行度,加速比增加,計(jì)算節(jié)點(diǎn)的狀態(tài)隨節(jié)點(diǎn)數(shù)的增加從超飽和狀態(tài)向飽和狀態(tài)、未飽和狀態(tài)轉(zhuǎn)變,加速比的增長速度逐漸變小。 圖12 不同map任務(wù)下的加速比 本文設(shè)計(jì)了合適的數(shù)據(jù)結(jié)構(gòu),提出了基于MapReduce框架的DD-FDTD并行算法,并給出了詳細(xì)的設(shè)計(jì)步驟和程序執(zhí)行流程,最后通過上海某地區(qū)發(fā)生的雷電傳播過程為數(shù)值實(shí)例,驗(yàn)證算法的并行性能。結(jié)果表明加速比隨著計(jì)算節(jié)點(diǎn)的增加而增加,但當(dāng)計(jì)算節(jié)點(diǎn)到達(dá)一定數(shù)量時(shí),集群處于未飽和狀態(tài),加速比的增長速度下降;當(dāng)集群規(guī)模與求解問題的計(jì)算量匹配時(shí),集群處于飽和狀態(tài),系統(tǒng)的計(jì)算性能最佳;在本文所配置的6節(jié)點(diǎn)集群環(huán)境下,最大計(jì)算規(guī)模為1368萬節(jié)點(diǎn),最大的加速比為2.4。 [1] Armbrust Michael,Fox Armando,Griffith Rean,et al.A view of Cloud Computing[J].Commun.ACM,2010,53(4):50-58. [2] Pelle Jakovits,Ilja Kromonov,Satish Narayana Srirama.Monte Carlo Linear System Solver using MapReduce[C]//Proceedings of 2011 Fourth IEEE International Conference on Utility and Cloud Computing, Victoria, December 5-8, 2011.New York: IEEE,2011. [3] Xuan Pengfei,Zheng Yueli,Sarupria Sapna,et al.SciFlow:A Dataflow-driven Model Architecture for Scientific Computing Using Hadoop[C]//Proceedings of 2013 IEEE International Conference on Big Data, Silicon Valley, October 6-9, 2013.New York:IEEE,2013. [4] Yang Shuo,Spielman N D,Jackson J C,et al.Large-scale Neural Modeling in MapReduce and Giraph[C]//Proceedings of 2014 IEEE International Conference on Electro/Information Technology, Milwaukee,June 5-7, 2014.New York: IEEE,2014. [5] Tolga Dalmana,Tim D?rnemannb,Ernst Juhnke,et al.Cloud MapReduce for Monte Carlo Bootstrap Applied to Metabolic Flux Analysis[J].Future Generation Computer Systems,2013,29(2):582-590. [6] Gu R,Wu S,Dong H,et al.A Modeling Method of Scientific Workflow Based on Cloud Environment[C]//Proceedings of 2012 IEEE/ACIS 11th International Conference on Computer and Information Science,Shanghai, May 30-June 1, 2012.New York: IEEE,2012. [7] Vijayakumar S,Bhargavi A,Praseeda U,et al.Optimizing Sequence Alignment in Cloud Using Hadoop and MPP Database[C]//Proceedings of 2012 IEEE 5th International Conference on Cloud Computing, Honolulu, June 24-29,2012.New York:IEEE,2012. [8] Lam Chuck.Hadoop in action[M].New York,America: Manning Publications Co.,2010. NUMERICAL SIMULATION OF LARGE-SCALE LIGHTNING ELECTROMAGNETIC PROPAGATION BASED ON HADOOP MAPREDUCE Lin Haiming (GuangdongProvincialAcademyofBuildingResearchGroupCo.,Ltd.,Guangzhou510500,Guangdong,China) Single computer cannot reach the extent of completely solving the problem of large-scale lightning electromagnetic propagation simulation, but it may consider to use emerging cloud computation technology as the solution. This paper proposes a Hadoop MapReduce frame-based parallel algorithm of domain decomposition finite difference time domain (DD-FDTD). On a 6-nodes Hadoop laboratory cluster we carried out numerical simulation on the large-scale lightning electromagnetic propagation process occurred in an area in Pudong District, Shanghai, and tested the speedup ratios obtained in different computational sub-domains. It is shown by computational results that the proposed parallel algorithm can calculate the electromagnetic propagation of large-scale lightning effectively, and the speedup ratio increases along with the augment in computation model and the number of computational nodes, and the maximum speedup ratio is about 2.4 under the computation environment introduced in the paper. With the limitation of the capability of hard disk, the maximum computation scale is 13.68 million nodes. Cloud computing Hadoop MapReduce Lightning FDTD Parallel computing 2015-09-07。林海銘,助理工程師,主研領(lǐng)域:計(jì)算機(jī)仿真,大規(guī)模計(jì)算。 TP3 A 10.3969/j.issn.1000-386x.2016.11.0163 基于MapReduce的DD-FDTD
4 算例驗(yàn)證
5 結(jié) 語