網(wǎng)絡(luò)并行計算在多層快速多極子法中的應(yīng)用
3 MPI軟件包及網(wǎng)絡(luò)并行計算技術(shù)
MPI(Message Passing Interface)是消息傳遞并行程序設(shè)計標準之一。指定該標準的主要目的是為了提高并行程序的可移植性和使用的方便性。有了標準,并行計算環(huán)境下的應(yīng)用軟件庫以及軟件工具就可以透明的移植。各個廠商可以依據(jù)標準提供獨具特色和優(yōu)勢的軟件實現(xiàn)和硬件支持,從而提高并行處理的能力。
我們選用國內(nèi)外較流行的MPICH2版本與Compaq Visual FORTRAN 66相結(jié)合進行并行程序設(shè)計。MPICH2具有通用性強、系統(tǒng)規(guī)模小、成熟度高、可以免費獲得等優(yōu)點,非常適合數(shù)值計算。
使用主從結(jié)構(gòu)模式實現(xiàn)并行MLFMA,主機主要功能為初始化、任務(wù)的管理分配和最終結(jié)果的輸出,不參與具體計算;中間計算由從機負責(zé)。
并行算法可以用很多標準來評價,如加速比和并行效率[7,8]。
加速比定義為
并行效率定義為
搭建高性能高效率的并行計算機網(wǎng)絡(luò)平臺,計算機主要配置為Pentium IV雙核1.86GHz CPU,2GMB內(nèi)存,Microsoft Windows XP操作系統(tǒng),千兆以太網(wǎng)交換機。我們開發(fā)的并行多層快速多極子程序,用9臺計算機參加并行計算,其中1臺為主機,參加實際計算的為8臺從機。
4 數(shù)值結(jié)果
算例一:入射波頻率為1.6GHz,金屬球直徑17.067λ,未知量數(shù)目為172,680,計算出其雙站RCS曲線,見圖1。為了使曲線簡潔明了、易于辨認,僅給出0°~30°部分。計算結(jié)果與Mie解吻合較好。由表Ⅱ中數(shù)據(jù)算得并行加速比為7.78,并行效率為97%。
算例二:入射波頻率為1.6GHZ,金屬球直徑85.333λ,未知量數(shù)目為2,402,328,計算出其雙站RCS曲線,見圖2。為了使曲線簡潔明了、易于辨認,僅給出0°~30°部分。計算結(jié)果與Mie解吻合較好。每臺從機內(nèi)存消耗為1.6GB。
表2 串行、并行程序單機內(nèi)存消耗及時間比較
串行程序 | 并行程序 | |
單機消耗內(nèi)存 | 534.74MB | 71.56MB |
程序總耗時 | 1028.82秒 | 132.26秒 |
圖1 (a) φ=0°時直徑17.067λ金屬球雙站RCS曲線
圖1 (b) φ=90°時直徑17.067λ金屬球雙站RCS曲線
圖2 (a) φ=0°時直徑85.333λ金屬球雙站RCS曲線
圖2 (b) φ=90°時直徑85.333λ金屬球雙站RCS曲線
5 結(jié)論
本文對網(wǎng)絡(luò)并行計算在多層快速多極子法中的應(yīng)用作了探求,計算了含240萬未知量金屬球的雙站RCS,初步驗證了并行求解大未知量問題的可行性與高效性。增多參與計算的從機數(shù)目,優(yōu)化并行MLFMA,則能夠計算更大規(guī)模的問題,這也是以后可以改進的方面。
評論