999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

水聲環境特征參數并行預報方法研究*

2021-11-22 08:44:38范培勤過武宏
計算機工程與科學 2021年11期
關鍵詞:進程優化

范培勤,過武宏,韓 梅,唐 帥,張 馳

(1.海軍潛艇學院,山東 青島 266199;2.青島海洋科學與技術試點國家實驗室,山東 青島 266000 )

1 引言

海洋水聲環境主要指聲音在海水中傳輸的信道環境,由海水聲速垂直結構、聲吸收、界面特性和海洋內部不均勻性等要素構成。聲波是目前唯一有效的水下遠距離信息傳輸載體,由于海洋水聲環境具有強烈的時空易變性,從而引起水聲信息傳輸信道的改變,進而顯著影響到水聲裝備的使用和性能發揮[1]。因此,為實現水聲裝備與水聲環境的最佳匹配,優化水聲裝備的使用,迫切需要利用溫鹽流等基礎海洋環境數值預報數據,結合水聲裝備的具體需求,開展海洋水聲環境特征參數的快速預報,為水聲裝備的使用提供時效更長、準確率更高、范圍更廣的水聲環境預報產品。隨著海洋環境數值預報能力的快速提高[2,3],三維溫鹽流數值預報產品[4]的范圍、分辨率和精度都有了大幅提升,如何將海洋數值預報產品快速轉化為水聲環境產品,為水聲裝備的有效使用提供大范圍、長時間序列、高分辨率和精細化水聲環境輔助決策支持成為亟待解決的問題。

針對上述問題,本文基于SMP集群,采用MPI并行編程方式[5],完成了水聲環境參數并行計算程序的設計和實現,圍繞程序運行中存在的負載不均衡問題,對計算任務并行劃分方法進行了優化和完善,有效改善了程序負載均衡性,大幅提高了水聲環境特征參數的預報能力。

2 并行程序測試分析

海洋水聲環境特征參數的快速預報,主要基于高性能計算機和三維溫鹽流數值預報結果,結合水聲裝備的技術指標和使用要求,利用水聲環境特征參數計算模型,實現聲速剖面分類,躍層強度和深度等特征參數的快速計算,為水聲裝備的合理使用和優化設計提供水聲環境輔助決策信息。水聲環境參數的預報主要圍繞經度和緯度方向上的兩重循環開展,每一個位置點獲取相應的溫鹽流等環境數據后,利用特征參數計算模型便可以開展計算,不同循環間基本不存在數據交換,其并行處理主要針對經度和緯度方向上的兩重循環的并行劃分進行,實現過程相對簡單。本文基于MPI并行編程環境,設計開發了水聲環境特征參數并行預報程序,并對程序進行了性能分析和測試。

2.1 并行程序設計

水聲環境參數并行預報的計算流程如圖1所示。其主要計算過程如下所示:

第1步:調用MPI_INIT函數,完成MPI的初始化。

第2步:為提高并行度,將經度和緯度方向上的兩重循環改為一重循環。

第3步:利用MPI,按照均勻劃分方法,將預報區域分配至不同進程,然后各進程從數據文件中讀取相應位置的初始場數據,開始計算。上述過程實際是將預報區域按緯度由低向高均勻分區,然后分配至不同的進程進行計算。

第4步:計算完成后,調用MPI_REDUCE(),將結果收集到某個進程,并輸出,計算完成。

Figure 1 Flow chart of underwater acoustic environment parameters parallel forecasting圖1 水聲環境參數并行預報流程圖

2.2 性能分析

并行程序的性能主要受串行程序開銷、I/O開銷、進程通信開銷和任務負載均衡等幾個因素的影響[6,7],表1給出了上述4個因素對并行程序性能影響的分析。

Table 1 Performance analysis of parallel program表1 并行程序性能分析

綜上所述,該并行程序中的I/O開銷、通信開銷和負載均衡等方面可能會對程序的性能有較大影響。

2.3 結果測試與分析

本文利用海軍潛艇學院超算平臺對海洋水聲環境參數并行預報程序進行了測試,該平臺共314個計算結點,單結點配置雙路V3 CPU,24顆計算核心,內存128 GB,計算網絡為InfiniBand 交換機(56 Gb/s)。

表2給出了分別用1 200,2 400,4 800個進程執行程序時所花費的時間,圖2分別為其對應加速比。

Table 2 Computing time of parallel program表2 并行程序計算時間

Figure 2 Speedup of parallel program圖2 并行程序加速比

單純地從表2和圖2來看,其加速比基本呈線性增長,進程數為2 400時加速比甚至出現了超線性現象。為進一步優化程序的并行性能,本文分別從I/O、通信和負載均衡3個方面進行測試分析。表3給出了I/O和通信消耗時間的測試結果。

Table 3 Consumption time of I/O and communication表3 I/O和通信消耗的時間

從表3可以看出,隨著進程數量的增加,I/O和通信消耗的時間逐漸增加,特別是I/O所消耗的時間,對并行程序整體性能有一定影響,但影響有限。

為分析程序負載分配的均衡性,表4給出了上述3種情況下并行計算部分消耗的時間。

Table 4 Computing time statistics of parallel program表4 并行程序計算時間統計

從表4可以看出,該程序負載不均衡問題十分嚴重,部分進程甚至沒有分配到有效計算任務,最長計算時間均比最短計算時間高出4個以上數量級。

通過以上測試可以看出,在I/O性能、通信性能和負載分配這3個因素中,I/O性能和通信性能對該程序的并行性能影響不大,負載分配不均衡是主要影響因素。因此,并行性能的提升也應主要圍繞著并行任務的劃分進行優化和完善。

3 并行程序優化設計

由以上分析可知,水聲環境參數并行預報程序存在嚴重的負載不均衡現象,且由于采用阻塞通信方式,在很大程度上降低了通信和計算的并發性,本節將從這2個方面對程序進行優化完善。

2.2節中曾指出,由于不同緯度上陸地所占面積和海水深度存在差異,計算任務按緯度均勻劃分可能會導致負載分配不均衡問題,仿真結果也驗證了這個結論。圖3給出了預報區域不同緯度陸地點個數的分布情況。

Figure 3 Number of non-land point at different latitudes in forecast region圖3 預報區域不同緯度非陸地點個數

從圖3可以看出,隨著緯度的增加,海洋面積所占的比例呈逐漸減小趨勢,計算任務按緯度均勻分區,必然會造成有效計算任務隨進程數的增加逐漸減少,進程的計算時間也會隨進程數的增加逐漸縮短,從而導致負載分配不均衡。因此,并行任務應按照對預報區域中海洋面積進行均勻分區的原則進行劃分,將區域中有效計算任務均勻地分配至每個進程。算法主要步驟如下所示:

第1步 變量聲明:預報區域總柵格點數記為N_All、海洋柵格點數記為N_Ocean、進程數記為NP、進程號記為np、進程np分配的海洋柵格點數記為N_np。

第2步 初始場數據處理:利用水深數據對統計預報區域逐柵格點進行處理,剔除陸地柵格點,記錄海洋柵格點的總數N_Ocean,記錄下排序前后海洋柵格點的對應關系。排序后參與計算的柵格點數減少近一半,整體對內存的需求也會下降一半。因此,數據讀寫和進程間的通信時間也會有大幅下降。

第3步 if 0≤np≤NP-2:N_np=N_Ocean/NP;

第4步 ifnp=NP-1:N_np=N_Ocean-(np-1)*N_np。

表5給出了優化后程序的計算時間統計表,圖4為其對應的加速比圖。表6給出了3種情況下計算時間統計分析情況。

Table 5 Computing time of parallel program after optimization表5 優化后并行程序計算時間

Figure 4 Speedup of parallel program after optimization圖4 優化后并行程序加速比

Table 6 Computing time statistics of parallel program after optimization

從表5、表6和圖4可以看出,優化后并行程序計算性能有了明顯提升,計算時間整體下降約20%,其加速比基本呈線性增長,各進程計算時間的均方差下降近1個數量級,時間的離散程度有了明顯改善,負載分配不均衡問題得到了很大的改善。

為進一步分析程序負載分配情況,對3種情況下進程計算時間進行了分析,圖5~圖7為計算時間的散點分布情況。

Figure 5 Computing time distribution of 1 200 processes圖5 1 200個進程計算時間分布

Figure 6 Computing time distribution of 2 400 processes圖6 2 400個進程計算時間分布

Figure 7 Computing time distribution of 4 800 processes圖7 4 800個進程計算時間分布

從圖5~圖7可以看出,3種情況下約2/3進程計算時間曲線基本呈水平分布,后1/3進程計算時間仍有明顯的變化,負載不均問題仍然比較突出。

為找到造成上述現象的原因,本文對計算任務在進程的分布情況進行進一步分析。按照上面的任務劃分方法,后1/3的進程分配到的計算區域為整個預報區域中海洋面積的后1/3,約為北緯30°以北區域(見圖3),通過對水深數據統計發現該區域平均水深較深(見圖8),約為其他海區水深的2倍,且水深變化劇烈。水聲環境特征參數的計算過程中會大量地調用水聲傳播模型,而水聲傳播模型的計算量與水深有關,水深越大,水聲傳播模型的計算量就越大。因此,在分配同樣數量海洋柵格點的情況下,后1/3進程的計算時間要更長,從而造成負載不均衡。

Figure 8 Average water depth at different latitudes in forecast region圖8 預報區域不同緯度平均水深深度分布

鑒于此,為縮短后1/3進程的計算時間,盡可能達到負載均衡,本文對任務并行劃分步驟的第3、4步進行了調整,具體步驟如下所示:

(1)np<2*NP/3:

N_np=f(np)*(N_Ocean)*NP/3

(2)np≥2*NP/3:

其中,

通過對參數a,b進行調整,便可完成對負載分配的控制。表7給出了a=0.08,b=0.05時,并行程序的計算時間統計,圖9為其加速比圖。

Table 7 Computing time of parallel program when a=0.08,b=0.05表7 a=0.08,b=0.05時并行程序計算時間

Figure 9 Speedup of parallel program when a=0.08,b=0.05圖9 a=0.08,b=0.05時并行程序加速比

從表7和圖9可以看出,并行程序計算性能有了進一步的提升,其計算時間較首次優化縮短了約50%,其加速比基本呈線性增長。表8是3種情況下計算時間統計分析表。從表8中可以看出,進一步優化后計算時間的離散程度進一步減小,負載均衡性得到了進一步提升。

圖10~圖12為計算時間散點分布情況圖,從圖中也可以看到,采用上述優化方法后,各進程計算時間基本呈水平分布,計算時間大幅縮短,負載不均衡問題得到了較好的解決。

Table 8 Computing time statistics of parallel program when a=0.08,b=0.05表8 a=0.08,b=0.05時并行程序計算時間統計

Figure 10 Computing time distribution of 1 200 processes when a=0.08,b=0.05圖10 a=0.08,b=0.05時1 200個進程計算時間分布

Figure 11 Computing time distribution of 2 400 processes when a=0.08,b=0.05圖11 a=0.08,b=0.05時2 400個進程計算時間分布

Figure 12 Computing time distribution of 4 800 processes when a=0.08,b=0.05圖12 a=0.08,b=0.05時4 800個進程計算時間分布圖

4 結束語

并行程序開發和性能優化是一項非常復雜的工作,需綜合考慮高性能計算機體系結構、編程環境、應用問題和開發人員等多種因素的影響,詳細分析算法的I/O性能、通信性能和任務劃分等對性能的影響,找到影響性能提升的瓶頸,有針對性地開展優化。優化過程中既要對算法的整體結構進行粗粒度的完善,又要針對影響性能的具體問題進行細粒度優化,有時甚至需要細化到某一個具體進程,往往需要多次迭代才能獲得一個較好的結果。本文基于MPI實現了水聲環境特征參數的并行預報,從I/O性能、通信性能和并行任務劃分方法等方面對并行程序的性能進行了分析和優化。針對并行程序負載不均衡問題,采用按有效計算任務進行均勻劃分的原則,綜合考慮海洋柵格點數和水深對計算量的影響,對并行任務的劃分方法進行優化和完善,有效提高了負載均衡性,大幅提高了水聲環境特征參數數值預報能力。本文工作對大規模、長時間序列、數據耦合度低的應用問題并行程序設計和優化具有一定的參考價值。

猜你喜歡
進程優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
基于低碳物流的公路運輸優化
現代企業(2015年2期)2015-02-28 18:45:09
我國高等教育改革進程與反思
教育與職業(2014年7期)2014-01-21 02:35:04
Linux僵死進程的產生與避免
男女平等進程中出現的新矛盾和新問題
主站蜘蛛池模板: 2022精品国偷自产免费观看| 在线观看无码av免费不卡网站 | 亚洲成在人线av品善网好看| 亚洲精品桃花岛av在线| 久久这里只有精品国产99| 国产视频自拍一区| 亚洲va在线观看| 亚洲va欧美va国产综合下载| 国产va欧美va在线观看| 国产在线第二页| 欧美日韩在线第一页| 久一在线视频| 成人亚洲视频| www.亚洲一区二区三区| 另类欧美日韩| 欧美亚洲一区二区三区在线| 国产午夜一级毛片| 国产好痛疼轻点好爽的视频| 久久综合成人| 手机在线免费不卡一区二| 亚洲男人天堂2018| 真人高潮娇喘嗯啊在线观看| 国产一级α片| 精品人妻无码区在线视频| 99re热精品视频国产免费| 亚洲色图欧美视频| 国产原创演绎剧情有字幕的| a级毛片毛片免费观看久潮| 一级毛片基地| 精品国产免费观看| 国产精品午夜电影| 伦精品一区二区三区视频| 国产男女免费视频| 99视频精品在线观看| 亚洲天堂成人在线观看| 狠狠ⅴ日韩v欧美v天堂| 国产91九色在线播放| 亚洲毛片一级带毛片基地| 四虎影视无码永久免费观看| 欧美日韩在线第一页| 日本午夜影院| 亚洲VA中文字幕| 国产成人亚洲综合a∨婷婷| 五月婷婷导航| 久久窝窝国产精品午夜看片| 一区二区三区四区在线| 日韩欧美中文字幕在线精品| 久久鸭综合久久国产| 国产女同自拍视频| 狠狠色成人综合首页| 国产青青操| 欧美精品导航| 国产日韩欧美在线视频免费观看| 国产毛片高清一级国语| 国产91小视频在线观看| 19国产精品麻豆免费观看| 中文字幕资源站| 国产午夜精品一区二区三| 四虎免费视频网站| 在线播放91| 国产亚洲精品无码专| 亚洲精品在线影院| 国产一在线观看| 欧美另类视频一区二区三区| 高潮爽到爆的喷水女主播视频| 国产精品无码作爱| 亚洲午夜国产精品无卡| 在线播放精品一区二区啪视频| 欧洲免费精品视频在线| 人人看人人鲁狠狠高清| 老司机午夜精品视频你懂的| 日韩精品毛片人妻AV不卡| 极品国产在线| 欧美视频在线观看第一页| 亚洲第一香蕉视频| 中字无码av在线电影| 制服丝袜无码每日更新| 好紧太爽了视频免费无码| 凹凸精品免费精品视频| 亚欧美国产综合| 四虎影视永久在线精品| 自偷自拍三级全三级视频 |