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

MASNUM 海浪模式的代碼現代化優化

2017-11-14 07:48:26楊曉丹宋振亞劉海行尹訓強
海洋科學進展 2017年4期
關鍵詞:優化

楊曉丹,宋振亞,周 姍,劉海行,尹訓強

(1.中國海洋大學海洋與大氣學院,山東青島266010;2.青島海洋科學與技術國家實驗室區域海洋動力學與數值模擬功能實驗室,山東青島266237;3.國家海洋局第一海洋研究所,山東青島266061;4.英特爾亞太研發有限公司,上海200241)

MASNUM 海浪模式的代碼現代化優化

楊曉丹1,2,3,宋振亞2,3*,周 姍4,劉海行2,3,尹訓強2,3

(1.中國海洋大學海洋與大氣學院,山東青島266010;2.青島海洋科學與技術國家實驗室區域海洋動力學與數值模擬功能實驗室,山東青島266237;3.國家海洋局第一海洋研究所,山東青島266061;4.英特爾亞太研發有限公司,上海200241)

海洋數值模式當前已經成為海洋研究和預測的核心工具,其高分辨率。多物理過程的發展趨勢對數值模式計算速度也提出了越來越高的要求。為了使得海洋數值模式更好的適應計算機基礎架構,充分發揮現代化計算機體系的計算特點,提高計算效率,本文提出了一種簡單易行且有效的代碼現代化優化方案,并以MASNUM海浪模式為例進行了測試。首先利用診斷工具Intel Vtune Amplifier XE和Intel Trace Analyzer Collector,對模式的性能和負載均衡性進行了分析;之后,針對熱點函數,在單節點上制定了4個優化步驟,包括編譯器選項優化,串行和標量優化,向量化和Open MP并行優化。結果表明,經過優化后,單節點內模式的計算速度可以提高1.95倍,多節點的模式強擴展性呈線性。這表明本文提出的代碼現代化方案是一種行之有效的優化方法。

Intel分析工具;代碼現代化優化;海洋數值模式;海浪模式;高性能計算

海洋數值模擬是基于一定的物理定律,以電子計算機為手段,通過數值計算對特定的海洋中物理或者工程問題進行研究的方法。海洋數值模擬的出現使得海洋科學成為一個可重復、可實驗的科學。自20世紀70年代Manabe和Bryan[1]的開創性工作以來,隨著地球科學的發展,當前海洋數值模擬正朝著更高分辨率、更多物理過程和更快的計算速度發展[2-4]。通常來說,分辨率每提高1倍,計算量將變為原來的8~10倍;同時隨著分辨率的提高,新的參數化方案也需要多次數值實驗進行調整和驗證,這都對計算速度提出了更高的要求。充分利用現有計算資源提高計算效率已經成為海洋數值模擬發展的一個必要條件。

代碼的現代化優化是提高高性能數值模擬性能的一種有效途徑。它通過對高性能應用軟件的設計進行優化,以充分利用和發揮現代計算機的高性能,如多核處理器,超線程,大緩存,高帶寬的通信結構和高速I/O功能等。代碼現代化方法包括5個部分:合理使用優化工具和庫,串行和標量優化,向量化,并行優化,從多核應用到眾核。這些優化過程相互影響,共同提高應用程序的性能[5]。

MASNUM海浪模式是20世紀90年代初海洋環境科學與數值模擬國家海洋局重點實驗室與國際同步自主發展的第三代海浪數值模式。隨著高性能計算機的發展,經過二十余年,MASNUM海浪模式也已經從串行版本發展到MPI(Message Passing Interface)并行版本[6-7],尤其最近發展的基于非規則類矩形網格剖分方案的高效并行版本,具有良好的擴展性和負載均衡性[8]。然而當前MASNUM海浪模式的性能提高都是基于并行層面,在模式編程中未充分考慮代碼的現代化,如變量是否存在重復計算、多重循環的嵌套順序等。以MASNUM海浪模式作為例子,研究如何使用代碼現代化方法提高海洋數值模式的計算性能,非常具有代表性和必要性。

為了充分利用和發揮現代高性能計算機的性能,進一步促進海洋數值模擬的發展,本文嘗試以MASNUM海浪模式為例,提出了海洋數值模式代碼現代化優化的方案,并在此基礎上對代碼進行現代化優化,為今后海洋環境數值模擬的研究和發展提供參考和基礎。

1 模式代碼現代化優化方案

為了充分提高代碼現代化優化的效果,我們設計了數值模式代碼現代化優化的策略(圖1)。首先,使用Intel分析工具對數值模式的性能以及負載均衡性進行分析;其次,針對模式存在的問題,在編譯選項優化、串行和標量優化、向量化優化和并行優化四個層面上制定優化策略,以提高模式在單節點的性能;最后,將優化后的模式從單節點擴展到多節點,測試和優化其擴展性。通過以上3個步驟的反復,最大限度地達到代碼現代化優化的效果。具體如圖1所示。

圖1 數值模式代碼現代化優化策略Fig.1 Strategy for code optimization of numerical model

1.1 性能分析

為了使得模式的優化更有針對性,首先采用Intel分析工具對模式的計算和并行性能進行分析,主要包括熱點函數分析和負載均衡分析。利用Intel Vtune Amplifier XE可以得到每個函數的計算時間,根據計算時間可以定位出熱點函數(模式中耗時最長的函數),之后對這個熱點函數進行重點優化。利用Intel Trace Analyzer and Collector(ITAC)可以通過可視化界面查看程序MPI的并行計算和不同進程間的通信情況。若模式負載不均衡,則可以通過更改模式并行方式或重新分配每個進程的任務,使其實現負載均衡。

1.2 單節點代碼現代化優化策略

在性能分析的基礎上,在編譯器選項、串行和標量、向量化和并行優化四個層面對模式在單節點內進行優化。

1.2.1 編譯器選項

編譯器提供了不同編譯器選項,選用合適的編譯選項能夠有效提高模式計算性能。在選擇編譯選項時,為了最大限度地發揮處理器硬件的優勢,首先應該保證指令由處理器所支持的最高指令集生成,然后在此基礎上再根據程序和系統特點選用其他的編譯選項。

1.2.2 串行和標量優化

在對模式進行向量化和并行化優化等進一步優化前,應該確保代碼使用最少的計算量和合適的精度獲得正確的結果,這一步的優化稱為串行和標量優化。減少重復性計算是其中一種優化方法。重復計算可以從循環中移出,然后將計算的結果存儲到臨時的常數或矩陣中。另外,優化方法還包括選擇適當的浮點精度,避免或減少條件分支等,這需要根據代碼存在的問題進行優化。

1.2.3 向量化

向量化計算是一種特殊的并行計算的方式,它可以在同一時間執行多次操作,通常是對不同的數據執行同樣的一個或一批指令,或者說把指令應用于一個數組/向量。向量化的處理方式是現代計算機的一個特點,使用向量化能夠有效提高應用軟件的計算性能,當前無論硬件還是軟件上,都提供了向量化的支持。在使用編譯器編譯時,通常默認優化選項中都包括了自動向量化的功能,即若代碼沒有違反向量化的規則,那么它將被自動向量化。但自動向量化要求較為嚴格,如循環中有數據依賴、循環對內存訪問不連續等情況時,就會無法自動向量化,此時需要對代碼進行分析和修改。

1.2.4 MPI/Open MP并行化

當前MPI和Open MP混合并行方法已經在多個海洋和大氣環流模式中得到了應用[9-11]。Open MP可以實現共享內存層面的任務并行,它是一種簡單有效的并行方式[13-14]。在使用MPI并行時,隨著模式進程數的增加,每個分區之間的數據交換量成倍增加,而使用MPI和Open MP混合并行方法,可以根據實際需要分別定義MPI進程數和每個MPI進程使用的Open MP線程數。這種混合并行方法通過減少進程數,可以減小進程間通信開銷,同時打開超線程又能充分利用計算資源,使得并行結構更加合理[15],有效提高計算效率。對于多節點的集群來說,MPI和Open MP的組合提供了一個有效的并行策略。

2 實驗設計

2.1 模式簡介

MASNUM海浪模式是基于Yuan等[16]建立的LAGFD-WAM區域海浪模式,后由楊永增等[18]發展成球坐標系下的全球海浪波數譜模式。它在數值計算上采用了復雜特征線嵌入計算格式,該方式考慮了波能包沿特征線變化的傳播特征,其物理意義更為合理,并能夠最大限度的放寬積分時間步長的限制。在物理空間和波數空間上,網格點的分布分別采用了與經緯度線平行的梯形格點分布和基于極坐標的網格。MASNUM海浪模式波數譜計算中主要包含傳播函數(propagate)和源函數(implsch)兩部分。在源函數(implsch)中,水平相鄰點之間無數據交換,只在波數空間上進行計算,而在傳播函數(propagate)中,計算與相鄰點相關,需進行數據之間的交換。本研究所使用的MASNUM海浪模式版本是由趙偉等[8]發展的并行版本,該模式版本是基于Fortran90語言編寫,只使用了MPI并行方法,地理空間采用非規則類矩形網格劃分,保證了各分區計算量達到近絕對均衡,為了更方便的進行進程間數據交換,將兩維的地理空間分布轉化為一維序列。

2.2 測試環境及實驗設置

實驗測試環境見表1。測試平臺共有7個節點,每個節點具有2顆18核心的Intel Xeon E5 2699 v3處理器,一個節點內具有36個物理核心和72個邏輯核心,節點間通過InfiniBand QDR進行互聯。本研究中MASNUM海浪模式的空間分辨率為0.2°×0.2°(1 800×701網格數),波空間中的波數和波向分別為25和12。為了保證模式計算時間不少于5 min,在單節點內測試時,模式積分步數為240個時間步長;在擴展性測試時,模式積分步數為1 680個時間步長。需要說明的一點,為了減小I/O對擴展性的影響,本研究中的測試是針對模式計算性能的無I/O測試,文中加速性能分析時的測試時間為整個模式運行的墻鐘時間。

表1 測試環境Table 1 Testing environment

3 MASNUM代碼現代化優化

3.1 性能分析

3.1.1 負載均衡分析

首先,使用ITAC進行了MASNUM海浪模式MPI并行的負載均衡分析。從結果來看,本研究中使用的MASNUM海浪模式版本在空間上采用非規則類矩形網格剖分方法,使得該模式在每個進程分配的計算任務幾乎相同,基本達到了負載平衡(圖2),這也與趙偉等[8]的結論相一致。因此,下面的優化將主要針對Intel VTune檢測出的熱點函數進行優化,提高其計算效率,減少其計算時間。

圖2 MASNUM海浪模式負載均衡性(單節點36個進程)Fig.2 Load balance of MASNUM wave model(36 processes on a single node)

3.1.2 熱點函數分析

其次,采用Intel VTune進行了MASNUM海浪模式熱點函數的分析。根據Intel VTune統計得到的模式中每個函數的計算時間(圖3),可以很容易地找到耗時最長的熱點函數為海浪模式的源函數部分(implsch),因此本研究將重點對此函數進行優化。

3.2 單節點代碼現代化優化

為了做到優化的準確高效,需要首先分析熱點函數的特征。在本研究中,熱點函數implsch中,多個表達式在除法運算上耗時較長;在循環內存在重復計算;循環未全部成功自動向量化;在并行方面,模式不包括Open MP并行,這可能會影響模式在集群上的擴展性。因此,在制定單節點代碼現代化優化策略時,主要包括選擇合適的編譯器選項、減少重復性計算、改進代碼結構提高向量化比例和效率以及Open MP并行化。

圖3 單節點測試實驗中MASNUM模式優化前(紅)、后(藍)函數的運算時間Fig.3 Comparison of computation time consumed by different functions before(red)and after(blue)the MASNUM model is optimized on a single node

3.2.1 編譯器選項優化

本研究所使用的處理器最高支持AVX 2指令集,因此為了最大限度地發揮處理器硬件的優勢,首先選取了“-xCORE-AVX2”作為編譯優化選項;同時為了優化熱點函數內的浮點數除法運算,增添了編譯優化選項“-noprec-div”進行優化。在添加此編譯器選項后,相對于原始性能的加速比可以達到1.59。此外,比較了使用-O3和-O2優化選項后模式的計算速度,發現二者基本一致。因此最終選用了編譯器默認的-O2優化選項。

3.2.2 串行和標量優化

以下是熱點函數中重復性計算優化的例子:

在此循環(圖4a黃色)中,costh和sinth不隨著idx的變化而變化。因此對它們的計算可以從循環中移出,計算的結果被保存在兩個新的數組precos和presin中。然后再將這兩個數組的結果傳回到循環中進行計算(圖4b黃色)。

串行和標量優化后,減少重復計算使得模式計算效率比以前提高了6%。當我們檢查由Intel Vtune生成的函數時間分布(圖3)時,發現三角函數sin和cos的時間成本降低了93%。

圖4 重復性計算優化前后對比Fig.4 Comparison of codes before and after the repetitive computation is reduced

3.2.3 向量化

向量化在同一時間可以將單指令應用在多個數據上,它對提高代碼計算效率起著重要的作用。由于熱點函數的物理過程是非常復雜的,因此我們不能完全消除方程間的依賴關系。圖5a是循環沒有向量化成功的例子,其原因是兩個紅色表達式之間存在可能依賴關系。

圖5 向量化優化前(a)后(b,c)對比Fig.5 Comparison of codes before(a)and after(b,c)optimization of vectorization

在k方向的循環,方程之間沒有依賴性,然而,向量化只能對最內層循環起作用。為了使向量化成功,我們交換了mr,j,k三重循環的循環順序(圖5a和5b黃色)。此外,如果內存訪問不連續時,數據的讀取耗時較長,因此向量化一般情況無法實現或者效果不好。在FORTRAN語言中,數組元素的讀取順序是列優先。由于數組wp的訪問已經是連續的,因此可以進行有效的向量化。

通過查看向量化報告,我們發現在不同的行,se變量互相存在依賴性,因為通過計算得出的j11和j12可能是同一個值。一種解決方案是將具有依賴性的部分從循環中移出。我們通過將內循環拆分成兩部分后(圖5b和5c紅色),發現不存在依賴性的部分可以成功地向量化,從優化報告中也可以看出這一點。

將熱點函數中可以向量化的部分成功向量化后,模式顯示加速比為1.07倍。如果向量化指令變得更寬,比如最新的Intel Xeon Phi支持512位SIMD,向量化后模式性能提升的效果可能會更明顯。

3.2.4 Open MP并行

MASNUM海浪模式中熱點函數的最外層循環是空間維度的循環,本研究中使用的空間維度已由二維變成一維,使其外層循環次數可以達到25 662,因此Open MP對其性能提高應是非常有效的。圖6為MASNUM海浪模式MPI和Open MP的擴展性。從中可以看出,在單節點內MPI的擴展性非常好,加速比從2到36個進程幾乎呈線性變化(圖6紅線)。Open MP的擴展性,當線程數小于18時也較好,之后存在一定的下降(圖6藍線)。通過測試發現,當進程數乘以線程數為72,即用滿單節點內的邏輯核時,計算效率最高。使用36個進程并打開Open MP超線程,使得海浪模式的性能相對純MPI 36個進程的性能可提升8%。

由于我們只在熱點函數中增加了Open MP并行,因此無法給出該模式混合并行的最佳性能。然而,僅在熱點函數中增加Open MP并行也使得模式性能得到了明顯的改善,這說明了Open MP是簡單且非常有效的并行方式。

圖6 單節點內MPI擴展性和一個進程內Open MP的擴展性Fig.6 MPI scalability on single node and Open MP scalability in one process

圖7顯示了模式在單節點每一步優化后的性能改進,除Open MP優化后使用36個進程2個線程之外,其余過程均只使用36個MPI進程。在針對熱點函數implsch進行了4個階段的優化后,加速比可以達到1.95,大大降低了整體運算時間。其中,熱點函數implsch的計算時間由219 s減少到87.86 s(圖3),加速比可達到2.49倍。需要說明的是,圖7中的加速比性能分析是基于整個模式運行的時間進行比較的,因此加速比性能(1.95倍)相對熱點函數加速性能(2.49倍)稍低。這說明Intel Vtune Amplifier對熱點函數的分析是準確的,同時我們使用的優化策略也是非常有效的。經過優化后,模式包含3種不同級別的并行化方式:向量化,Open MP和MPI,這也是現代化代碼的共同特點。

圖7 模式在單節點內的優化性能Fig.7 Performance of the optimized model on single node

3.3 多節點擴展性

圖8給出了海浪模式優化前后在多個節點上的加速比,與單節點一致,除Open MP優化后每個節點使用36個進程2個線程之外,其余過程均只使用36個MPI進程。從圖中可以看出,模式加速比隨著核心數目的增加,呈線性增長趨勢。252個進程相對于6個進程的理論加速比為42,在經過原始性能優化、編譯器選項優化、串行和常量優化、向量化優化以及Open MP優化后,252個進程相對于6個進程實際加速比分別可以達到31.9,29.3,29.3,28.2和29.8。在對模式進行了優化后,加速比略有下降,原因可能是由于所使用的進程數并未減少,進程間數據交換的耗時是固定的,因此計算時間所占的比例相對于各自原始代碼偏少。從而代碼優化的越好,其計算時間所占的比例越少,而隨著進程數的增加,數據交換所占的時間越多,使得模式的加速比相對于原始性能略有降低。

圖8 模式優化前后在多節點上的擴展性Fig.8 Scalability of the numerical model before and after optimization on multi nodes

增加Open MP并行后,通過測試,發現當每個節點內MPI進程數為36,Open MP線程數為2時,模式性能達到最優。通過模式原始性能可以看出,由于測試規模較小,模式的擴展性并未遇到瓶頸,因此,超線程對擴展性的提高作用未能發揮出來。又由于每個節點內MPI的擴展性好于Open MP(圖6),所以當MPI的進程數達到36時模式整體性能最好。當測試規模達到十萬甚至百萬核心時,模式性能會存在一定的下降[6],此時利用MPI和Open MP混合并行方式,通過減少進程數,增加線程數,將有利于提高模式的擴展性,這將在今后的工作中進行測試和分析。

4 結 語

在本文中,首先提出了海洋數值模式代碼現代化優化的策略和方案,然后以MASNUM海浪模式為例,對該模式進行了代碼現代化優化。結果表明,通過對熱點函數源函數部分(implsch)不同層面的優化,能夠大幅提高MASNUM海浪模式的計算效率。編譯器選項可使得模式計算速度提高近1.59倍;串行和標量優化,如減少重復計算,使得計算性能提高了近6%;深入的向量化優化,使其滿足Intel編譯器自動向量化的規則,模式的計算速度可提高1.07倍;基于Open MP并行的改進,使得模式性能提高約8%。經過以上4個步驟的優化,相對于原模式,在單節點內可以提高計算性能提高1.95倍,節省了近50%的計算資源,同時模式在多個節點內的擴展性也呈線性。值得注意的是,隨著對源函數優化的深入和節點數的增多,模式的熱點函數也許會發生變化,在進一步大規模并行時需要按照優化步驟重新進行分析和優化。同時,研究結果也表明本研究提出的代碼現代化方案是行之有效的,這對其它海洋數值模式的計算性能優化具有非常好的借鑒作用。

在MASNUM海浪模式代碼現代化優化實驗中,由于測試平臺的限制,只進行了MPI/Open MP混合并行方案的并行優化。需要說明的是本研究提出的代碼現代化方案應該也適用于當前的異構集群,如GPU集群或眾核集群等。從文中分析可以看到,源函數是計算量最大的熱點函數,而其在計算中無相鄰數據交換的特點非常適合GPU或者MIC等協處理器。因此,下一步還將基于Intel Xeon Phi的架構,將MASNUM海浪模式的熱點函數移植到協處理器上提高計算效率,進一步檢驗本文提出的代碼現代化優化方案。

此外,當前針對各種計算程序所做的優化大多都是圍繞內存訪問效率來進行的,本文提出的代碼現代化優化方案是一種相對簡單、易行的優化策略,較為容易實現,總體的性價比較高。也正是由于其相對簡單易行,因此經過優化后內存訪問效率還有可提高的空間,如修改模式計算流程和計算負載均衡控制,使其可以充分利用進程與超線程間的關系,但這些修改會較為復雜,對于普通模式研發人員來說,會較難實現。因此,本文提出的優化方案和實驗未涉及這些深入的研究。

[1] MANABE S,BRYAN K.Climate Calculation with a combined ocean-atmosphere model[J].Journal of Atmospheric Sciences,1969,26(4):786-789.

[2] LU J,LIU X H,TENG Y,et al.Theoretical basics of a systematic ecology-sediment-environment dynamical numerical model for coastal areas[J].Advance in Marine Science,2015,33(4):471-483.蘆靜,劉學海,滕涌,等.近海系統化生態-沉積-環境動力學數值模式——理論基礎[J].海洋科學進展,2015,33(4):471-483.

[3] GAO X M,WEI Z X,LV X Q,et al.Accuracy assessment of global ocean tide models in the South China Sea[J].Advance in Marine Science,2014,32(1):1-14.高秀敏,魏澤勛,呂咸青,等.全球大洋潮汐模式在南海的準確度評估[J].海洋科學進展,2014,32(1):1-14.

[4] CUBASCH U,WUEBBLES D,CHEN D,et al.Introduction.In:climate change 2013:in the physical science basis,working group I contribution to the fifth assessment report of the intergovernmental panel on climate change,WMO/UNEP[M].United Kingdom and New York:Cambridge University Press,2013.

[5] PEARCE M.What is code modernization?[EB/OL].(2015-07)[2016-09-01]https:∥software.intel.com/en-us/articles/what-is-codemodernization.

[6] WANG G S,QIAO F L,YANG Y Z.Study on parallel algorithm for m PI-based LAGFD-WAM numerical wave model[J].Advance in Marine Science,2007,25(4):401-407.王關鎖,喬方利,楊永增.基于MPI的LAGFD-WAM海浪數值模式并行算法研究[J].海洋科學進展,2007,25(4):401-407.

[7] ZHANG Z Y,ZHOU Y F,LIU L,et al.Performance characterization and efficient parallelization of MASNUM Wave Model[J].Journal of Computer Research and Development,2015,52(4):851-860.張志遠,周宇峰,劉利,等.MASNUM海浪模式的性能特點分析與并行優化[J].計算機研究與發展,2015,52(4):851-860.

[8] ZHAO W,SONG Z Y,QIAO F L,et al.High efficient parallel numerical surface wave model based on an irregular quasi-rectangular domain decomposition scheme[J].Science China:Earth Sciences,2014,44(5):1049-1058.趙偉,宋振亞,喬方利,等.基于非規則類矩形剖分的高效并行海浪數值模式[J].中國科學:地球科學,2014,44(5):1049-1058.

[9] SMITH R,DAKOWICZ J,MALONE R.Parallel ocean general circulation modeling[J].Physica D-nonlinear Phenomena,1992,60:38-61.

[10] STEVENS B,GIORGETTA M,ESCH M,et al.Atmospheric component of the MPI-M Earth System Model:ECHAM6[J].Journal of Advances in Modeling Earth Systems,2013,5(2):146-172.

[11] SANNINO G,ARTALE V,LANUCARA P.A hybrid Open MP-MPI parallelization of the Princeton Ocean Model[EB/OL].[2016-09-01]http:∥www.utmea.enea.it/staff/sannino/Papers/ParCo/ParCoPOM.pdf.

[12] COLLINS W D,RASCH P J,BOVILLE B A,et al.Description of the NCAR community atmosphere model(CAM 3.0)[J].National Center for Atmospheric Research Ncar Koha Opencat,2004:tn-464+str(TN-485+STR).

[13] EPICOCO I,MOCAVERO S,ALOISIO G.The NEMO oceanic model:computational performance analysis and optimization[C]∥IEEE International Conference on High PERFORMANCE Computing&Communication,Canada:HPCC,2011:382-388.

[14] ZHANG X,JI Z Z,WANG B.Some study on application of Open MP in mesoscale meteorological model-MM5[J].Climatic and Environmental Research,2001,6(1):84-90.張昕,季仲貞,王斌.Open MP在MM5中尺度模式中的應用試驗[J].氣候與環境研究,2001,6(1):84-90.

[15] SU M F,EL-KADY I,BADER D A,et al.A Novel FDTD Application Featuring Open MP-MPI hybrid parallelization[EB/OL].[2016-09-01]http:∥www.cc.gatech.edu/fac/bader/papers/FDTD-ICPP2004.pdf.

[16] YUAN Y,HUA F,PAN Z,et al.LAGFD-WAM numerical wave model I.Basic physical model[J].Acta Oceanologica Sinica,1991,10(4):483-488.

[17] YANG Y Z,QIAO F L,ZHAO W,et al.MASNUM ocean wave numerical model in spherical coordinates and its application[J].Haiyang Xuebao,2005(2):1-7.楊永增,喬方利,趙偉,等.球坐標系下MASNUM海浪數值模式的建立及其應用[J].海洋學報,2005(2):1-7.

Code Modernization Optimization of MASNUM Wave Model

YANG Xiao-dan1,2,3,SONG Zhen-ya2,3,ZHOU Shan4,LIU Hai-xing2,3,YIN Xun-qiang2,3
(1.College of Oceanic and Atmospheric Sciences,Ocean University of China,Qingdao 266010,China;2.Laboratory for Regional Oceanography and Numerical Modeling,Qingdao National Laboratory for Marine Science and Technology,Qingdao 266237,China;3.The First Institute of Oceanography,SOA,Qingdao 266061,China;4.Asia-Pacific Research&Development Ltd,Intel,Shanghai 200241,China)

Numerical model has become one of key tools for ocean research and prediction,and the demand for increasing the computational efficiency is now necessary and urgent.In order to make full use of the modern computer architecture and improve ocean model's computational efficiency,a code optimization scheme,which is demonstrated by using MASNUM wave model as an example,was proposed in this paper.Firstly,Intel Vtune Amplifier XE and Intel Trace Analyzer Collector were used to evaluate the performance and load balancing of the MASNUM wave model.Then four steps of optimization,which are compiler options,serial and scalar optimization,vectorization,and MPI/Open MP parallelization,are designed for hotspot function located by Intel Vtune Amplifier XE.The result shows that after optimization,the computational speed can be improved up to 1.95 times in a single node,and strong-scalability of the model is almost linear when computation is extended to multi nodes,suggesting that our code optimization is very effective.

Intel analysis tools;code optimization;oceanic numerical model;surface wave model;high performance computation

October 17,2016

P73

A

1671-6647(2017)04-0473-10

10.3969/j.issn.1671-6647.2017.04.004

2016-10-17

國家重點研發計劃——大規模多模式多過程地球系統模式耦合平臺研發(2016YFA0602200);中央級公益性科研院所基本科研業務費專項——束星北青年學者基金(2016S03);青島海洋科學與技術國家實驗室鰲山人才計劃——優秀青年學者專項;國家自然科學基金委員會-山東省人民政府聯合資助海洋科學研究中心項目——海洋環境動力學和數值模擬(U1406404);全球變化與海氣相互作用專項——海洋動力系統可預報性研究(GASI-IPOVAI-06)

楊曉丹(1988-),女,山東聊城人,博士研究生,主要從事海-氣相互作用方面研究.E-mail:yangxiaodan@fio.org.cn

*通訊作者:宋振亞(1982-),男,山東聊城人,副研究員,博士,主要從事海氣耦合方面研究.E-mail:songroy@fio.org.cn

(李 燕 編輯)

猜你喜歡
優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
PEMFC流道的多目標優化
能源工程(2022年1期)2022-03-29 01:06:28
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
圍繞“地、業、人”優化產業扶貧
今日農業(2020年16期)2020-12-14 15:04:59
事業單位中固定資產會計處理的優化
消費導刊(2018年8期)2018-05-25 13:20:08
4K HDR性能大幅度優化 JVC DLA-X8 18 BC
幾種常見的負載均衡算法的優化
電子制作(2017年20期)2017-04-26 06:57:45
主站蜘蛛池模板: 国产乱人免费视频| 91口爆吞精国产对白第三集| 99热这里只有免费国产精品 | 亚洲丝袜第一页| 黑色丝袜高跟国产在线91| 亚洲综合婷婷激情| 国产欧美日韩另类| 毛片免费视频| 99ri国产在线| 99久久婷婷国产综合精| 久久香蕉国产线| 久久一色本道亚洲| 久久久噜噜噜久久中文字幕色伊伊| 欧美成人怡春院在线激情| 欧美日本激情| 91在线激情在线观看| 又爽又大又黄a级毛片在线视频| 国产精品无码AⅤ在线观看播放| 国产精品亚洲一区二区三区z | 国产欧美日韩另类精彩视频| a毛片在线免费观看| 波多野结衣一区二区三区88| 国产乱人免费视频| 国产美女精品一区二区| 欧美曰批视频免费播放免费| 欧美精品在线视频观看| 四虎AV麻豆| 国产美女丝袜高潮| 免费看美女自慰的网站| 免费无遮挡AV| 香蕉综合在线视频91| 国内精品免费| 婷婷色一二三区波多野衣| 好吊妞欧美视频免费| 欧美色香蕉| 亚洲一区二区三区中文字幕5566| 国产精品久久久久久久久久98| 一级成人a做片免费| 亚洲国模精品一区| 欧美一区日韩一区中文字幕页| 91小视频在线| 色网在线视频| 农村乱人伦一区二区| 波多野结衣视频网站| 漂亮人妻被中出中文字幕久久 | 欧美精品三级在线| 欧美福利在线播放| 中文字幕调教一区二区视频| 国产成人免费手机在线观看视频| 精品小视频在线观看| 四虎精品国产AV二区| 欧美翘臀一区二区三区| 国产日韩精品欧美一区喷| 亚洲一区二区约美女探花| 国产一区二区三区在线观看视频| 亚洲资源在线视频| 精品久久久久成人码免费动漫| 国产精品55夜色66夜色| 人人91人人澡人人妻人人爽| 国产精品亚洲欧美日韩久久| 女人18一级毛片免费观看| 九九热精品视频在线| 久久99热这里只有精品免费看| www.99精品视频在线播放| 国产天天色| 亚欧美国产综合| 天天色综网| 国产综合日韩另类一区二区| 国产不卡一级毛片视频| 国产午夜在线观看视频| 精品无码一区二区三区电影| 国产精品真实对白精彩久久| 久久香蕉欧美精品| AV不卡国产在线观看| 国产男人天堂| 欧美日本中文| 国产日韩久久久久无码精品| 67194亚洲无码| 亚洲天堂.com| 在线va视频| 国产丰满大乳无码免费播放| 福利在线一区|