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

    基于CUDA的等值線云圖并行生成算法

    2022-12-06 10:08:42杜小甫劉輝林劉鶴丹
    小型微型計算機系統(tǒng) 2022年12期
    關鍵詞:并行算法等值線數(shù)組

    杜小甫,劉輝林,劉鶴丹

    1(東北大學 計算機科學與工程學院,沈陽 110819)

    2(廈門大學 嘉庚學院 信息科學與技術學院,福建 漳州 363105)

    1 引 言

    1.1 等值線和等值線云圖

    等值線,是指標量場中具有相同標量值的各點的連線.等值線作為一種標量場可視化技術,應用非常廣泛.根據(jù)標量場物理含義不同,常見的等值線包括等溫線,等壓線,等高線,等勢線等.

    將相鄰的兩條等值線之間的區(qū)域,根據(jù)一定的規(guī)則填充,則得到了等值線云圖,這也是一種常見的標量場可視化技術.

    等值線生成算法可以分為兩大類:網(wǎng)格序列法和等值線追蹤法.所謂網(wǎng)格序列法是指將整個物理場劃分為若干網(wǎng)格單元,然后對每個網(wǎng)格單元求內(nèi)部的等值線段,當所有的網(wǎng)格單元都求完后,各個獨立的等值線段必然連接成完整的等值線.蔣瑜[1]等人提出了一種快速構建Delaunay三角網(wǎng)格算法,然后利用內(nèi)插法求出每個網(wǎng)格單元內(nèi)的等值線段,最后采用三次方Bezier曲線平滑生成等值線.這是一種典型的不規(guī)則網(wǎng)格內(nèi)網(wǎng)格序列法算法,具有算法簡單、速度快、對物理場表達能力強等優(yōu)點.等值線追蹤法是指從物理場中指定位置出發(fā),沿著一條等值線不斷追蹤,直到等值線超出物理場邊界或閉合.等值線追蹤法一般更適用于規(guī)則網(wǎng)格,具有天然連續(xù),利于曲線化等優(yōu)點.Guo[2]等人提出利于反距離加權插值法對離散的氣溫數(shù)據(jù)插值得到規(guī)則矩形網(wǎng)格,再計算等值點、追蹤等值線并對等值線進行平滑處理,這是一種典型的等值線追蹤算法.馮建設[3]等人指出,由等值線填充產(chǎn)生云圖最關鍵的環(huán)節(jié)是確定區(qū)域屬性值和排序,不得不反復進行網(wǎng)格頂點與區(qū)域、區(qū)域與區(qū)域之間的包含關系判別,嚴重影響運行效率.他們提出基于有序標記,可以顯著減少云圖填充的時間復雜度.

    無論哪種方法,等值線生成過程中都要處理很多網(wǎng)格單元和很多等值點連接成的等值線段,是一種典型的計算密集型算法.并且在等值線計算中,很多計算不存在先后依賴關系,因此非常適合做并行化處理.王志斌[4]等人討論了一種CPU并行算法,使用插值算法計算每個像素的溫度值,然后直接點繪制,最終得到等值線云圖.徐濤[5]等人討論了一種CPU并行算法,本質(zhì)上是基于規(guī)則網(wǎng)格的等值線追蹤算法,加速比2倍多.黃熙祥[6]提出了一種基于網(wǎng)格邊標記的等值線并行生成算法,本質(zhì)上也是一種基于規(guī)則網(wǎng)格的CPU并行等值線追蹤算法,加速比最大達到3.852.

    近年來,隨著GPU算力不斷提高,相關開發(fā)環(huán)境逐漸成熟,GPU并行計算的應用越來越廣.在等值線和云圖算法領域,GPU也被大量應用.陳家輝[7]提出了一種GPU并行算法,進行等值線追蹤以及等值線段的合并,最后利用CUDA編程實現(xiàn)了上述算法.Dong[8]等人設計了一種基于CUDA的等值線跟蹤算法,將等價點存儲在紋理存儲器中,并采用索引數(shù)組而不是鏈表結構.錢宸[9]等人提出一種“區(qū)間塊搜索的等值線提取算法”,本質(zhì)上是基于規(guī)則網(wǎng)格的等值線追蹤算法.Cao[10]等人提出一種采用塊搜索的等值線跟蹤算法,減少了網(wǎng)格遍歷次數(shù),避免了對被排除單元的搜索.Dong[11]等人提出了一種不依賴于坐標,直接根據(jù)標量值進行等值線跟蹤的算法.Song[12]等人針對USGS地圖中部分等高線會被標記文字遮擋的問題,提出了一種GPU并行算法,可以去除遮擋,實現(xiàn)等高線重連.

    1.2 CUDA編程架構

    CUDA(Compute Unified Device Architecture),是NVIDIA公司推出的通用GPU并行計算架構,非常適于進行并行程序開發(fā),廣泛應用在圖像處理、深度學習、區(qū)塊鏈等計算密集型應用場景中.目前CUDA最新版本為11,支持C/C++,F(xiàn)ORTRAN,python,matlab語言.

    NVIDIA顯卡中包含很多內(nèi)核,每個內(nèi)核是一個獨立的計算單元.為了更好的利用這些內(nèi)核,將若干個內(nèi)核組成一個流多處理器SM,然后由若干個SM組成完整的顯卡.與這種三層硬件結構對應,CUDA框架中也將線程組織為3層.首先整個顯卡對應著一個網(wǎng)格Grid,然后將網(wǎng)格劃分為若干塊Block,最后在每個Block中包含若干線程Thread.

    一個CUDA程序包含運行在CPU端的host程序和運行在GPU端的device程序,每個device程序都被封裝為一個核函數(shù).每個核函數(shù)會被分配到所有的GPU內(nèi)核上并行運行,提高程序速度.如果一個程序比較復雜,還可以將其按照先后流程劃分為多個核函數(shù),分別進行并行計算.

    Liu[13]等人對航空圖像處理中的梯度聚類算法進行了基于深度學習的并行研究,利用CUDA對航空圖像數(shù)據(jù)進行大規(guī)模并行處理.Domkiv[14]等人提出了利用CUDA結合區(qū)塊鏈技術來恢復加密PDF文件的密鑰的并行算法.劉端陽[15]等人提出對KNN算法中距離計算、距離排序和決定分類標號三階段采用CUDA并行化.曾浩洋[16]等人提出了一種基于天空區(qū)域分割的圖像去霧算法,利用CUDA編程實現(xiàn)快速去霧.

    綜上所述,目前所有等值線GPU并行算法都是基于規(guī)則網(wǎng)格等值線追蹤法的.對于不規(guī)則網(wǎng)格中網(wǎng)格序列法的GPU并行算法沒有展開研究.

    網(wǎng)格序列法不需要考慮同一條等值線上前后等值點之間的依賴關系,天然更適合進行并行化.相對于規(guī)則網(wǎng)格,不規(guī)則網(wǎng)格可以更好的貼合實際物理場的外形,被廣泛應用在各類數(shù)據(jù)分析軟件中.基于以上原因,本文提出了一種應用于不規(guī)則網(wǎng)格中的網(wǎng)格序列法等值線以及等值線云圖的GPU并行生成算法,并利用CUDA編程實現(xiàn)了上述算法.不規(guī)則網(wǎng)格根據(jù)外形可以分為很多種,本文中只討論最簡單的三節(jié)點三角形網(wǎng)格.

    2 基于網(wǎng)格序列法的等值線云圖算法

    2.1 等值線段生成算法

    網(wǎng)格序列法計算等值線云圖的過程可以分為兩個步驟:1)生成等值線,2)生成云圖.在第一個步驟中,最終得到很多等值線段,每條等值線段由兩個等值點連接組成,而每個等值點指的是某一個網(wǎng)格單元的某條邊與某條等值線的交點.

    三角形網(wǎng)格中,某網(wǎng)格單元如果與某等值線相交,則必定有兩條邊與該等值線相交產(chǎn)生兩個交點.將兩個交點連接,就得到一條等值線段.某網(wǎng)格單元可能會與多條等值線相交,而這些具有不同標量值的等值線段必定不會相交.當所有網(wǎng)格單元都求出等值線段,相鄰的網(wǎng)格單元中具有相同標量值的等值線段必然連接成完整的等值線.此時等值線是一條折線,如果有必要,可以通過Bezier曲線等方法對其平滑化.

    上述過程中,一個重要的計算是求網(wǎng)格邊與等值線的交點.如果某條網(wǎng)格邊的兩個頂點標量值和某條等值線的標量值存在一大一小關系,這條邊上必定存在等值點.使用雙線性插值法求交點坐標,公式如下:

    (1)

    (1)

    其中(x0,y0)、(x1,y1)是當前網(wǎng)格邊兩個頂點的坐標,v0和v1是兩個頂點的標量值,(x,y)是所求交點的坐標.

    按照順序對所有網(wǎng)格的所有邊,與所有等值線一一判斷是否相交,如果相交則利用公式(1)和公式(2)求出等值交點.則這些等值點必定成對出現(xiàn),并且必定按照如下3個規(guī)則排序:

    1)等值點按網(wǎng)格單元編號排列.

    2)等值點按標量場值由小到大排列.

    3)等值點按所在網(wǎng)格邊編號由小到大排列.

    2.2 等值線云圖生成算法

    在前步驟中,一個網(wǎng)格單元可能會被多條等值線段分割成多個獨立的多邊形,我們稱之為等值多邊形.三角形網(wǎng)格中,這些多邊形有可能是三角形、四邊形或五邊形.如圖1所示,是兩個等值線實例.

    圖1 三角形網(wǎng)格中等值線示例圖

    根據(jù)上一小節(jié)總結的有序性,我們前期工作[17]中提出了一種基于 “等值多邊形”的云圖生成算法.該算法根據(jù)第一條等值線與網(wǎng)格單元3個頂點的大小關系,將所有網(wǎng)格單元的處理分為“兩小一大”型和“一小兩大”型.

    1)“兩小一大”型:某網(wǎng)格3個頂點中有一個的場值比第一條等值線的場值大,另外兩個頂點的場值比第一條等值線的場值小,如圖1(a)所示.這種情況下,第1條等值線會切下一塊等值四邊形,后續(xù)每條等值線都會切下一個等值四邊形,最后一條等值線切下一個等值四邊形后,還剩下最后一個等值三角形.

    2)“一小兩大”型:某網(wǎng)格3個頂點中有一個的場值比第一條等值線的場值小,另外兩個頂點的場值比第一條等值線的場值大.如圖1(b)所示.這種情況下,第1條等值線會切下一塊等值三角形,后續(xù)的發(fā)展情況稍微復雜一些.首先可能會有一些等值線仍然小于剩下兩個頂點,這些等值線會不斷的切下一些等值四邊形;然后有可能從某條等值線開始,其值大于剩下兩個頂點中的某一個,仍然小于另一個,這條等值線會切下一個等值五邊形;如果后續(xù)還有等值線與當前網(wǎng)格單元相交,則轉化為“兩小一大”型,不斷切下等值四邊形,直到最后剩下一個等值三角形.

    3 算法并行化

    3.1 等值線生成算法并行化

    前文所述等值線生成算法的串行實現(xiàn)非常簡單,只需要寫一個兩層循環(huán).外層循環(huán)對所有網(wǎng)格單元遍歷,里層循環(huán)對某個網(wǎng)格單元與所有等值線相交情況遍歷.循環(huán)體內(nèi)首先判斷當前等值線與當前網(wǎng)格是否相交,如果相交,則根據(jù)公式(1)和公式(2)計算得到網(wǎng)格邊上的等值點.這個算法的并行化,有幾個關鍵點需要重點考慮.

    1)線程劃分.串行算法中循環(huán)往往是計算量最密集的地方,往往也是并行化的重點.對上述雙層循環(huán)進行分析,我們發(fā)現(xiàn)不同網(wǎng)格單元之間的處理并不存在前后依賴關系;而同一網(wǎng)格內(nèi)部,與不同等值線的相交處理,也沒有前后依賴關系.根據(jù)“線程劃分粒度越小越好”的原則,我們利用GPU的單個線程處理每個單元與每條等值線的相交.在每個線程內(nèi)部,不存在任何循環(huán),只需要判斷一個網(wǎng)格單元和一條等值線是否相交,并進行等值點、等值線段的計算即可.因此,線程總數(shù)等于網(wǎng)格單元數(shù)量乘以等值線數(shù)量.

    2)GPU內(nèi)存設計.GPU并行程序中,必須盡量減少不同線程之間內(nèi)存訪問沖突的可能性.因為當不同線程不得不同時訪問相同內(nèi)存時,這些線程不能并行運行,只能串行運行.這將極大影響并行速度,因此應該讓不同線程盡量訪問不同的內(nèi)存.

    本算法中,輸入數(shù)據(jù)有兩組,分別是網(wǎng)格單元信息數(shù)據(jù)和等值線數(shù)據(jù).輸出數(shù)據(jù)則只有一組,即所有等值點數(shù)據(jù),這個“等值點數(shù)組”的設計是重點.

    我們定義一個double型一維數(shù)組ContourNodes來保存所有的等值點數(shù)據(jù),其中每相鄰4個double型數(shù)據(jù)保存1個等值點的x、y、z坐標和標量場值v.一條等值線如果和網(wǎng)格單元相交,必定產(chǎn)生兩個等值點,所以在最壞情況下,等值點數(shù)組ContourNodes的長度為:MeshUnitNum×ContourNum×2×4,其中MeshUnitNum是網(wǎng)格單元的數(shù)量,ContourNum是等值線的數(shù)量.為了不造成內(nèi)存訪問沖突,我們按照最壞情況設計等值點數(shù)組:double ContourNodes[MeshUnitNum×ContourNum×2×4].在GPU所有內(nèi)核并行計算時,每個內(nèi)核都將計算結果保存到對應位置的元素中,這樣就不會造成內(nèi)存訪問沖突.當然,實際運行中,很多網(wǎng)格單元和很多等值線之間不會相交,這樣ContourNodes很多元素并沒有使用,這會造成一定空間浪費.但是這樣保證了并行化順利進行,以空間換取時間效率是值得的.

    在核函數(shù)中,我們首先取得當前線程的線程編號.然后我們根據(jù)如下兩個公式計算得到網(wǎng)格單元編號和等值線編號.

    meshID=TID/ContourNum

    (3)

    contourID=TID%ContourNum

    (4)

    其中TID為當前線程編號.如上所述,我們對每個網(wǎng)格單元與每條等值線的相交處理分配一個線程,那么用線程編號對等值線總數(shù)進行整除運算,得到的就是當前網(wǎng)格編號;用線程編號對等值線總數(shù)進行求余運算,得到的就是當前等值線的編號.

    在計算出某條等值線和當前網(wǎng)格單元的兩個交點后,第一個交點的xyz坐標存入ContourNodes數(shù)組中從(meshID×ContourNum+contourID)×8開始的連續(xù)3個元素中,將當前等值線標量值寫入(meshID×ContourNum+contourID)×8+3元素中;第2個交點的xyz坐標存入ContourNodes數(shù)組中從(meshID×ContourNum+contourID)×8+4開始的連續(xù)3個元素中,將當前等值線標量值寫入(meshID×ContourNum+contourID)×8+7元素中.等值線并行生成算法的核函數(shù)1的完整流程圖如圖2所示.

    圖2 等值線并行算法流程圖

    3.2 等值線云圖生成算法并行化

    根據(jù)前面等到的等值點數(shù)據(jù)計算云圖數(shù)據(jù)的串行算法也非常簡單,循環(huán)遍歷所有網(wǎng)格單元,根據(jù)3個頂點標量值與第一條相交等值線的大小關系,將網(wǎng)格處理分為“兩小一大”和“一小兩大”兩種情況,對兩種情況分別處理就好.而在這個算法的并行化過程中,有幾點問題需要注意.

    1)線程劃分.等值線云圖處理中,必須按照等值線段的先后順序生成若干等值多邊形,同個網(wǎng)格單元中不同等值線段存在先后依賴.因此,線程只能劃分為網(wǎng)格單元.一個線程中不可避免的會出現(xiàn)循環(huán),來處理多條等值線段,生成多個等值多邊形.

    2)輸入數(shù)據(jù)壓縮.上一小節(jié)計算得到的ContourNodes數(shù)組中存在大量無效數(shù)據(jù),如果直接把它復制到GPU內(nèi)存中,必然會造成很大空間浪費.針對這個問題,我們提出了一種壓縮方法.

    首先,在定義ContourNodes數(shù)組時,將他所有元素初始化為DBL_MAX,這個值是C++語言中最大double型數(shù)值.

    然后,經(jīng)過等值線算法處理后,如果這個數(shù)組內(nèi)某些元素值改變了,則保存的是真正有意義的等值點數(shù)據(jù);如果某些元素值還保留DBL_MAX值,則意味著該網(wǎng)格單元和該等值線沒有交點.我們將ContourNodes數(shù)組中所有DBL_MAX值壓縮掉,壓縮后的數(shù)組命名為CNsBeenCompressed.同時定義一個長度為2倍MeshUnitNum的int型數(shù)組,命名為IndexOfEachUnit.IndexOfEachUnit數(shù)組中第(i/2)個元素保存了第i個網(wǎng)格單元在CNsBeenCompressed數(shù)組中的起始索引位置;第(i/2+1)個元素保存了第i個網(wǎng)格單元中等值點的個數(shù).根據(jù)這兩個值,我們可以從CNsBeenCompressed數(shù)組中得到每一個網(wǎng)格單元中的所有等值點數(shù)據(jù),而又節(jié)省了大量空間.

    3)輸出數(shù)據(jù)格式.為了避免線程訪問沖突,應該將不同線程的計算結果(若干個等值多邊形數(shù)據(jù)),寫入不同的內(nèi)存空間中.在算法執(zhí)行之前,不能提前知道每個網(wǎng)格單元將產(chǎn)生多少個等值多邊形,也無法知道將得到的是三角形,四邊形,還是五邊形.只能按照最壞情況設計double型數(shù)組NephogramPolygons.最壞情況下每條等值線與每個網(wǎng)格單元都相交,將產(chǎn)生MeshUnitNum×(ContourNum+1)個等值多邊形.而多邊形最壞情況是一個五邊形,需要保存5個頂點信息,每個頂點則需要保存xyz坐標和標量值v.因此數(shù)組NephogramPolygons的長度是MeshUnitNum×(ContourNum+1)×5×4.

    云圖算法執(zhí)行后,NephogramPolygons數(shù)組同樣可能存在大量的空間浪費,很有可能其中很多元素并沒有保存真實有意義的數(shù)據(jù).所以我們同樣可以將NephogramPolygons數(shù)組所有元素初始化為DBL_MAX值,當整個網(wǎng)格處理完畢,將NephogramPolygons數(shù)組內(nèi)容復制到CPU內(nèi)存中,再對其內(nèi)容進行過濾,得到所有真實等值多邊形的數(shù)據(jù).

    如圖3所示是等值線云圖并行算法的核函數(shù)2的整體流程圖.首先判斷當前網(wǎng)格是否包含等值點:如果不包含則調(diào)用WholeUnitToOneTriangle函數(shù)將網(wǎng)格單元整體轉換為一個等值三角形,并存入NephogramPolygons對應位置;如果包含則調(diào)用SplitUnitToPolygons函數(shù).SplitUnitToPolygons函數(shù)將處理流程分為“兩小一大”和“一小兩大”兩種情況,分別調(diào)用函數(shù)TwoSmallOneBig和OneSmallTwoBig.

    圖3 等值線云圖并行算法流程圖

    如圖4所示,是“兩小一大”型的函數(shù)流程圖.該函數(shù)比較簡單,處理流程中不會出現(xiàn)分支.

    圖4 “兩小一大”函數(shù)流程圖

    如圖5所示,是OneSmallTwoBig函數(shù)流程圖.OneSmallTwoBig函數(shù)中后續(xù)后續(xù)的發(fā)展情況稍微復雜一些,出現(xiàn)了幾種不同的分支處理.

    圖5 “兩大一小”函數(shù)流程圖

    3.3 完整的等值線云圖并行算法

    前面分別討論了兩個核函數(shù),核函數(shù)1用于并行計算等值點對組成的等值線段,核函數(shù)2用于并行計算等值多邊形.之所以不將兩個過程合并在一起,是因為兩個核函數(shù)中線程劃分的粒度不同.核函數(shù)1中每個線程只處理一個網(wǎng)格單元和一條等值線的相交,而在核函數(shù)2中每個線程要處理一個網(wǎng)格單元和所有等值線的相交.另外兩個核函數(shù)中對GPU內(nèi)存的使用也有所不同,所以我們不得不將完整的并行算法拆分為兩個步驟.

    如圖6所示,是完整的等值線云圖并行算法示意圖.CPU端主機程序啟動后,第1步進行內(nèi)存準備.在CPU內(nèi)存和GPU顯存中創(chuàng)建對應的3個數(shù)組,分別用于保存網(wǎng)格單元數(shù)據(jù)、等值線數(shù)據(jù)和等值點數(shù)據(jù);第2步從本地磁盤文件中讀入網(wǎng)格數(shù)據(jù)和等值線數(shù)據(jù)并存入CPU內(nèi)存中的網(wǎng)格單元數(shù)組和等值線數(shù)組,然后拷貝到GPU內(nèi)存對應數(shù)組中,作為輸入數(shù)據(jù);第3步,啟動核函數(shù)1,計算得到所有網(wǎng)格單元中所有成對出現(xiàn)的等值點數(shù)據(jù),保存到GPU內(nèi)存中的等值點數(shù)組中,并將其拷貝回CPU內(nèi)存中的等值點數(shù)組作為輸出.到此為止,完成了第1階段,完成求解等值點的操作;第4步,對得到的等值點數(shù)組進行數(shù)據(jù)壓縮,并拷貝到GPU內(nèi)存中創(chuàng)建對應數(shù)組,作為第2階段的輸入;第5步啟動核函數(shù)2,利用網(wǎng)格單元數(shù)組、等值線數(shù)組和壓縮后的等值點數(shù)組作為輸入,計算得到所有等值多邊形數(shù)據(jù),并拷貝回CPU內(nèi)存中存入等值多邊形數(shù)組.至此,完成了等值線云圖的所有計算過程,再利用OpenGL等技術完成繪制.

    圖6 等值線云圖并行算法整體流程圖

    4 算法實現(xiàn)與分析

    4.1 與其他云圖生成算法比較分析

    以上我們基于“分割窮舉”思想設計了一種等值線云圖的生成算法,適用于三角形不規(guī)則網(wǎng)格.該算法與其他現(xiàn)有算法相比,在速度上有較大提升,具體有兩方面原因.

    1)云圖串行算法時間復雜度降低

    與現(xiàn)有的其他等值線云圖算法進行比較,我們可以分成兩個步驟來討論算法效率.首先第一步生成等值線.在這個步驟中,無論是基于等值線序列法還是基于網(wǎng)格序列法的算法,時間效率都是O(m×n),本質(zhì)上都需要對每個網(wǎng)格單元與每條等值線的相交情況進行一一判斷和處理.在這個步驟中,我們的算法并沒有速度優(yōu)勢.如果考慮到后期等值線由折線順滑為曲線的過程,我們的網(wǎng)格序列法還要進行等值線段的排序,會產(chǎn)生額外的計算量.從這個角度看,我們的算法在生成等值線段這一步驟反而更慢.當然,在本文中,我們并沒有必要將等值線曲線化,所以這個額外的計算量其實并沒有產(chǎn)生.

    第2個步驟是根據(jù)等值線數(shù)據(jù)填充生成云圖,這個步驟現(xiàn)有的絕大多數(shù)算法都是基于等值線序列法[2,3]的.而在等值線序列法中,從等值線數(shù)據(jù)出發(fā)完成云圖填充,需要進行額外的計算,例如需要完成等值區(qū)域的排序、判斷包含關系、凹多邊形區(qū)域處理等.例如在文獻[3]中需要額外的計算量的時間復雜度為O(n2),其中n是等值線條數(shù).

    而在我們提出的云圖算法中,云圖中等值多邊形的計算是混合在等值線段計算之后同步完成的(當然也可以先計算等值線段,保存后再計算等值多邊形).從時間復雜度上看,完整的等值線云圖算法的全部時間復雜度就是O(m×n),并沒有增加.當然,從等值線段計算出等值多邊形,還需要花費一些額外計算,但是并沒有在數(shù)量級上增加算法的時間消耗.因此,如果考慮云圖整體的算法效率,我們的云圖串行算法比其他現(xiàn)有基于等值線數(shù)據(jù)填充思想的云圖算法要快.

    2)云圖并行算法速度顯著提升

    我們的云圖算法的第2個優(yōu)勢是,非常適合于進行并行化,這也是本算法速度顯著提升的根本原因.

    在我們的云圖串行算法中,計算過程被分割到每個網(wǎng)格單元內(nèi)部,在不同網(wǎng)格單元之間不存在任何先后依賴關系.這就允許云圖串行算法并行化.而實際結果證明,這種并行化后的算法,時間效率提示了一個數(shù)量級.

    4.2 云圖生成算法實現(xiàn)與結果分析

    我們利用C++語言實現(xiàn)了上述并行算法,開發(fā)環(huán)境為Win10+VS2019+CUDA11.使用普通筆記本電腦,配置為intel i7-10510U處理器,16G內(nèi)存,NVIDIA GeForce MX250顯卡,2G顯存.顯卡CUDA版本為10,擁有3個流多處理器,每個流多處理器上有128個流處理器內(nèi)核,共384個內(nèi)核.

    為了驗證算法效果,我們選取了兩個典型溫度場數(shù)據(jù)進行了等值線和云圖的計算以及繪制試驗.我們利用OpenGL實現(xiàn)了圖像繪制.在OpenGL中,多邊形的顏色填充可以采用兩種不同的模式.第1種模式可以為整個多邊形指定一種固定的顏色,然后用這個單一顏色填充,稱為平面著色(FlatShading).第2種模式,可以給多邊形每個頂點指定不同的顏色,然后用這些不同顏色自動實現(xiàn)過渡填充,這種方式稱為光滑著色處理(Smooth Shading).OpenGL中利用函數(shù)“void glShadeModel(GLenum mode)”來實現(xiàn)兩種模式的設置,當參數(shù)mode取值為GL_FLAT或GL_SMOOTH時,分別代表平面著色和光滑著色.

    采用平面著色模式時,填充的等值線云圖具有明確的條紋分層,我們稱為條紋云圖.采用光滑著色模式時,填充的等值線云圖具有光滑的顏色過渡,效果非常像像素級云圖,我們稱為偽像素云圖.如圖7所示,是一組渦輪盤橫截面的溫度場效果圖.從上到下分別為等值線效果圖、條紋云圖效果圖、和偽像素云圖效果圖.

    圖7 等值線和云圖效果圖1

    如圖8所示,是一組異形墊片的溫度場效果圖.從上到下分別為等值線效果圖、條紋云圖效果圖、和偽像素云圖效果圖.從圖7和圖8中,可以看出條紋云圖和偽像素云圖的區(qū)別很明顯.也能看出等值線以折線形式實現(xiàn),并沒有光滑成曲線形式.

    圖8 等值線和云圖效果圖2

    為了更好的觀察并行算法的加速效果,我們利用Delaunay算法生成了20組三角網(wǎng)格,網(wǎng)格單元數(shù)量分別是10,16,24,34,40,72,98,188,256,382,480,922,1410,2114,2808,3700,4408,5266,6448,7623.然后針對這20個網(wǎng)格分別創(chuàng)建了一個溫度場,在其中都設置20條等值線.最后利用上述思想分別編寫了CPU串行算法和GPU并行算法,分別運行得到結果.

    我們首先單獨運行等值線算法,分別得到了20組串行算法耗時和并行算法耗時數(shù)據(jù),如表1所示.再根據(jù)表1數(shù)據(jù)繪制了20組數(shù)據(jù)的加速比變化曲線,如圖9所示.

    圖9 等值線并行算法加速比變化圖

    表1 串行、并行等值線算法耗時

    從圖9中可以看到,隨著網(wǎng)格數(shù)量的增加,并行算法的優(yōu)勢很快體現(xiàn)出來.當網(wǎng)格數(shù)量達到200左右時,乘以等值線數(shù)量20,總共需要約200×20=4000個線程并行處理.這時基本達到了試驗用筆記本的性能極限,后續(xù)網(wǎng)格數(shù)量繼續(xù)增加,并行算法的加速比并沒有繼續(xù)提高.

    然后使用同樣的20組數(shù)據(jù),我們完整運行了等值線云圖算法,得到的結果如表2所示.再根據(jù)表2數(shù)據(jù)繪制了云圖算法的20組數(shù)據(jù)加速比變化曲線,如圖10所示.

    表2 串行、并行云圖算法耗時

    對比圖10與圖9,可以發(fā)現(xiàn)有3處明顯不同:

    圖10 云圖并行算法加速比變化圖

    1)當網(wǎng)格數(shù)量較少時,云圖并行算法加速比甚至小于1.這說明在網(wǎng)格數(shù)量較少時,并行算法并沒有體現(xiàn)出優(yōu)勢,反而因為內(nèi)存分配、數(shù)據(jù)拷貝、線程調(diào)度等處理的耗時,最終需要花費比串行算法給多的時間,才能完成同樣的計算.

    2)云圖算法加速比遞增的速度明顯要小等值線算法的.這主要是因為等值線算法中,所需線程總數(shù)等于網(wǎng)格個數(shù)乘以等值線條數(shù).而在云圖算法中,線程總數(shù)就等于網(wǎng)格個數(shù).因此隨著網(wǎng)格的增加,所需的線程數(shù)量在等值線算法中增加的更快,也就能更充分的利用GPU線程多的優(yōu)勢,因此在等值線算法中,加速比更快增加到最優(yōu)程度.

    3)同樣的計算機配置,云圖算法最終達到的加速比只有10左右,明顯比等值線并行算法最高加速比13要低.這主要是因為云圖算法中每個線程需要進行的計算量比較大,導致最終達到的加速效果要差一些.

    5 結 論

    本文首先討論了不規(guī)則網(wǎng)格中,一種基于“網(wǎng)格序列法”和“分割窮舉”思想的等值線云圖生成算法.然后討論了這種算法的并行化策略,并基于CUDA編程實現(xiàn)了并行算法.最后利用20組數(shù)據(jù)進行了試驗,結果表明本文提出的云圖并行算法是簡單高效的.

    在后續(xù)工作中,我們將研究該算法在其他網(wǎng)格類型中的實現(xiàn),例如在四邊形網(wǎng)格中實現(xiàn)云圖并行算法.另外,我們也會深入探討其他可視化方法的并行化可能,例如流線、橢球圖標等算法的并行化.

    猜你喜歡
    并行算法等值線數(shù)組
    JAVA稀疏矩陣算法
    電腦報(2022年13期)2022-04-12 00:32:38
    地圖線要素綜合化的簡遞歸并行算法
    基于規(guī)則預計格網(wǎng)的開采沉陷等值線生成算法*
    礦山測量(2020年6期)2021-01-07 04:52:06
    JAVA玩轉數(shù)學之二維數(shù)組排序
    電腦報(2020年24期)2020-07-15 06:12:41
    基于GPU的GaBP并行算法研究
    等值線“慣性”變化規(guī)律的提出及應用
    地理教學(2016年19期)2016-11-21 05:01:49
    基于Kriging插值的等值線生成算法研究
    尋找勾股數(shù)組的歷程
    等值線分析系統(tǒng)實際應用之等值線填充
    基于GPU的分類并行算法的研究與實現(xiàn)
    午夜视频国产福利| 97在线人人人人妻| 国产乱人视频| 在线天堂最新版资源| 日本三级黄在线观看| 51国产日韩欧美| 在线观看国产h片| 看非洲黑人一级黄片| 亚洲精品亚洲一区二区| 国产av码专区亚洲av| 大香蕉久久网| 欧美日本视频| 一级毛片aaaaaa免费看小| 免费观看的影片在线观看| 亚洲国产精品成人综合色| 听说在线观看完整版免费高清| 欧美日本视频| 国产精品国产三级国产专区5o| 97在线视频观看| 菩萨蛮人人尽说江南好唐韦庄| 久久精品人妻少妇| 人人妻人人爽人人添夜夜欢视频 | 一本久久精品| 久久ye,这里只有精品| 99久久中文字幕三级久久日本| 国产精品久久久久久久电影| 少妇高潮的动态图| 亚洲精华国产精华液的使用体验| 美女高潮的动态| 国产精品久久久久久精品电影小说 | 中文乱码字字幕精品一区二区三区| 一本色道久久久久久精品综合| 日韩欧美精品v在线| 午夜日本视频在线| 自拍偷自拍亚洲精品老妇| 免费看a级黄色片| 欧美xxⅹ黑人| 久久久久久久久久久免费av| 99热这里只有是精品50| 女人被狂操c到高潮| 成年人午夜在线观看视频| 日韩强制内射视频| 成人国产av品久久久| 久久久精品免费免费高清| av女优亚洲男人天堂| 女人十人毛片免费观看3o分钟| 黄片无遮挡物在线观看| 22中文网久久字幕| 国产黄片美女视频| 少妇的逼水好多| 男女无遮挡免费网站观看| 男人狂女人下面高潮的视频| a级毛色黄片| 国产精品嫩草影院av在线观看| 亚洲av福利一区| 三级国产精品欧美在线观看| 国产毛片a区久久久久| 久热这里只有精品99| 久久久久久久久久久丰满| 简卡轻食公司| av国产久精品久网站免费入址| 有码 亚洲区| 亚洲国产欧美在线一区| 七月丁香在线播放| 亚洲精品色激情综合| 日韩不卡一区二区三区视频在线| 91久久精品电影网| 熟女电影av网| 成年版毛片免费区| 尾随美女入室| 91精品一卡2卡3卡4卡| tube8黄色片| 日韩视频在线欧美| 99久久人妻综合| 免费黄网站久久成人精品| 亚洲精品中文字幕在线视频 | 欧美3d第一页| 极品教师在线视频| 蜜桃久久精品国产亚洲av| 亚洲在线观看片| 在线精品无人区一区二区三 | 国产亚洲av嫩草精品影院| 亚洲精品久久午夜乱码| 91精品伊人久久大香线蕉| 最近的中文字幕免费完整| 韩国av在线不卡| 99久久人妻综合| 少妇的逼水好多| 内射极品少妇av片p| 伦理电影大哥的女人| 交换朋友夫妻互换小说| 欧美精品人与动牲交sv欧美| 亚洲精品日韩av片在线观看| 久久久久久久久大av| 国产男女内射视频| 成人漫画全彩无遮挡| 我要看日韩黄色一级片| 日韩成人av中文字幕在线观看| 亚洲精品国产成人久久av| 久久综合国产亚洲精品| 国产免费视频播放在线视频| 亚洲aⅴ乱码一区二区在线播放| 国产精品人妻久久久影院| 精品久久久久久久人妻蜜臀av| 18禁在线无遮挡免费观看视频| 大又大粗又爽又黄少妇毛片口| 麻豆乱淫一区二区| 一级毛片久久久久久久久女| 国产欧美另类精品又又久久亚洲欧美| 日本-黄色视频高清免费观看| 大又大粗又爽又黄少妇毛片口| 天天躁日日操中文字幕| 激情 狠狠 欧美| 午夜福利高清视频| 交换朋友夫妻互换小说| 亚洲av国产av综合av卡| 精品酒店卫生间| 中文资源天堂在线| 欧美丝袜亚洲另类| 在线观看国产h片| 一级片'在线观看视频| 亚洲精品久久久久久婷婷小说| 亚洲av国产av综合av卡| 久久久久精品久久久久真实原创| 久久久久国产网址| 99视频精品全部免费 在线| 欧美精品一区二区大全| 在线播放无遮挡| 国产在线男女| 国产精品.久久久| 久久久精品免费免费高清| 久久久久久久国产电影| 久久久久久久国产电影| 国产久久久一区二区三区| 日本三级黄在线观看| 99热这里只有是精品50| 丝袜脚勾引网站| 国内精品宾馆在线| 熟女人妻精品中文字幕| 亚洲精品久久午夜乱码| av在线播放精品| 91久久精品国产一区二区三区| 精品酒店卫生间| 美女被艹到高潮喷水动态| 麻豆乱淫一区二区| 久久6这里有精品| 99久久中文字幕三级久久日本| 亚洲经典国产精华液单| 亚洲精品中文字幕在线视频 | 免费观看在线日韩| 国产 一区 欧美 日韩| 久久精品久久久久久久性| av卡一久久| 国产一区二区亚洲精品在线观看| 亚洲第一区二区三区不卡| 日韩一区二区视频免费看| 日韩一区二区三区影片| 亚洲综合精品二区| 丝袜美腿在线中文| 一级二级三级毛片免费看| 欧美另类一区| 日韩伦理黄色片| 日本黄大片高清| 久久这里有精品视频免费| 男插女下体视频免费在线播放| 啦啦啦在线观看免费高清www| 亚洲国产精品999| 婷婷色av中文字幕| 老女人水多毛片| 亚洲天堂国产精品一区在线| 麻豆乱淫一区二区| 亚洲人成网站高清观看| 亚洲在线观看片| h日本视频在线播放| .国产精品久久| 在线a可以看的网站| 网址你懂的国产日韩在线| 伦理电影大哥的女人| 国产乱人视频| 少妇人妻 视频| 亚洲美女视频黄频| eeuss影院久久| 久久精品国产自在天天线| av国产免费在线观看| 草草在线视频免费看| 日本wwww免费看| 亚洲综合色惰| 丰满人妻一区二区三区视频av| 亚洲一区二区三区欧美精品 | 国产精品成人在线| av免费观看日本| 久久久久久伊人网av| 国产一区二区三区av在线| 欧美日韩精品成人综合77777| 黄色日韩在线| 亚洲av日韩在线播放| 中文欧美无线码| 久久99精品国语久久久| 日产精品乱码卡一卡2卡三| 亚洲欧洲国产日韩| 国产成人精品婷婷| 99久久中文字幕三级久久日本| 亚洲自拍偷在线| 看非洲黑人一级黄片| 亚洲综合色惰| 亚洲av男天堂| 亚洲伊人久久精品综合| 国产精品人妻久久久影院| 亚洲国产欧美在线一区| 亚洲最大成人av| 欧美激情在线99| 国产老妇伦熟女老妇高清| 99久国产av精品国产电影| 国产人妻一区二区三区在| 亚洲人与动物交配视频| 国产精品一二三区在线看| 美女视频免费永久观看网站| 日本三级黄在线观看| 精品视频人人做人人爽| 国产精品不卡视频一区二区| 一个人看视频在线观看www免费| 午夜免费男女啪啪视频观看| 一个人看视频在线观看www免费| 尤物成人国产欧美一区二区三区| 午夜激情福利司机影院| 综合色丁香网| 一级毛片我不卡| 亚洲欧美中文字幕日韩二区| 国产中年淑女户外野战色| 欧美 日韩 精品 国产| 日韩欧美一区视频在线观看 | 久久久欧美国产精品| 亚洲,欧美,日韩| 大陆偷拍与自拍| 国产成人一区二区在线| 不卡视频在线观看欧美| 国产欧美亚洲国产| 国产有黄有色有爽视频| 纵有疾风起免费观看全集完整版| 亚洲,欧美,日韩| 国产毛片a区久久久久| 国内精品美女久久久久久| 在线天堂最新版资源| 久久久午夜欧美精品| 亚洲精品色激情综合| 18禁在线播放成人免费| av国产久精品久网站免费入址| 久久久久久国产a免费观看| 亚洲,一卡二卡三卡| 热99国产精品久久久久久7| 国产v大片淫在线免费观看| 在线播放无遮挡| 五月开心婷婷网| 亚洲av欧美aⅴ国产| 国产一区二区三区av在线| 日日撸夜夜添| 久久综合国产亚洲精品| 热99国产精品久久久久久7| 亚洲人成网站在线播| 亚洲av成人精品一区久久| 国产伦理片在线播放av一区| 成人亚洲欧美一区二区av| 国产乱人视频| 少妇人妻 视频| 黑人高潮一二区| 九色成人免费人妻av| 亚洲av电影在线观看一区二区三区 | 26uuu在线亚洲综合色| 亚洲国产精品成人久久小说| 我要看日韩黄色一级片| 欧美精品国产亚洲| av在线播放精品| 51国产日韩欧美| 欧美3d第一页| 久久精品久久久久久久性| 国产精品一二三区在线看| 亚洲国产成人一精品久久久| 联通29元200g的流量卡| 观看免费一级毛片| 国产色婷婷99| 看免费成人av毛片| 交换朋友夫妻互换小说| 亚洲伊人久久精品综合| 青青草视频在线视频观看| 婷婷色综合www| 狂野欧美激情性bbbbbb| 午夜精品国产一区二区电影 | 国产在视频线精品| 免费看日本二区| 在线观看人妻少妇| 国产v大片淫在线免费观看| 国产欧美日韩精品一区二区| 亚洲,欧美,日韩| 伦理电影大哥的女人| 国产精品一区二区性色av| 欧美日韩精品成人综合77777| 亚洲欧美精品专区久久| 中文天堂在线官网| 国产精品福利在线免费观看| 精品一区二区免费观看| 麻豆国产97在线/欧美| 久久人人爽av亚洲精品天堂 | 国产精品人妻久久久久久| 国产成人一区二区在线| 在线a可以看的网站| 日本黄大片高清| 日韩一本色道免费dvd| 99久久精品热视频| 亚洲精品国产成人久久av| 一本久久精品| 欧美xxxx性猛交bbbb| 久久精品国产a三级三级三级| 中文字幕人妻熟人妻熟丝袜美| 免费黄网站久久成人精品| 男女那种视频在线观看| 午夜精品一区二区三区免费看| 免费av观看视频| 国产白丝娇喘喷水9色精品| 亚洲第一区二区三区不卡| 我的老师免费观看完整版| 成年版毛片免费区| 色网站视频免费| 亚洲精品乱码久久久久久按摩| 中文字幕久久专区| 欧美激情久久久久久爽电影| 插逼视频在线观看| 2022亚洲国产成人精品| 亚洲av中文av极速乱| 九九久久精品国产亚洲av麻豆| 日本色播在线视频| 国产伦精品一区二区三区视频9| 又大又黄又爽视频免费| 五月玫瑰六月丁香| 大片免费播放器 马上看| 干丝袜人妻中文字幕| 欧美97在线视频| 亚洲av二区三区四区| 蜜臀久久99精品久久宅男| 在线观看三级黄色| 一级毛片我不卡| 直男gayav资源| 大香蕉久久网| 亚洲综合色惰| 国产黄片视频在线免费观看| 精品久久久精品久久久| 伊人久久国产一区二区| h日本视频在线播放| 免费观看在线日韩| 日本与韩国留学比较| 少妇的逼好多水| 六月丁香七月| 亚洲不卡免费看| 一级爰片在线观看| 三级男女做爰猛烈吃奶摸视频| 国产老妇女一区| 亚洲精品日韩在线中文字幕| 午夜激情久久久久久久| 久久国内精品自在自线图片| 又爽又黄a免费视频| 美女被艹到高潮喷水动态| 国产毛片在线视频| 成年女人看的毛片在线观看| 黄色日韩在线| 黄片wwwwww| 97超视频在线观看视频| 国产一区二区亚洲精品在线观看| 菩萨蛮人人尽说江南好唐韦庄| 草草在线视频免费看| 久久99热这里只有精品18| 一本色道久久久久久精品综合| 久久久久精品久久久久真实原创| 五月伊人婷婷丁香| 一区二区av电影网| 狂野欧美激情性xxxx在线观看| 国产精品精品国产色婷婷| 青春草亚洲视频在线观看| 国产精品一区www在线观看| 国产综合懂色| 欧美三级亚洲精品| 黑人高潮一二区| 日日摸夜夜添夜夜爱| 男人狂女人下面高潮的视频| 91狼人影院| 国产一区二区在线观看日韩| 18禁在线无遮挡免费观看视频| 成人二区视频| 亚洲国产精品999| 婷婷色麻豆天堂久久| 国产黄a三级三级三级人| 日本一二三区视频观看| 国产视频内射| 中文字幕制服av| 亚洲三级黄色毛片| 国产精品.久久久| 五月伊人婷婷丁香| 中国国产av一级| 色婷婷久久久亚洲欧美| av黄色大香蕉| 免费av不卡在线播放| 免费看a级黄色片| av一本久久久久| 97精品久久久久久久久久精品| 香蕉精品网在线| 在线播放无遮挡| av福利片在线观看| 日韩伦理黄色片| 免费观看性生交大片5| 国产亚洲精品久久久com| 国产亚洲av片在线观看秒播厂| 麻豆成人av视频| 在线观看av片永久免费下载| 黑人高潮一二区| 毛片女人毛片| 免费少妇av软件| 日本黄大片高清| 九色成人免费人妻av| 人妻少妇偷人精品九色| 又爽又黄a免费视频| 国产成人精品福利久久| 五月伊人婷婷丁香| 一级二级三级毛片免费看| 久久久久性生活片| av在线亚洲专区| 蜜臀久久99精品久久宅男| 视频中文字幕在线观看| 如何舔出高潮| 国产探花极品一区二区| 国产av不卡久久| 人妻少妇偷人精品九色| 精品一区二区三卡| 在线观看av片永久免费下载| 综合色av麻豆| 99热全是精品| 一个人看视频在线观看www免费| 天天躁夜夜躁狠狠久久av| a级毛片免费高清观看在线播放| 亚洲国产色片| 国产伦在线观看视频一区| 自拍偷自拍亚洲精品老妇| 午夜亚洲福利在线播放| 国产乱人偷精品视频| 三级经典国产精品| 最近最新中文字幕免费大全7| 一二三四中文在线观看免费高清| 99热网站在线观看| 大香蕉97超碰在线| 联通29元200g的流量卡| 亚洲av中文av极速乱| 97超视频在线观看视频| 青春草国产在线视频| 人人妻人人爽人人添夜夜欢视频 | 日韩 亚洲 欧美在线| 中文字幕制服av| 国产午夜精品一二区理论片| 国产成人精品久久久久久| 日本黄大片高清| 久久99热这里只有精品18| 99九九线精品视频在线观看视频| 最近的中文字幕免费完整| 婷婷色av中文字幕| 日韩在线高清观看一区二区三区| 免费看光身美女| 成人国产麻豆网| 国产成人a∨麻豆精品| 又爽又黄a免费视频| 熟女电影av网| 精品午夜福利在线看| 丝袜脚勾引网站| 成年女人在线观看亚洲视频 | 亚洲精品日韩av片在线观看| 亚洲最大成人av| 秋霞在线观看毛片| 欧美人与善性xxx| 亚洲av成人精品一二三区| 69av精品久久久久久| 新久久久久国产一级毛片| 国产女主播在线喷水免费视频网站| 99久久精品热视频| 嫩草影院入口| 亚洲在线观看片| 国内少妇人妻偷人精品xxx网站| 大码成人一级视频| 99久久精品国产国产毛片| 80岁老熟妇乱子伦牲交| 只有这里有精品99| 亚洲,一卡二卡三卡| 欧美 日韩 精品 国产| 中国美白少妇内射xxxbb| 国产一区二区三区av在线| 韩国av在线不卡| 国产成人a区在线观看| 在线观看一区二区三区| 97精品久久久久久久久久精品| 国产伦精品一区二区三区四那| 男女下面进入的视频免费午夜| 久久久色成人| 色综合色国产| 国产精品爽爽va在线观看网站| 亚洲精品中文字幕在线视频 | 97热精品久久久久久| 国产精品99久久久久久久久| 国产黄片视频在线免费观看| 亚洲欧美日韩东京热| 69人妻影院| 大香蕉久久网| 大片免费播放器 马上看| 边亲边吃奶的免费视频| 欧美日韩亚洲高清精品| 国产男人的电影天堂91| 一个人看视频在线观看www免费| 欧美性感艳星| 国产熟女欧美一区二区| 国产精品国产三级国产专区5o| 精华霜和精华液先用哪个| 免费黄频网站在线观看国产| 99九九线精品视频在线观看视频| h日本视频在线播放| 简卡轻食公司| 亚洲精品成人久久久久久| 免费少妇av软件| 国产综合精华液| 一级毛片黄色毛片免费观看视频| 好男人视频免费观看在线| 成年女人看的毛片在线观看| 国产精品一区www在线观看| 久久久午夜欧美精品| 91精品国产九色| 26uuu在线亚洲综合色| 亚洲天堂国产精品一区在线| xxx大片免费视频| 小蜜桃在线观看免费完整版高清| 亚洲av福利一区| 免费看不卡的av| 黄色怎么调成土黄色| 色综合色国产| 少妇猛男粗大的猛烈进出视频 | 哪个播放器可以免费观看大片| 欧美3d第一页| 日本wwww免费看| 免费少妇av软件| 99久久中文字幕三级久久日本| 蜜桃久久精品国产亚洲av| 国产精品久久久久久精品电影| 免费黄网站久久成人精品| 美女国产视频在线观看| 久久精品熟女亚洲av麻豆精品| 有码 亚洲区| 日日摸夜夜添夜夜添av毛片| 久久精品久久精品一区二区三区| www.av在线官网国产| 午夜老司机福利剧场| 在线观看av片永久免费下载| 麻豆精品久久久久久蜜桃| 免费电影在线观看免费观看| 一级毛片aaaaaa免费看小| 国产精品女同一区二区软件| 国产欧美亚洲国产| 最近手机中文字幕大全| 九九在线视频观看精品| 大香蕉97超碰在线| 国产极品天堂在线| 国产精品蜜桃在线观看| 爱豆传媒免费全集在线观看| 国产成人午夜福利电影在线观看| 99九九线精品视频在线观看视频| 亚洲欧美日韩东京热| videossex国产| 男的添女的下面高潮视频| a级毛色黄片| 视频区图区小说| 国产伦精品一区二区三区四那| 我要看日韩黄色一级片| 看十八女毛片水多多多| 中文乱码字字幕精品一区二区三区| 日韩av在线免费看完整版不卡| 99热6这里只有精品| 人妻夜夜爽99麻豆av| 国产高清国产精品国产三级 | 亚洲精品456在线播放app| 在线观看av片永久免费下载| 乱系列少妇在线播放| 欧美精品人与动牲交sv欧美| 高清欧美精品videossex| 黄色日韩在线| 五月天丁香电影| 永久免费av网站大全| 国产人妻一区二区三区在| 精品国产露脸久久av麻豆| 99久久精品国产国产毛片| 亚洲av日韩在线播放| av女优亚洲男人天堂| 成人亚洲欧美一区二区av| 在线免费十八禁| 亚洲精品自拍成人| a级毛色黄片| 亚洲成人精品中文字幕电影| 久久精品夜色国产| 一级毛片黄色毛片免费观看视频| 亚洲精品久久午夜乱码| 网址你懂的国产日韩在线| 精品久久久久久久末码| 一级毛片黄色毛片免费观看视频| 日韩欧美精品免费久久| 在线观看av片永久免费下载| 欧美极品一区二区三区四区| 欧美精品国产亚洲| 久久久久国产网址| 热99国产精品久久久久久7| 久久99精品国语久久久| 中文字幕人妻熟人妻熟丝袜美| 国产成人精品婷婷| 免费看光身美女| 国产亚洲精品久久久com| 一区二区三区精品91| 中文字幕人妻熟人妻熟丝袜美|