• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    MASNUM 海浪模式的代碼現(xiàn)代化優(yōu)化

    2017-11-14 07:48:26楊曉丹宋振亞劉海行尹訓(xùn)強(qiáng)
    海洋科學(xué)進(jìn)展 2017年4期
    關(guān)鍵詞:優(yōu)化

    楊曉丹,宋振亞,周 姍,劉海行,尹訓(xùn)強(qiáng)

    (1.中國(guó)海洋大學(xué)海洋與大氣學(xué)院,山東青島266010;2.青島海洋科學(xué)與技術(shù)國(guó)家實(shí)驗(yàn)室區(qū)域海洋動(dòng)力學(xué)與數(shù)值模擬功能實(shí)驗(yàn)室,山東青島266237;3.國(guó)家海洋局第一海洋研究所,山東青島266061;4.英特爾亞太研發(fā)有限公司,上海200241)

    MASNUM 海浪模式的代碼現(xiàn)代化優(yōu)化

    楊曉丹1,2,3,宋振亞2,3*,周 姍4,劉海行2,3,尹訓(xùn)強(qiáng)2,3

    (1.中國(guó)海洋大學(xué)海洋與大氣學(xué)院,山東青島266010;2.青島海洋科學(xué)與技術(shù)國(guó)家實(shí)驗(yàn)室區(qū)域海洋動(dòng)力學(xué)與數(shù)值模擬功能實(shí)驗(yàn)室,山東青島266237;3.國(guó)家海洋局第一海洋研究所,山東青島266061;4.英特爾亞太研發(fā)有限公司,上海200241)

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

    Intel分析工具;代碼現(xiàn)代化優(yōu)化;海洋數(shù)值模式;海浪模式;高性能計(jì)算

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

    代碼的現(xiàn)代化優(yōu)化是提高高性能數(shù)值模擬性能的一種有效途徑。它通過對(duì)高性能應(yīng)用軟件的設(shè)計(jì)進(jìn)行優(yōu)化,以充分利用和發(fā)揮現(xiàn)代計(jì)算機(jī)的高性能,如多核處理器,超線程,大緩存,高帶寬的通信結(jié)構(gòu)和高速I/O功能等。代碼現(xiàn)代化方法包括5個(gè)部分:合理使用優(yōu)化工具和庫(kù),串行和標(biāo)量?jī)?yōu)化,向量化,并行優(yōu)化,從多核應(yīng)用到眾核。這些優(yōu)化過程相互影響,共同提高應(yīng)用程序的性能[5]。

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

    為了充分利用和發(fā)揮現(xiàn)代高性能計(jì)算機(jī)的性能,進(jìn)一步促進(jìn)海洋數(shù)值模擬的發(fā)展,本文嘗試以MASNUM海浪模式為例,提出了海洋數(shù)值模式代碼現(xiàn)代化優(yōu)化的方案,并在此基礎(chǔ)上對(duì)代碼進(jìn)行現(xiàn)代化優(yōu)化,為今后海洋環(huán)境數(shù)值模擬的研究和發(fā)展提供參考和基礎(chǔ)。

    1 模式代碼現(xiàn)代化優(yōu)化方案

    為了充分提高代碼現(xiàn)代化優(yōu)化的效果,我們?cè)O(shè)計(jì)了數(shù)值模式代碼現(xiàn)代化優(yōu)化的策略(圖1)。首先,使用Intel分析工具對(duì)數(shù)值模式的性能以及負(fù)載均衡性進(jìn)行分析;其次,針對(duì)模式存在的問題,在編譯選項(xiàng)優(yōu)化、串行和標(biāo)量?jī)?yōu)化、向量化優(yōu)化和并行優(yōu)化四個(gè)層面上制定優(yōu)化策略,以提高模式在單節(jié)點(diǎn)的性能;最后,將優(yōu)化后的模式從單節(jié)點(diǎn)擴(kuò)展到多節(jié)點(diǎn),測(cè)試和優(yōu)化其擴(kuò)展性。通過以上3個(gè)步驟的反復(fù),最大限度地達(dá)到代碼現(xiàn)代化優(yōu)化的效果。具體如圖1所示。

    圖1 數(shù)值模式代碼現(xiàn)代化優(yōu)化策略Fig.1 Strategy for code optimization of numerical model

    1.1 性能分析

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

    1.2 單節(jié)點(diǎn)代碼現(xiàn)代化優(yōu)化策略

    在性能分析的基礎(chǔ)上,在編譯器選項(xiàng)、串行和標(biāo)量、向量化和并行優(yōu)化四個(gè)層面對(duì)模式在單節(jié)點(diǎn)內(nèi)進(jìn)行優(yōu)化。

    1.2.1 編譯器選項(xiàng)

    編譯器提供了不同編譯器選項(xiàng),選用合適的編譯選項(xiàng)能夠有效提高模式計(jì)算性能。在選擇編譯選項(xiàng)時(shí),為了最大限度地發(fā)揮處理器硬件的優(yōu)勢(shì),首先應(yīng)該保證指令由處理器所支持的最高指令集生成,然后在此基礎(chǔ)上再根據(jù)程序和系統(tǒng)特點(diǎn)選用其他的編譯選項(xiàng)。

    1.2.2 串行和標(biāo)量?jī)?yōu)化

    在對(duì)模式進(jìn)行向量化和并行化優(yōu)化等進(jìn)一步優(yōu)化前,應(yīng)該確保代碼使用最少的計(jì)算量和合適的精度獲得正確的結(jié)果,這一步的優(yōu)化稱為串行和標(biāo)量?jī)?yōu)化。減少重復(fù)性計(jì)算是其中一種優(yōu)化方法。重復(fù)計(jì)算可以從循環(huán)中移出,然后將計(jì)算的結(jié)果存儲(chǔ)到臨時(shí)的常數(shù)或矩陣中。另外,優(yōu)化方法還包括選擇適當(dāng)?shù)母↑c(diǎn)精度,避免或減少條件分支等,這需要根據(jù)代碼存在的問題進(jìn)行優(yōu)化。

    1.2.3 向量化

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

    1.2.4 MPI/Open MP并行化

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

    2 實(shí)驗(yàn)設(shè)計(jì)

    2.1 模式簡(jiǎn)介

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

    2.2 測(cè)試環(huán)境及實(shí)驗(yàn)設(shè)置

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

    表1 測(cè)試環(huán)境Table 1 Testing environment

    3 MASNUM代碼現(xiàn)代化優(yōu)化

    3.1 性能分析

    3.1.1 負(fù)載均衡分析

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

    圖2 MASNUM海浪模式負(fù)載均衡性(單節(jié)點(diǎn)36個(gè)進(jìn)程)Fig.2 Load balance of MASNUM wave model(36 processes on a single node)

    3.1.2 熱點(diǎn)函數(shù)分析

    其次,采用Intel VTune進(jìn)行了MASNUM海浪模式熱點(diǎn)函數(shù)的分析。根據(jù)Intel VTune統(tǒng)計(jì)得到的模式中每個(gè)函數(shù)的計(jì)算時(shí)間(圖3),可以很容易地找到耗時(shí)最長(zhǎng)的熱點(diǎn)函數(shù)為海浪模式的源函數(shù)部分(implsch),因此本研究將重點(diǎn)對(duì)此函數(shù)進(jìn)行優(yōu)化。

    3.2 單節(jié)點(diǎn)代碼現(xiàn)代化優(yōu)化

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

    圖3 單節(jié)點(diǎn)測(cè)試實(shí)驗(yàn)中MASNUM模式優(yōu)化前(紅)、后(藍(lán))函數(shù)的運(yùn)算時(shí)間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 編譯器選項(xiàng)優(yōu)化

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

    3.2.2 串行和標(biāo)量?jī)?yōu)化

    以下是熱點(diǎn)函數(shù)中重復(fù)性計(jì)算優(yōu)化的例子:

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

    串行和標(biāo)量?jī)?yōu)化后,減少重復(fù)計(jì)算使得模式計(jì)算效率比以前提高了6%。當(dāng)我們檢查由Intel Vtune生成的函數(shù)時(shí)間分布(圖3)時(shí),發(fā)現(xiàn)三角函數(shù)sin和cos的時(shí)間成本降低了93%。

    圖4 重復(fù)性計(jì)算優(yōu)化前后對(duì)比Fig.4 Comparison of codes before and after the repetitive computation is reduced

    3.2.3 向量化

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

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

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

    通過查看向量化報(bào)告,我們發(fā)現(xiàn)在不同的行,se變量互相存在依賴性,因?yàn)橥ㄟ^計(jì)算得出的j11和j12可能是同一個(gè)值。一種解決方案是將具有依賴性的部分從循環(huán)中移出。我們通過將內(nèi)循環(huán)拆分成兩部分后(圖5b和5c紅色),發(fā)現(xiàn)不存在依賴性的部分可以成功地向量化,從優(yōu)化報(bào)告中也可以看出這一點(diǎn)。

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

    3.2.4 Open MP并行

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

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

    圖6 單節(jié)點(diǎn)內(nèi)MPI擴(kuò)展性和一個(gè)進(jìn)程內(nèi)Open MP的擴(kuò)展性Fig.6 MPI scalability on single node and Open MP scalability in one process

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

    圖7 模式在單節(jié)點(diǎn)內(nèi)的優(yōu)化性能Fig.7 Performance of the optimized model on single node

    3.3 多節(jié)點(diǎn)擴(kuò)展性

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

    圖8 模式優(yōu)化前后在多節(jié)點(diǎn)上的擴(kuò)展性Fig.8 Scalability of the numerical model before and after optimization on multi nodes

    增加Open MP并行后,通過測(cè)試,發(fā)現(xiàn)當(dāng)每個(gè)節(jié)點(diǎn)內(nèi)MPI進(jìn)程數(shù)為36,Open MP線程數(shù)為2時(shí),模式性能達(dá)到最優(yōu)。通過模式原始性能可以看出,由于測(cè)試規(guī)模較小,模式的擴(kuò)展性并未遇到瓶頸,因此,超線程對(duì)擴(kuò)展性的提高作用未能發(fā)揮出來。又由于每個(gè)節(jié)點(diǎn)內(nèi)MPI的擴(kuò)展性好于Open MP(圖6),所以當(dāng)MPI的進(jìn)程數(shù)達(dá)到36時(shí)模式整體性能最好。當(dāng)測(cè)試規(guī)模達(dá)到十萬甚至百萬核心時(shí),模式性能會(huì)存在一定的下降[6],此時(shí)利用MPI和Open MP混合并行方式,通過減少進(jìn)程數(shù),增加線程數(shù),將有利于提高模式的擴(kuò)展性,這將在今后的工作中進(jìn)行測(cè)試和分析。

    4 結(jié) 語

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

    在MASNUM海浪模式代碼現(xiàn)代化優(yōu)化實(shí)驗(yàn)中,由于測(cè)試平臺(tái)的限制,只進(jìn)行了MPI/Open MP混合并行方案的并行優(yōu)化。需要說明的是本研究提出的代碼現(xiàn)代化方案應(yīng)該也適用于當(dāng)前的異構(gòu)集群,如GPU集群或眾核集群等。從文中分析可以看到,源函數(shù)是計(jì)算量最大的熱點(diǎn)函數(shù),而其在計(jì)算中無相鄰數(shù)據(jù)交換的特點(diǎn)非常適合GPU或者M(jìn)IC等協(xié)處理器。因此,下一步還將基于Intel Xeon Phi的架構(gòu),將MASNUM海浪模式的熱點(diǎn)函數(shù)移植到協(xié)處理器上提高計(jì)算效率,進(jìn)一步檢驗(yàn)本文提出的代碼現(xiàn)代化優(yōu)化方案。

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

    [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.蘆靜,劉學(xué)海,滕涌,等.近海系統(tǒng)化生態(tài)-沉積-環(huán)境動(dòng)力學(xué)數(shù)值模式——理論基礎(chǔ)[J].海洋科學(xué)進(jìn)展,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.高秀敏,魏澤勛,呂咸青,等.全球大洋潮汐模式在南海的準(zhǔn)確度評(píng)估[J].海洋科學(xué)進(jìn)展,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.王關(guān)鎖,喬方利,楊永增.基于MPI的LAGFD-WAM海浪數(shù)值模式并行算法研究[J].海洋科學(xué)進(jìn)展,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.張志遠(yuǎn),周宇峰,劉利,等.MASNUM海浪模式的性能特點(diǎn)分析與并行優(yōu)化[J].計(jì)算機(jī)研究與發(fā)展,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.趙偉,宋振亞,喬方利,等.基于非規(guī)則類矩形剖分的高效并行海浪數(shù)值模式[J].中國(guó)科學(xué):地球科學(xué),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中尺度模式中的應(yīng)用試驗(yàn)[J].氣候與環(huán)境研究,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.楊永增,喬方利,趙偉,等.球坐標(biāo)系下MASNUM海浪數(shù)值模式的建立及其應(yīng)用[J].海洋學(xué)報(bào),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

    國(guó)家重點(diǎn)研發(fā)計(jì)劃——大規(guī)模多模式多過程地球系統(tǒng)模式耦合平臺(tái)研發(fā)(2016YFA0602200);中央級(jí)公益性科研院所基本科研業(yè)務(wù)費(fèi)專項(xiàng)——束星北青年學(xué)者基金(2016S03);青島海洋科學(xué)與技術(shù)國(guó)家實(shí)驗(yàn)室鰲山人才計(jì)劃——優(yōu)秀青年學(xué)者專項(xiàng);國(guó)家自然科學(xué)基金委員會(huì)-山東省人民政府聯(lián)合資助海洋科學(xué)研究中心項(xiàng)目——海洋環(huán)境動(dòng)力學(xué)和數(shù)值模擬(U1406404);全球變化與海氣相互作用專項(xiàng)——海洋動(dòng)力系統(tǒng)可預(yù)報(bào)性研究(GASI-IPOVAI-06)

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

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

    (李 燕 編輯)

    猜你喜歡
    優(yōu)化
    超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
    PEMFC流道的多目標(biāo)優(yōu)化
    能源工程(2022年1期)2022-03-29 01:06:28
    民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
    關(guān)于優(yōu)化消防安全告知承諾的一些思考
    一道優(yōu)化題的幾何解法
    由“形”啟“數(shù)”優(yōu)化運(yùn)算——以2021年解析幾何高考題為例
    圍繞“地、業(yè)、人”優(yōu)化產(chǎn)業(yè)扶貧
    事業(yè)單位中固定資產(chǎn)會(huì)計(jì)處理的優(yōu)化
    4K HDR性能大幅度優(yōu)化 JVC DLA-X8 18 BC
    幾種常見的負(fù)載均衡算法的優(yōu)化
    電子制作(2017年20期)2017-04-26 06:57:45
    嫁个100分男人电影在线观看| 一本色道久久久久久精品综合| 中文字幕色久视频| 丰满人妻熟妇乱又伦精品不卡| 国产av国产精品国产| 不卡av一区二区三区| 中文字幕人妻熟女乱码| av又黄又爽大尺度在线免费看| 9色porny在线观看| 在线观看舔阴道视频| 免费日韩欧美在线观看| 精品人妻1区二区| 亚洲视频免费观看视频| 露出奶头的视频| 久久久久久久久久久久大奶| 日韩大片免费观看网站| 一级毛片精品| 亚洲伊人久久精品综合| 日本五十路高清| 国产日韩欧美亚洲二区| 动漫黄色视频在线观看| 老汉色av国产亚洲站长工具| 一区二区三区乱码不卡18| 窝窝影院91人妻| 亚洲专区字幕在线| 精品少妇一区二区三区视频日本电影| 757午夜福利合集在线观看| 侵犯人妻中文字幕一二三四区| 在线观看www视频免费| 新久久久久国产一级毛片| 欧美变态另类bdsm刘玥| 亚洲,欧美精品.| 久久中文字幕一级| 亚洲天堂av无毛| 法律面前人人平等表现在哪些方面| 两个人看的免费小视频| 啦啦啦视频在线资源免费观看| 色播在线永久视频| 高清欧美精品videossex| 黄色怎么调成土黄色| 黄色丝袜av网址大全| 别揉我奶头~嗯~啊~动态视频| 亚洲精品中文字幕在线视频| 日日爽夜夜爽网站| 美女扒开内裤让男人捅视频| 国产片内射在线| 精品一区二区三区av网在线观看 | 亚洲成av片中文字幕在线观看| 亚洲第一av免费看| 天天影视国产精品| 亚洲第一欧美日韩一区二区三区 | 欧美 日韩 精品 国产| 伊人久久大香线蕉亚洲五| 欧美av亚洲av综合av国产av| 婷婷成人精品国产| 999精品在线视频| 国产真人三级小视频在线观看| 在线永久观看黄色视频| 久久99一区二区三区| 欧美人与性动交α欧美精品济南到| 国产精品亚洲av一区麻豆| 成人18禁在线播放| 一级毛片女人18水好多| 亚洲精品一二三| 99精国产麻豆久久婷婷| 欧美日韩福利视频一区二区| 国产亚洲欧美精品永久| 黄色毛片三级朝国网站| 建设人人有责人人尽责人人享有的| 精品亚洲成国产av| 中文字幕人妻丝袜一区二区| 免费人妻精品一区二区三区视频| 国产区一区二久久| 亚洲色图综合在线观看| 另类精品久久| 亚洲成人国产一区在线观看| 麻豆av在线久日| 人妻久久中文字幕网| 黄色毛片三级朝国网站| 中文字幕制服av| 热99久久久久精品小说推荐| 中文字幕另类日韩欧美亚洲嫩草| 老司机影院毛片| 99精品久久久久人妻精品| svipshipincom国产片| 99国产精品99久久久久| 欧美日韩亚洲高清精品| 99精品欧美一区二区三区四区| 51午夜福利影视在线观看| 人人妻人人澡人人看| 黄色怎么调成土黄色| 97人妻天天添夜夜摸| 国产高清视频在线播放一区| 国产精品国产av在线观看| 91av网站免费观看| 欧美黄色淫秽网站| 国产1区2区3区精品| 国产亚洲一区二区精品| 在线永久观看黄色视频| 丝袜人妻中文字幕| 国产成人啪精品午夜网站| 丰满少妇做爰视频| 99久久人妻综合| 国产精品免费一区二区三区在线 | 男女午夜视频在线观看| 国产男女超爽视频在线观看| 99香蕉大伊视频| 久久99热这里只频精品6学生| 美女国产高潮福利片在线看| 免费少妇av软件| 国产成人精品在线电影| 国产麻豆69| 久久影院123| 精品国产国语对白av| 丝袜在线中文字幕| 亚洲男人天堂网一区| 满18在线观看网站| 十八禁人妻一区二区| 亚洲精品自拍成人| 国产区一区二久久| 亚洲国产欧美网| av又黄又爽大尺度在线免费看| 搡老岳熟女国产| 欧美日本中文国产一区发布| 久9热在线精品视频| 高清在线国产一区| 在线观看66精品国产| 亚洲第一av免费看| 亚洲七黄色美女视频| 免费不卡黄色视频| 中文字幕精品免费在线观看视频| 91成人精品电影| 国产精品一区二区在线观看99| 这个男人来自地球电影免费观看| 国产精品欧美亚洲77777| 一本久久精品| 一个人免费看片子| 肉色欧美久久久久久久蜜桃| 色综合欧美亚洲国产小说| 老司机深夜福利视频在线观看| 极品少妇高潮喷水抽搐| 日韩欧美免费精品| 亚洲国产欧美在线一区| 下体分泌物呈黄色| 另类亚洲欧美激情| 亚洲五月婷婷丁香| 啦啦啦中文免费视频观看日本| 久热爱精品视频在线9| 日韩精品免费视频一区二区三区| 一级,二级,三级黄色视频| 一本—道久久a久久精品蜜桃钙片| 午夜91福利影院| 国产视频一区二区在线看| 精品国产一区二区三区四区第35| 一级片免费观看大全| 大片电影免费在线观看免费| 一级黄色大片毛片| 日韩精品免费视频一区二区三区| 久久精品91无色码中文字幕| 黄色丝袜av网址大全| 少妇猛男粗大的猛烈进出视频| 久久久久久免费高清国产稀缺| 蜜桃在线观看..| 久久免费观看电影| 伦理电影免费视频| 婷婷成人精品国产| 一个人免费在线观看的高清视频| 亚洲国产av影院在线观看| 天堂8中文在线网| 热re99久久精品国产66热6| 国产免费av片在线观看野外av| 男女下面插进去视频免费观看| 女人精品久久久久毛片| netflix在线观看网站| 亚洲精品在线观看二区| 亚洲人成77777在线视频| 最黄视频免费看| 脱女人内裤的视频| 国产一区二区三区综合在线观看| 国产欧美日韩综合在线一区二区| 99国产精品一区二区三区| 啦啦啦在线免费观看视频4| 免费在线观看影片大全网站| 久久精品国产亚洲av高清一级| 欧美国产精品一级二级三级| 日韩制服丝袜自拍偷拍| 麻豆av在线久日| 免费在线观看日本一区| 日韩 欧美 亚洲 中文字幕| 一区二区三区精品91| 91精品国产国语对白视频| 久久久国产欧美日韩av| 国产色视频综合| 大片免费播放器 马上看| 久久狼人影院| 国产精品美女特级片免费视频播放器 | 一本—道久久a久久精品蜜桃钙片| 欧美日韩av久久| 一本一本久久a久久精品综合妖精| 18禁黄网站禁片午夜丰满| 国产精品久久久久成人av| 午夜福利一区二区在线看| 精品熟女少妇八av免费久了| 黄色成人免费大全| 亚洲性夜色夜夜综合| 免费久久久久久久精品成人欧美视频| 好男人电影高清在线观看| 久久久久久久精品吃奶| 真人做人爱边吃奶动态| 两个人免费观看高清视频| 日本av免费视频播放| 欧美日韩国产mv在线观看视频| av在线播放免费不卡| 欧美精品一区二区免费开放| 国产精品久久久久久精品电影小说| www.999成人在线观看| 99热网站在线观看| 蜜桃国产av成人99| 亚洲精华国产精华精| 99精品在免费线老司机午夜| 国产高清激情床上av| 别揉我奶头~嗯~啊~动态视频| 国产精品熟女久久久久浪| 精品少妇黑人巨大在线播放| 国产激情久久老熟女| 热re99久久精品国产66热6| 久久人妻福利社区极品人妻图片| 黄色怎么调成土黄色| 搡老岳熟女国产| 成年人黄色毛片网站| 亚洲午夜理论影院| 99精品欧美一区二区三区四区| 成人国语在线视频| 久久久久久久大尺度免费视频| 久久人妻熟女aⅴ| 国产成人av激情在线播放| tube8黄色片| 在线观看免费日韩欧美大片| www日本在线高清视频| 午夜福利,免费看| av片东京热男人的天堂| 老汉色∧v一级毛片| 国产亚洲精品久久久久5区| 淫妇啪啪啪对白视频| 一个人免费看片子| 国产麻豆69| 一边摸一边做爽爽视频免费| 18禁美女被吸乳视频| 人人妻人人添人人爽欧美一区卜| 午夜福利一区二区在线看| e午夜精品久久久久久久| 欧美日韩黄片免| 久久99一区二区三区| 亚洲中文日韩欧美视频| 国产欧美日韩一区二区三| 首页视频小说图片口味搜索| 国产精品影院久久| 免费在线观看黄色视频的| 久久国产精品影院| 男女下面插进去视频免费观看| 男男h啪啪无遮挡| 蜜桃在线观看..| 亚洲国产欧美在线一区| 波多野结衣av一区二区av| av福利片在线| 久久久久久免费高清国产稀缺| 亚洲av日韩在线播放| 精品少妇内射三级| 国产在线视频一区二区| 丰满人妻熟妇乱又伦精品不卡| 精品人妻1区二区| 亚洲人成电影观看| 亚洲欧美日韩另类电影网站| 亚洲av日韩在线播放| 色综合婷婷激情| 欧美老熟妇乱子伦牲交| 黄色丝袜av网址大全| 国产日韩欧美在线精品| 桃花免费在线播放| 亚洲少妇的诱惑av| 国产精品美女特级片免费视频播放器 | 性色av乱码一区二区三区2| 国产精品电影一区二区三区 | 高清毛片免费观看视频网站 | 久久久久视频综合| 免费黄频网站在线观看国产| 三级毛片av免费| 999精品在线视频| 一边摸一边抽搐一进一小说 | 一区二区日韩欧美中文字幕| 大码成人一级视频| 国产精品麻豆人妻色哟哟久久| 99香蕉大伊视频| 天堂俺去俺来也www色官网| 在线看a的网站| 欧美日韩国产mv在线观看视频| 啦啦啦 在线观看视频| 欧美精品av麻豆av| 亚洲视频免费观看视频| 2018国产大陆天天弄谢| 国产日韩欧美亚洲二区| 精品国产乱码久久久久久小说| 国产亚洲av高清不卡| 男女下面插进去视频免费观看| 一区二区三区乱码不卡18| 捣出白浆h1v1| 人人妻人人添人人爽欧美一区卜| 男女床上黄色一级片免费看| 黑人欧美特级aaaaaa片| 人人妻人人爽人人添夜夜欢视频| av天堂久久9| avwww免费| 精品久久久久久电影网| 伊人久久大香线蕉亚洲五| 国产欧美日韩一区二区精品| 国产精品1区2区在线观看. | 欧美日韩成人在线一区二区| 亚洲欧美激情在线| 又大又爽又粗| 亚洲欧美日韩另类电影网站| 日韩大码丰满熟妇| 精品福利观看| 久久人妻福利社区极品人妻图片| 亚洲欧美一区二区三区久久| 成人亚洲精品一区在线观看| 99精品在免费线老司机午夜| 大香蕉久久网| 色综合婷婷激情| 国产三级黄色录像| 真人做人爱边吃奶动态| 一个人免费在线观看的高清视频| 亚洲第一欧美日韩一区二区三区 | 亚洲天堂av无毛| 国产视频一区二区在线看| 老鸭窝网址在线观看| 欧美 亚洲 国产 日韩一| 99精国产麻豆久久婷婷| 美国免费a级毛片| 日韩熟女老妇一区二区性免费视频| 久久青草综合色| 91精品三级在线观看| 最新美女视频免费是黄的| 国产精品久久久人人做人人爽| 亚洲综合色网址| 无遮挡黄片免费观看| 日本撒尿小便嘘嘘汇集6| 91字幕亚洲| 最黄视频免费看| 老汉色∧v一级毛片| 在线观看免费日韩欧美大片| 国产精品久久久久久精品古装| 这个男人来自地球电影免费观看| 国产日韩欧美视频二区| 日韩大码丰满熟妇| 久久久久久免费高清国产稀缺| 亚洲人成电影观看| 久久久久久免费高清国产稀缺| 汤姆久久久久久久影院中文字幕| 麻豆乱淫一区二区| 1024视频免费在线观看| 午夜两性在线视频| 成人黄色视频免费在线看| 久久久久久免费高清国产稀缺| 91国产中文字幕| 亚洲欧美激情在线| 男人操女人黄网站| 狠狠精品人妻久久久久久综合| 一区在线观看完整版| 热re99久久精品国产66热6| 欧美精品一区二区大全| 国产99久久九九免费精品| av欧美777| 波多野结衣一区麻豆| 一本色道久久久久久精品综合| 久热爱精品视频在线9| 久久久欧美国产精品| 高清av免费在线| 色播在线永久视频| a级片在线免费高清观看视频| 亚洲人成电影免费在线| 国产成人精品久久二区二区免费| 午夜精品国产一区二区电影| 亚洲精品成人av观看孕妇| 热99久久久久精品小说推荐| 国产亚洲欧美精品永久| 国产男靠女视频免费网站| 国产熟女午夜一区二区三区| 精品福利观看| 日本a在线网址| 90打野战视频偷拍视频| 人妻久久中文字幕网| 欧美日韩亚洲高清精品| 日韩人妻精品一区2区三区| 精品卡一卡二卡四卡免费| 久久av网站| 久久久久国产一级毛片高清牌| 悠悠久久av| 这个男人来自地球电影免费观看| 国产精品熟女久久久久浪| 亚洲av电影在线进入| 人人澡人人妻人| 亚洲国产成人一精品久久久| 交换朋友夫妻互换小说| 一级毛片精品| 蜜桃在线观看..| av网站在线播放免费| 午夜免费成人在线视频| 中文字幕人妻熟女乱码| 老熟妇乱子伦视频在线观看| 女性生殖器流出的白浆| 一级片'在线观看视频| 久久久久久久国产电影| 欧美精品人与动牲交sv欧美| 亚洲成人手机| 日韩欧美三级三区| 成年女人毛片免费观看观看9 | 国产精品二区激情视频| 亚洲综合色网址| 亚洲精品在线观看二区| 99久久国产精品久久久| 美女视频免费永久观看网站| 狠狠狠狠99中文字幕| 色播在线永久视频| 99re6热这里在线精品视频| 国产片内射在线| 99re在线观看精品视频| 精品一区二区三区四区五区乱码| 不卡一级毛片| 中国美女看黄片| 在线 av 中文字幕| 国产亚洲精品久久久久5区| 中文字幕av电影在线播放| 亚洲av美国av| 国产精品 欧美亚洲| 日本欧美视频一区| 一本—道久久a久久精品蜜桃钙片| 午夜免费成人在线视频| 精品一区二区三区四区五区乱码| 自线自在国产av| 国产极品粉嫩免费观看在线| 麻豆成人av在线观看| 69av精品久久久久久 | 美女高潮到喷水免费观看| 国产人伦9x9x在线观看| 日韩中文字幕欧美一区二区| 中文字幕高清在线视频| 一区二区日韩欧美中文字幕| 一本色道久久久久久精品综合| 国产欧美日韩一区二区三区在线| 国产黄色免费在线视频| 99久久99久久久精品蜜桃| 日本黄色日本黄色录像| 91大片在线观看| 国产精品香港三级国产av潘金莲| 日韩大片免费观看网站| 999久久久国产精品视频| 麻豆国产av国片精品| 麻豆成人av在线观看| 国产精品久久久久久人妻精品电影 | 精品国产乱子伦一区二区三区| 宅男免费午夜| 一本色道久久久久久精品综合| 国产深夜福利视频在线观看| 亚洲色图 男人天堂 中文字幕| 国产精品1区2区在线观看. | 精品人妻在线不人妻| 亚洲综合色网址| 免费看a级黄色片| 成人黄色视频免费在线看| 国产视频一区二区在线看| 国产精品久久久久久人妻精品电影 | 亚洲成人手机| 国产不卡一卡二| 国产精品成人在线| 五月天丁香电影| 天堂中文最新版在线下载| 99久久99久久久精品蜜桃| 久久精品人人爽人人爽视色| 69精品国产乱码久久久| 久久久久网色| 日韩视频一区二区在线观看| 国产99久久九九免费精品| 日韩精品免费视频一区二区三区| 成人国语在线视频| 在线观看人妻少妇| av片东京热男人的天堂| 亚洲少妇的诱惑av| 99热网站在线观看| 在线永久观看黄色视频| 久久国产亚洲av麻豆专区| 一夜夜www| 成人特级黄色片久久久久久久 | 老司机在亚洲福利影院| 久久九九热精品免费| 大型黄色视频在线免费观看| 欧美成人免费av一区二区三区 | 亚洲精品国产精品久久久不卡| 国产精品久久久久成人av| 99riav亚洲国产免费| 欧美+亚洲+日韩+国产| 精品欧美一区二区三区在线| 天堂动漫精品| 99国产精品一区二区三区| 在线观看免费日韩欧美大片| videos熟女内射| 男女高潮啪啪啪动态图| 露出奶头的视频| 下体分泌物呈黄色| 在线观看免费午夜福利视频| 久久精品熟女亚洲av麻豆精品| xxxhd国产人妻xxx| 最近最新中文字幕大全免费视频| 美女视频免费永久观看网站| 精品欧美一区二区三区在线| 99国产精品免费福利视频| 一本大道久久a久久精品| 欧美亚洲 丝袜 人妻 在线| www.自偷自拍.com| 高清在线国产一区| 老司机影院毛片| 又紧又爽又黄一区二区| 老司机午夜十八禁免费视频| 国产av一区二区精品久久| 少妇猛男粗大的猛烈进出视频| 欧美在线一区亚洲| 女人被躁到高潮嗷嗷叫费观| 欧美另类亚洲清纯唯美| 国产午夜精品久久久久久| 国产精品国产高清国产av | 国产精品电影一区二区三区 | 久久久精品94久久精品| 成人免费观看视频高清| 国产精品免费视频内射| 久久久精品国产亚洲av高清涩受| 日韩欧美一区二区三区在线观看 | 国产精品98久久久久久宅男小说| 午夜精品久久久久久毛片777| 啦啦啦免费观看视频1| 脱女人内裤的视频| 精品福利永久在线观看| 嫩草影视91久久| www.熟女人妻精品国产| 90打野战视频偷拍视频| 女同久久另类99精品国产91| 99热网站在线观看| 一本一本久久a久久精品综合妖精| 又黄又粗又硬又大视频| 麻豆国产av国片精品| 国产不卡一卡二| 久久国产亚洲av麻豆专区| 亚洲精华国产精华精| 老熟女久久久| 欧美大码av| 中文字幕人妻丝袜制服| 免费在线观看影片大全网站| 免费久久久久久久精品成人欧美视频| 亚洲av日韩精品久久久久久密| 少妇 在线观看| av片东京热男人的天堂| 国产精品二区激情视频| 国产精品国产高清国产av | netflix在线观看网站| 欧美日韩成人在线一区二区| 国产成人系列免费观看| 窝窝影院91人妻| 久久亚洲真实| 精品人妻1区二区| 黑人欧美特级aaaaaa片| 亚洲精品中文字幕一二三四区 | 亚洲综合色网址| 国产三级黄色录像| 亚洲欧美日韩另类电影网站| 成人国语在线视频| 99在线人妻在线中文字幕 | 欧美变态另类bdsm刘玥| netflix在线观看网站| 大香蕉久久成人网| 美女午夜性视频免费| 一区二区三区国产精品乱码| 十八禁人妻一区二区| 国产成人系列免费观看| 日日摸夜夜添夜夜添小说| 亚洲精品自拍成人| tube8黄色片| 日日夜夜操网爽| 中国美女看黄片| 日韩成人在线观看一区二区三区| av国产精品久久久久影院| 交换朋友夫妻互换小说| 午夜免费成人在线视频| 午夜免费鲁丝| 欧美精品一区二区大全| 97在线人人人人妻| 91老司机精品| 欧美精品一区二区大全| 极品少妇高潮喷水抽搐| 一级毛片女人18水好多| 久久天躁狠狠躁夜夜2o2o| 无遮挡黄片免费观看| 国精品久久久久久国模美| 1024视频免费在线观看| 国产一区有黄有色的免费视频| 免费一级毛片在线播放高清视频 | 亚洲少妇的诱惑av| 高潮久久久久久久久久久不卡| 精品福利永久在线观看| 精品亚洲成a人片在线观看| 日本av手机在线免费观看| 亚洲av第一区精品v没综合| 欧美+亚洲+日韩+国产| 黄片播放在线免费| 国产精品 国内视频| 天天躁狠狠躁夜夜躁狠狠躁| 国产精品电影一区二区三区 | 91老司机精品|