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

    一種基于sort-last架構(gòu)的非結(jié)構(gòu)網(wǎng)格并行體可視化算法

    2021-07-21 08:30:56范良張曉蓉吳亞?wèn)|陳呈王昉
    大數(shù)據(jù) 2021年4期
    關(guān)鍵詞:進(jìn)程繪制葉子

    范良,張曉蓉,吳亞?wèn)|,陳呈,王昉

    1. 西南科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,四川 綿陽(yáng) 621010;2. 四川輕化工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,四川 自貢 643002;3. 空氣動(dòng)力學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室,四川 綿陽(yáng) 621000;4. 中國(guó)空氣動(dòng)力研究與發(fā)展中心計(jì)算空氣動(dòng)力研究所,四川 綿陽(yáng) 621000

    1 引言

    體可視化是科學(xué)可視化中的重要研究方向,被廣泛應(yīng)用于醫(yī)學(xué)影像、計(jì)算流體力學(xué)(computational fluid dynamics,CFD)、氣象氣候?qū)W等領(lǐng)域,體繪制算法是體可視化領(lǐng)域的重要研究?jī)?nèi)容[1]。體繪制直接從三維的體數(shù)據(jù)中生成半透明的二維屏幕圖像,空間表現(xiàn)能力強(qiáng),因此,也被稱(chēng)為直接體繪制??茖W(xué)家可以通過(guò)體繪制結(jié)果看穿數(shù)據(jù)體,探索數(shù)據(jù)內(nèi)部結(jié)構(gòu),獲取有用信息。與面繪制相比,體繪制結(jié)果多了一個(gè)維度的信息,因此,可視化結(jié)果不僅更加精確,而且更能體現(xiàn)數(shù)據(jù)本身的特點(diǎn)[2]。

    體數(shù)據(jù)是體繪制算法的輸入,分為結(jié)構(gòu)網(wǎng)格和非結(jié)構(gòu)網(wǎng)格[3]。其中,結(jié)構(gòu)網(wǎng)格具有規(guī)則的幾何結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu),相反,非結(jié)構(gòu)網(wǎng)格的幾何結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu)不規(guī)則,網(wǎng)格單元可以是任意形狀。在三維數(shù)據(jù)場(chǎng)變化劇烈的區(qū)域可以用體積較小的網(wǎng)格單元表示,變化比較平滑的區(qū)域則使用體積較大的網(wǎng)格單元表示,對(duì)于同一個(gè)數(shù)據(jù)場(chǎng),可以用更少的非結(jié)構(gòu)網(wǎng)格單元進(jìn)行描述,有效節(jié)省了存儲(chǔ)空間[4]。因此,非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)在科學(xué)計(jì)算與仿真領(lǐng)域的應(yīng)用更加廣泛。然而,由于非結(jié)構(gòu)網(wǎng)格的幾何結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu)不規(guī)則,相對(duì)于結(jié)構(gòu)網(wǎng)格,非結(jié)構(gòu)網(wǎng)格的體繪制算法設(shè)計(jì)比較困難,涉及復(fù)雜的計(jì)算與龐大的存儲(chǔ)量。目前,非結(jié)構(gòu)網(wǎng)格體繪制算法可以通過(guò)基于圖像空間、基于對(duì)象空間和兩者混合的技術(shù)實(shí)現(xiàn)[2]。光線(xiàn)投射算法[5]是十分具代表性的基于圖像空間實(shí)現(xiàn)的體繪制技術(shù)。然而,對(duì)于非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)而言,無(wú)法根據(jù)幾何結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu)計(jì)算光線(xiàn)離開(kāi)當(dāng)前網(wǎng)格單元后即將進(jìn)入的下一個(gè)網(wǎng)格單元,采用局部或全局搜索下一個(gè)網(wǎng)格單元需要極大的開(kāi)銷(xiāo)。Weiler M等人[6]將沿著光線(xiàn)的采樣點(diǎn)限制在單元面上,同時(shí),采用預(yù)積分技術(shù),將預(yù)積分的顏色和透明度值存入一張紋理圖,并且將光線(xiàn)進(jìn)入和離開(kāi)單元點(diǎn)的標(biāo)量值以及光線(xiàn)在網(wǎng)格單元內(nèi)穿過(guò)的長(zhǎng)度作為參數(shù)查詢(xún)紋理圖。此外,他們還精心設(shè)計(jì)了紋理數(shù)據(jù)結(jié)構(gòu),將體數(shù)據(jù)以紋理的形式載入顯存,通過(guò)硬件技術(shù)加速算法。投影四面體算法[7]是十分著名的基于對(duì)象空間實(shí)現(xiàn)的體繪制技術(shù),首先,計(jì)算所有網(wǎng)格單元的可見(jiàn)性順序;然后,根據(jù)可見(jiàn)性順序?qū)⑺拿骟w單元在圖像平面上的投影拆分為一系列三角形;最后,將三角形的頂點(diǎn)數(shù)據(jù)載入顯存,通過(guò)GPU光柵化并合成最終結(jié)果。此外,Wylie B等人[8]利用可編程的頂點(diǎn)著色器,設(shè)計(jì)了基于硬件加速的投影四面體算法,不需要額外的數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)預(yù)處理。HAVS(hardware-assisted visibility svrting)[9]算法是最具代表性的基于圖像/對(duì)象空間混合技術(shù)實(shí)現(xiàn)的非結(jié)構(gòu)網(wǎng)格體繪制算法,在對(duì)象空間,對(duì)網(wǎng)格單元執(zhí)行局部排序,并生成一個(gè)近似有序的網(wǎng)格單元片段列表;在圖像空間,使用固定深度的排序網(wǎng)絡(luò)對(duì)片段列表執(zhí)行升序排序。其中,對(duì)象空間計(jì)算在CPU上進(jìn)行,圖像空間計(jì)算在GPU上進(jìn)行。HAVS算法在簡(jiǎn)化CPU的處理運(yùn)算的同時(shí),將大量排序計(jì)算交給GPU執(zhí)行,進(jìn)一步提升了算法性能。

    由于各種科學(xué)計(jì)算與模擬仿真的精度越來(lái)越高,非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)規(guī)模呈爆炸式增長(zhǎng)。體繪制包含數(shù)據(jù)重構(gòu)、傳遞函數(shù)映射和繪制合成,涉及大量的浮點(diǎn)運(yùn)算,串行的算法難以滿(mǎn)足需求。隨著技術(shù)發(fā)展,大量的并行計(jì)算軟件和硬件出現(xiàn),這為科學(xué)研究提供了更加強(qiáng)勁的計(jì)算能力,基于進(jìn)程并行的體繪制算法研究成為大規(guī)模非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)體可視化設(shè)計(jì)的趨勢(shì)[10]。Fogal T等人[11]實(shí)現(xiàn)了基于集群的并行體可視化算法,使用KD樹(shù)組織數(shù)據(jù),進(jìn)程之間采用信息傳遞接口(massage passing interface,MPI)通信,可高效繪制大規(guī)模標(biāo)量場(chǎng)數(shù)據(jù)集。Chen J H等人[12]設(shè)計(jì)了分布式的并行體繪制算法,并對(duì)大規(guī)模燃燒模擬數(shù)據(jù)的多個(gè)變量同時(shí)進(jìn)行體繪制,允許用戶(hù)實(shí)時(shí)交互體繪制結(jié)果。本文在現(xiàn)有研究成果的基礎(chǔ)上,研究并實(shí)現(xiàn)了一種基于sort-last[13]架構(gòu)的非結(jié)構(gòu)網(wǎng)格并行體繪制算法,并集成到國(guó)產(chǎn)自主可控科學(xué)可視化軟件拓視(TopViz)中,主要貢獻(xiàn)如下。

    ● 實(shí)現(xiàn)了基于KD樹(shù)的并行體數(shù)據(jù)分割算法和可見(jiàn)性排序算法。首先,使用預(yù)處理程序確保每個(gè)進(jìn)程讀取的網(wǎng)格數(shù)量大致相等;其次,以每個(gè)進(jìn)程上的數(shù)據(jù)為輸入,構(gòu)造局部KD樹(shù);然后,將所有進(jìn)程上的局部KD樹(shù)合成為全局KD樹(shù);最后,通過(guò)相機(jī)位置和分割平面計(jì)算全局KD樹(shù)葉子節(jié)點(diǎn)的可見(jiàn)性順序。

    ● 實(shí)現(xiàn)了基于二叉樹(shù)的并行圖像合成算法。根據(jù)可見(jiàn)性順序?qū)λ羞M(jìn)程上的圖片兩兩配對(duì)并合成中間結(jié)果,不斷重復(fù)配對(duì)與合成的過(guò)程,直到合成最終結(jié)果。

    ● 實(shí)現(xiàn)了兩層LOD交互模型。首先,同步所有進(jìn)程的數(shù)據(jù)邊界信息;然后,在主進(jìn)程上渲染數(shù)據(jù)邊框模型。當(dāng)處于交互狀態(tài)時(shí),渲染邊框模型;停止交互時(shí),渲染體繪制模型。

    ● 設(shè)計(jì)實(shí)驗(yàn)驗(yàn)證,并分析了算法性能。實(shí)驗(yàn)結(jié)果顯示,本文的并行體數(shù)據(jù)分割算法具有良好的性能和負(fù)載均衡能力;并行體繪制算法可以被很好地應(yīng)用于大規(guī)模非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)體可視化,且交互時(shí)延在毫秒級(jí)別,滿(mǎn)足實(shí)時(shí)交互的需求。

    2 基于進(jìn)程并行的非結(jié)構(gòu)網(wǎng)格體繪制算法

    非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)的體繪制算法涉及龐大的計(jì)算量與存儲(chǔ)量,串行算法效率較低,難以滿(mǎn)足大規(guī)模非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)體可視化實(shí)時(shí)交互的需求。因此,基于進(jìn)程并行的體繪制算法是大規(guī)模非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)體可視化十分有效的解決方案。本節(jié)將詳細(xì)描述基于進(jìn)程并行的非結(jié)構(gòu)網(wǎng)格體繪制算法流程,算法包含數(shù)據(jù)分割、繪制和圖片合成3個(gè)階段,如圖1所示。在數(shù)據(jù)分割階段,首先,每個(gè)進(jìn)程讀取數(shù)量大致相等的網(wǎng)格單元;然后,將每個(gè)進(jìn)程上的體數(shù)據(jù)作為輸入,構(gòu)造局部KD樹(shù);最后,通過(guò)MPI將所有進(jìn)程上的局部KD樹(shù)合成為全局KD樹(shù)。在繪制階段,每個(gè)進(jìn)程使用獨(dú)立的體繪制管線(xiàn)計(jì)算圖像。在圖片合成階段,按照可見(jiàn)性順序配對(duì)所有進(jìn)程上的圖片,并合成中間結(jié)果,不斷重復(fù)配對(duì)和合成過(guò)程,直到合成最終結(jié)果。

    圖1 基于進(jìn)程并行的非結(jié)構(gòu)網(wǎng)格體繪制算法流程

    2.1 數(shù)據(jù)分割

    并行體繪制算法的第一步是將大規(guī)模的網(wǎng)格數(shù)據(jù)拆分為若干個(gè)規(guī)模較小的網(wǎng)格。由于繪制過(guò)程的性能取決于繪制最慢的進(jìn)程效率,因此,負(fù)載均衡是數(shù)據(jù)分割算法設(shè)計(jì)首要考慮的問(wèn)題。本節(jié)將詳細(xì)描述基于KD樹(shù)的并行體數(shù)據(jù)分割算法的設(shè)計(jì),為了確保負(fù)載均衡,最終分割結(jié)果中KD樹(shù)葉子節(jié)點(diǎn)之間的數(shù)據(jù)量應(yīng)基本相同。

    2.1.1 局部KD樹(shù)構(gòu)造

    KD樹(shù)是一種分割K維空間的高效數(shù)據(jù)結(jié)構(gòu),屬于二叉空間分割樹(shù)的特殊情況,被廣泛應(yīng)用于各種數(shù)據(jù)分割和搜索程序中[14]。其中,KD樹(shù)的葉子節(jié)點(diǎn)表示K維空間中的點(diǎn),非葉子節(jié)點(diǎn)表示將K維空間一分為二的超平面或超立方體。如果要將KD樹(shù)算法應(yīng)用于體數(shù)據(jù)分割,則需要賦予節(jié)點(diǎn)新的意義,其中,葉子節(jié)點(diǎn)表示非結(jié)構(gòu)網(wǎng)格單元集合,非葉子節(jié)點(diǎn)則表示將空間一分為二的超平面。體數(shù)據(jù)是三維的,因此,使用與坐標(biāo)軸平行的分割平面可以最大限度地簡(jiǎn)化數(shù)據(jù)分割的運(yùn)算過(guò)程。

    算法1給出了KD樹(shù)的構(gòu)造過(guò)程。對(duì)于一個(gè)非葉子節(jié)點(diǎn),首先,計(jì)算所有網(wǎng)格單元的質(zhì)心坐標(biāo);其次,計(jì)算分割平面的方向,為了確保與分割平面相交的網(wǎng)格單元最少和避免數(shù)據(jù)分割后被拉長(zhǎng),選擇數(shù)據(jù)邊界跨度最長(zhǎng)的坐標(biāo)軸方向作為分割平面方向;然后,計(jì)算所有網(wǎng)格單元沿著分割平面方向的質(zhì)心坐標(biāo)中位數(shù),為了確保左右子樹(shù)的網(wǎng)格單元數(shù)量大致相等,將質(zhì)心坐標(biāo)的中位數(shù)作為分割平面的位置坐標(biāo);最后,沿著分割平面將數(shù)據(jù)一分為二,對(duì)于與分割平面相交的網(wǎng)格單元,復(fù)制一份并劃分到分割平面兩側(cè)。KD樹(shù)構(gòu)造是一個(gè)遞歸的過(guò)程,不斷拆分非葉子節(jié)點(diǎn),直到生成指定數(shù)目的葉子節(jié)點(diǎn)。

    算法1KD樹(shù)構(gòu)造

    輸入:非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)

    輸出:KD樹(shù)根節(jié)點(diǎn)指針

    步驟1:計(jì)算所有網(wǎng)格單元的質(zhì)心坐標(biāo);

    步驟2:根據(jù)網(wǎng)格數(shù)據(jù)邊界值計(jì)算分割平面方向;

    步驟3:計(jì)算質(zhì)心坐標(biāo)的中位數(shù),將中位數(shù)質(zhì)心坐標(biāo)作為分割面的位置坐標(biāo);

    步驟4:沿著分割面將網(wǎng)格數(shù)據(jù)一分為二;

    步驟5:遞歸執(zhí)行步驟2~4,直到生成指定數(shù)目的葉子節(jié)點(diǎn)。

    通常,一個(gè)大規(guī)模的網(wǎng)格數(shù)據(jù)在超級(jí)計(jì)算機(jī)上使用多個(gè)并行程序模擬計(jì)算生成,以多塊(multi-block)數(shù)據(jù)的形式寫(xiě)入磁盤(pán),最好也用并行讀取的方法處理。雖然單塊數(shù)據(jù)的規(guī)模不大,但是單塊數(shù)據(jù)之間的網(wǎng)格規(guī)??赡懿罹嗪艽蟆R虼?,本文首先使用一個(gè)預(yù)處理程序統(tǒng)計(jì)大規(guī)模網(wǎng)格數(shù)據(jù)中每一塊數(shù)據(jù)的網(wǎng)格單元數(shù)量,并保存到一個(gè)列表中;然后,根據(jù)列表網(wǎng)格數(shù)量信息計(jì)算每個(gè)進(jìn)程應(yīng)讀取的單塊數(shù)據(jù)編號(hào),確保每個(gè)進(jìn)程讀取的網(wǎng)格單元數(shù)量大致相等;最后,每個(gè)進(jìn)程根據(jù)單塊數(shù)據(jù)的編號(hào)并行讀取體數(shù)據(jù)。

    在每個(gè)進(jìn)程上使用KD樹(shù)算法分割體數(shù)據(jù),這個(gè)過(guò)程被稱(chēng)為局部KD樹(shù)的構(gòu)造。預(yù)處理過(guò)程確保了每個(gè)進(jìn)程上讀取的網(wǎng)格單元數(shù)量大致相等,因此,局部KD樹(shù)構(gòu)造算法是負(fù)載均衡的。每個(gè)進(jìn)程上的局部KD樹(shù)具有相同的非葉子節(jié)點(diǎn),即分割平面相同,所有的樹(shù)節(jié)點(diǎn)同步生成。因此,首先構(gòu)造一個(gè)非葉子節(jié)點(diǎn),同步所有進(jìn)程上該節(jié)點(diǎn)對(duì)應(yīng)的體數(shù)據(jù)邊界信息,根據(jù)邊界范圍選擇分割平面的方向;然后,并行計(jì)算所有進(jìn)程上該節(jié)點(diǎn)對(duì)應(yīng)的體數(shù)據(jù)網(wǎng)格單元沿著分割平面方向質(zhì)心坐標(biāo)的中位數(shù)[15],將中位數(shù)的坐標(biāo)作為分割平面的位置坐標(biāo);最后,沿著分割平面將該節(jié)點(diǎn)一分為二。遞歸構(gòu)造每一個(gè)非葉子節(jié)點(diǎn),直到生成指定數(shù)目的葉子節(jié)點(diǎn)。為了最大化地確保KD樹(shù)平衡,以及便于后續(xù)設(shè)計(jì)并行圖像合成算法,本文構(gòu)造的KD樹(shù)均為滿(mǎn)二叉樹(shù),即葉子節(jié)點(diǎn)數(shù)量為2的正整數(shù)冪。如果葉子節(jié)點(diǎn)數(shù)量為N,則KD樹(shù)的高度為lbN。

    2.1.2 全局KD樹(shù)合成

    全局KD樹(shù)與局部KD樹(shù)具有相同的非葉子節(jié)點(diǎn),不同的是,每個(gè)進(jìn)程只存儲(chǔ)全局KD樹(shù)中一個(gè)葉子節(jié)點(diǎn)的數(shù)據(jù),這些葉子節(jié)點(diǎn)的數(shù)據(jù)為最終分割結(jié)果。進(jìn)程之間的局部KD樹(shù)對(duì)應(yīng)的葉子節(jié)點(diǎn)數(shù)據(jù)交換過(guò)程被稱(chēng)為全局KD樹(shù)的合成。數(shù)據(jù)分割需要保證每個(gè)進(jìn)程上都有數(shù)據(jù),因此,進(jìn)程數(shù)量應(yīng)該等于KD樹(shù)的葉子節(jié)點(diǎn)數(shù)量,即2的正整數(shù)冪。

    對(duì)于局部KD樹(shù),只有其中一個(gè)葉子節(jié)點(diǎn)的數(shù)據(jù)屬于當(dāng)前進(jìn)程,因此,需要進(jìn)行N對(duì)N的數(shù)據(jù)交換操作。首先,給所有局部KD樹(shù)的葉子節(jié)點(diǎn)編號(hào)(從0開(kāi)始);然后,通過(guò)MPI,根據(jù)進(jìn)程秩將屬于其他進(jìn)程的葉子節(jié)點(diǎn)數(shù)據(jù)發(fā)送至對(duì)應(yīng)的進(jìn)程;最后,將每個(gè)進(jìn)程上的數(shù)據(jù)合并為完整的網(wǎng)格。

    2.1.3 基于KD樹(shù)的可見(jiàn)性排序算法

    對(duì)于與分割平面相交的網(wǎng)格單元(也被稱(chēng)為ghost單元[2]),本文采取的處理方式是復(fù)制一份,然后將其劃分到分割平面兩側(cè)。該處理方式可以確保分割平面兩側(cè)的網(wǎng)格數(shù)據(jù)具有嚴(yán)格的可見(jiàn)性順序,不存在相互遮擋的情況。其中,可見(jiàn)性順序[16]用于描述空間中兩個(gè)對(duì)象的遮擋情況,在給定視線(xiàn)方向的情況下,如果對(duì)象a遮擋了對(duì)象b,則可見(jiàn)性順序Oa<Ob;反之,則可見(jiàn)性順序Oa>Ob。對(duì)于KD樹(shù)的非葉子節(jié)點(diǎn)的左右孩子節(jié)點(diǎn),以分割平面為界,定義與相機(jī)位置處于同一側(cè)的孩子節(jié)點(diǎn)為近點(diǎn),另一側(cè)為遠(yuǎn)點(diǎn)。近點(diǎn)的可見(jiàn)性順序明顯小于遠(yuǎn)點(diǎn)的可見(jiàn)性順序,因此,通過(guò)相機(jī)位置和分割平面可以計(jì)算KD樹(shù)中所有葉子節(jié)點(diǎn)的可見(jiàn)性順序。

    算法2給出了基于KD樹(shù)的可見(jiàn)性順序計(jì)算過(guò)程。將全局KD樹(shù)作為輸入,從根節(jié)點(diǎn)開(kāi)始,根據(jù)相機(jī)位置確定近點(diǎn)與遠(yuǎn)點(diǎn);按照“先近點(diǎn),后遠(yuǎn)點(diǎn)”的順序計(jì)算每個(gè)非葉子節(jié)點(diǎn)的可見(jiàn)性順序;如果遇到葉子節(jié)點(diǎn),則將葉子節(jié)點(diǎn)對(duì)應(yīng)的進(jìn)程秩添加到可見(jiàn)性順序列表。遞歸處理每個(gè)節(jié)點(diǎn),直到所有葉子節(jié)點(diǎn)的可見(jiàn)性順序計(jì)算完畢。

    算法2可見(jiàn)性順序計(jì)算

    輸入:全局KD樹(shù)

    輸出:可見(jiàn)性順序列表list

    步驟1:如果當(dāng)前節(jié)點(diǎn)為葉子節(jié)點(diǎn),將該節(jié)點(diǎn)的進(jìn)程秩添加到list;

    步驟2:如果當(dāng)前節(jié)點(diǎn)為非葉子節(jié)點(diǎn),根據(jù)相機(jī)位置確定近點(diǎn)與遠(yuǎn)點(diǎn):

    · 計(jì)算近點(diǎn)可見(jiàn)性順序;

    · 計(jì)算遠(yuǎn)點(diǎn)可見(jiàn)性順序;

    步驟3:遞歸執(zhí)行步驟1~2,直到所有葉子節(jié)點(diǎn)的可見(jiàn)性順序計(jì)算完畢。

    2.2 繪制

    并行體繪制算法的第二個(gè)階段(繪制)以第2.1節(jié)中KD樹(shù)算法的分割結(jié)果為輸入,在每個(gè)進(jìn)程上執(zhí)行獨(dú)立的可視化管線(xiàn),從而計(jì)算體繪制圖像。本文采用體繪制管線(xiàn)技術(shù),如圖2所示,整個(gè)體繪制管線(xiàn)分為數(shù)據(jù)處理、體繪制算法、體繪制參數(shù)和渲染4個(gè)部分,其中,管線(xiàn)中每個(gè)階段的輸出作為下一個(gè)階段的輸入。在數(shù)據(jù)處理部分,使用Reader加載KD樹(shù)算法的分割結(jié)果,如果需要對(duì)體數(shù)據(jù)進(jìn)行裁剪和四面體化等操作,可以通過(guò)Filter完成;在體繪制算法部分,使用高效的線(xiàn)程并行投影四面體算法[17]計(jì)算圖元信息;在體繪制參數(shù)部分,建立體數(shù)據(jù)標(biāo)量值與顏色/透明度之間的映射關(guān)系;在最后的渲染部分,使用OpenGL API函數(shù)將體繪制圖元數(shù)據(jù)與傳遞函數(shù)參數(shù)載入顯存,通過(guò)GPU光柵化并合成最終的體繪制圖像。體繪制管線(xiàn)技術(shù)具有高度的可擴(kuò)展性與靈活性,管線(xiàn)每個(gè)部分只提供通用的接口,實(shí)現(xiàn)體繪制管線(xiàn)則需要提供所有通用接口的具體實(shí)現(xiàn)。如果要研究不同的體繪制算法性能,只需要提供新算法的Mapper即可。

    圖2 體繪制管線(xiàn)

    2.3 圖片合成

    如圖3所示,基于sort-last架構(gòu)的并行體繪制算法最后需要將所有進(jìn)程上的體繪制圖片合成最終結(jié)果。由于體繪制結(jié)果是半透明的二維圖片,因此,需要根據(jù)可見(jiàn)性順序按照從前向后的順序進(jìn)行合成??梢允褂胦ver運(yùn)算將兩張?bào)w繪制圖片合成一張圖片,其中,over運(yùn)算不滿(mǎn)足交換律,但是滿(mǎn)足結(jié)合律[18]。因此,在不改變合成順序的前提下,可以對(duì)所有進(jìn)程上的體繪制圖片任意分組,采取分組合成策略。over運(yùn)算的性質(zhì)為并行圖像合成算法設(shè)計(jì)提供了條件[15]。

    圖3 圖片合成

    本文采用基于二叉樹(shù)的圖像合成算法,首先,根據(jù)第2.1.3節(jié)中的方法計(jì)算所有進(jìn)程體繪制圖片的可見(jiàn)性順序列表;然后,根據(jù)可見(jiàn)性順序列表對(duì)體繪制圖片進(jìn)行兩兩配對(duì);最后,通過(guò)MPI將圖片發(fā)送至其配對(duì)進(jìn)程,并使用over運(yùn)算合成中間結(jié)果。不斷重復(fù)配對(duì)與合成的過(guò)程,直到所有中間結(jié)果都被合成為最終圖片。與串行的圖像合成算法相比,雖然基于樹(shù)的合成算法增加了通信次數(shù)和合成次數(shù),但是它將時(shí)間重疊利用,減少了資源閑置,算法并行粒度更高,效率優(yōu)勢(shì)更明顯。

    以4個(gè)進(jìn)程為例,二叉樹(shù)圖像合成算法流程如圖4所示。假設(shè)4個(gè)進(jìn)程上的體繪制圖片可見(jiàn)性順序?yàn)镺0<O2<O1<O3,第一次合成,2號(hào)進(jìn)程和3號(hào)進(jìn)程分別將圖片發(fā)送至0號(hào)進(jìn)程和1號(hào)進(jìn)程,在0號(hào)進(jìn)程和1號(hào)進(jìn)程上合成中間結(jié)果;第二次合成,1號(hào)進(jìn)程將中間結(jié)果發(fā)送至0號(hào)進(jìn)程,在0號(hào)進(jìn)程上合成最終結(jié)果。

    圖4 二叉樹(shù)圖像合成算法過(guò)程(4個(gè)進(jìn)程)

    2.4 兩層LOD模型

    體繪制算法涉及大量的距離運(yùn)算、求交運(yùn)算和插值運(yùn)算,同時(shí),圖片合成與進(jìn)程之間的通信開(kāi)銷(xiāo)不可忽略。對(duì)于大規(guī)模非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)體可視化,難以滿(mǎn)足實(shí)時(shí)交互的需求,因此,本文采用層次細(xì)節(jié)(level of detail,LOD)技術(shù)優(yōu)化用戶(hù)交互體驗(yàn)。如圖5所示,一共設(shè)計(jì)了兩層LOD模型,首先,所有從進(jìn)程將數(shù)據(jù)邊界信息發(fā)送至主進(jìn)程(0號(hào)進(jìn)程),在主進(jìn)程上同步邊界信息,并渲染一個(gè)剛好能包圍住體數(shù)據(jù)的邊框模型。當(dāng)處于交互狀態(tài)(按下鼠標(biāo))時(shí),渲染邊框模型;當(dāng)交互狀態(tài)結(jié)束(釋放鼠標(biāo))時(shí),開(kāi)始渲染體繪制模型;當(dāng)體繪制模型渲染完成后,替換邊框模型。使用兩層LOD模型,用戶(hù)在交互時(shí)可以根據(jù)邊框模型判斷當(dāng)前體數(shù)據(jù)的位置和角度,同時(shí),邊框模型的渲染在主進(jìn)程上進(jìn)行,只需要極小的開(kāi)銷(xiāo),并且不需要圖片合成,因此,可以滿(mǎn)足實(shí)時(shí)交互的需求。

    圖5 兩層LOD模型

    3 實(shí)驗(yàn)分析

    為了研究算法的性能,本文設(shè)計(jì)了節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)和跨節(jié)點(diǎn)并行實(shí)驗(yàn)。節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)配置為高性能Intel服務(wù)器,其中,CPU為4個(gè)20核心的Intel(R) Xeon(R) E5-2698 v4@ 2.20 GHz,內(nèi)存大小為500 GB。跨節(jié)點(diǎn)并行實(shí)驗(yàn)配置為國(guó)產(chǎn)高性能服務(wù)器,其中,CPU為飛騰處理器,內(nèi)存大小為120 GB。所有的算法均使用C/C++語(yǔ)言實(shí)現(xiàn),并行框架采用MPI,編譯器的版本為gcc/g++ 8.3,操作系統(tǒng)為64位Ubuntu 16.04。所有的算法執(zhí)行時(shí)間通過(guò)C語(yǔ)言API函數(shù)ftime()獲取。同時(shí),為了避免偶然性,所有的結(jié)果均通過(guò)多次重復(fù)實(shí)驗(yàn)計(jì)算平均值得出。

    3.1 數(shù)據(jù)分割算法性能

    為了研究數(shù)據(jù)分割算法性能,采用節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)配置,從數(shù)據(jù)分割開(kāi)銷(xiāo)、負(fù)載均衡測(cè)試和VTK(visualization toolkit)算法對(duì)比3個(gè)方面設(shè)計(jì)實(shí)驗(yàn)。首先,在不同進(jìn)程數(shù)量下研究數(shù)據(jù)分割后的網(wǎng)格數(shù)量增加情況;然后,對(duì)數(shù)據(jù)分割算法的負(fù)載均衡能力進(jìn)行測(cè)試;最后,對(duì)比了本文算法與VTK算法的性能。

    3.1.1 數(shù)據(jù)分割開(kāi)銷(xiāo)

    在構(gòu)造局部KD樹(shù)時(shí),與分割平面相交的單元會(huì)被復(fù)制一份,并被劃分到分割平面的兩側(cè)。因此,數(shù)據(jù)分割后,網(wǎng)格單元總數(shù)會(huì)增加。表1給出了使用不同數(shù)量的進(jìn)程分割數(shù)據(jù)后的網(wǎng)格規(guī)模。與預(yù)期相符,數(shù)據(jù)分割后,網(wǎng)格規(guī)模增大;并且,隨著進(jìn)程數(shù)量增加,更多的網(wǎng)格單元與分割平面相交,產(chǎn)生了更多的ghost單元,因此,網(wǎng)格規(guī)模隨之增大。ghost單元是數(shù)據(jù)分割開(kāi)銷(xiāo)的重要部分,直接影響后續(xù)并行體繪制算法的效率。

    表1 網(wǎng)格規(guī)模

    3.1.2 負(fù)載均衡測(cè)試

    一個(gè)好的數(shù)據(jù)分割算法應(yīng)該具有良好的負(fù)載均衡能力。本節(jié)將最多網(wǎng)格進(jìn)程與最少網(wǎng)格進(jìn)程的網(wǎng)格單元數(shù)量差值作為衡量標(biāo)準(zhǔn),該值越小,說(shuō)明算法負(fù)載均衡能力越好。表2給出了不同進(jìn)程數(shù)量下的網(wǎng)格單元數(shù)量差值,結(jié)果顯示,所有的差值均在4 000以?xún)?nèi),全局KD樹(shù)葉子節(jié)點(diǎn)之間的網(wǎng)格單元數(shù)量大致相等,本文數(shù)據(jù)分割算法的負(fù)載均衡能力較好。

    表2 負(fù)載均衡測(cè)試結(jié)果

    3.1.3 VTK算法對(duì)比

    為了研究本文中的數(shù)據(jù)分割算法性能,將開(kāi)源可視化框架VTK中的D3(vtkDistributedDataFilter)類(lèi)作為對(duì)比,在不同進(jìn)程數(shù)量下進(jìn)行實(shí)驗(yàn),結(jié)果如圖6所示。對(duì)于VTK算法,當(dāng)進(jìn)程數(shù)量在2個(gè)和8個(gè)之間時(shí),算法執(zhí)行時(shí)間有所下降;但是,當(dāng)進(jìn)程數(shù)量超過(guò)8個(gè)時(shí),算法執(zhí)行時(shí)間反而隨著進(jìn)程數(shù)量的增加而增加。本文算法則是隨著進(jìn)程數(shù)量的增加,執(zhí)行時(shí)間降低。出現(xiàn)該結(jié)果的原因是,VTK算法以塊數(shù)據(jù)為單位并行讀取數(shù)據(jù),為了確保每個(gè)進(jìn)程上的網(wǎng)格數(shù)量大致相等,需要在數(shù)據(jù)讀取完畢后進(jìn)行一次同步操作;而本文算法使用預(yù)處理程序統(tǒng)計(jì)每個(gè)數(shù)據(jù)塊的網(wǎng)格數(shù)量,確保了每個(gè)進(jìn)程上讀取的網(wǎng)格數(shù)量大致相等,不需要同步。隨著進(jìn)程數(shù)量增加,VTK算法的同步操作需要更大的通信開(kāi)銷(xiāo),算法執(zhí)行時(shí)間因此增加;與VTK算法相比,本文算法少一次數(shù)據(jù)同步開(kāi)銷(xiāo),隨著進(jìn)程數(shù)量增加,局部KD樹(shù)構(gòu)造時(shí)間下降,算法執(zhí)行時(shí)間隨之下降,性能優(yōu)勢(shì)更加明顯。

    圖6 數(shù)據(jù)分割算法性能對(duì)比

    3.2 并行體繪制算法性能

    為了研究本文的并行體繪制算法性能,首先,使用節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)配置,測(cè)試算法在不同進(jìn)程數(shù)量下的算法執(zhí)行時(shí)間和加速比;然后,使用跨節(jié)點(diǎn)并行實(shí)驗(yàn)配置,測(cè)試算法在大規(guī)模網(wǎng)格體繪制下的性能,并結(jié)合實(shí)驗(yàn)數(shù)據(jù)分析了算法的效率和瓶頸。

    3.2.1 算法性能

    由于本文使用的實(shí)驗(yàn)數(shù)據(jù)均是曲面網(wǎng)格,經(jīng)過(guò)四面體化處理后,網(wǎng)格規(guī)模將會(huì)大幅度增加,分別為DATASET1(113 920 117)、DATASET2(46 412 858)、DATASET3(25 984 608)。所有的并行體繪制圖片分辨率均為1 000×800。表3給出了本文算法在不同進(jìn)程數(shù)量下的交互時(shí)間和繪制時(shí)間,結(jié)果顯示,隨著進(jìn)程數(shù)量增加,算法執(zhí)行時(shí)間縮短,使用64個(gè)進(jìn)程并行繪制時(shí)獲得最佳性能。由于使用了兩層LOD交互模型,交互開(kāi)銷(xiāo)非常低,均為毫秒級(jí)別,并且基本不受進(jìn)程數(shù)量影響,可以滿(mǎn)足實(shí)時(shí)交互需求。其中,在64個(gè)進(jìn)程下,飛行器數(shù)據(jù)DATASET3周?chē)牧鲌?chǎng)體繪制結(jié)果如圖7所示。

    圖7 飛行器DATASET3周?chē)牧鲌?chǎng)體繪制結(jié)果(64個(gè)進(jìn)程)

    表3 并行體繪制算法性能

    3.2.2 加速比

    為了進(jìn)一步研究算法性能和瓶頸,統(tǒng)計(jì)了本文算法相對(duì)于串行算法的加速比。如圖8所示,當(dāng)進(jìn)程數(shù)量在8個(gè)以?xún)?nèi)時(shí),增加進(jìn)程數(shù)量,算法性能提升不明顯;當(dāng)進(jìn)程數(shù)量大于8個(gè)時(shí),算法加速比開(kāi)始明顯提升;當(dāng)進(jìn)程數(shù)量為64個(gè)時(shí),獲得最大平均加速比,為37.6。這是因?yàn)?,進(jìn)程數(shù)量在8個(gè)以?xún)?nèi)時(shí),單個(gè)進(jìn)程需要處理的網(wǎng)格單元數(shù)量較大,繪制階段占據(jù)整個(gè)算法執(zhí)行時(shí)間的絕大部分;進(jìn)程數(shù)量大于8個(gè)后,當(dāng)進(jìn)程數(shù)量翻番時(shí),單個(gè)進(jìn)程需要處理的網(wǎng)格數(shù)量減半,繪制階段占據(jù)整個(gè)算法執(zhí)行時(shí)間的比例明顯下降,加速比隨之明顯提升。

    圖8 并行體繪制算法加速比

    3.2.3 跨節(jié)點(diǎn)性能

    由于單個(gè)計(jì)算節(jié)點(diǎn)性能有限,為了研究大規(guī)模網(wǎng)格體繪制性能,本節(jié)實(shí)驗(yàn)采用了32個(gè)計(jì)算節(jié)點(diǎn)。其中,使用的3個(gè)非結(jié)構(gòu)網(wǎng)格數(shù)據(jù)規(guī)模為10億級(jí)別,分別為yA31(12.1億)、DATASET4(29.5億)、DATASET5(46.5億),所有的并行體繪制圖片分辨率均為1 000×800。表4給出了實(shí)驗(yàn)結(jié)果,其中,“-”表示進(jìn)程數(shù)量太少,不足以計(jì)算體繪制結(jié)果。根據(jù)實(shí)驗(yàn)結(jié)果可知,在不同進(jìn)程數(shù)量下,交互開(kāi)銷(xiāo)基本一致,并且都在毫秒級(jí)別,滿(mǎn)足了實(shí)時(shí)交互需求。其中,行星yA31撞擊地球海面模擬數(shù)據(jù)的并行體繪制結(jié)果如圖9所示。

    圖9 行星yA31撞擊地球海面模擬數(shù)據(jù)的并行體繪制結(jié)果

    表4 并行體繪制算法性能(32個(gè)節(jié)點(diǎn))

    4 結(jié)束語(yǔ)

    本文提出了一種基于sort-last架構(gòu)的非結(jié)構(gòu)網(wǎng)格并行體繪制算法。整個(gè)算法分為數(shù)據(jù)分割、繪制和圖片合成3個(gè)階段。在數(shù)據(jù)分割階段,設(shè)計(jì)了基于KD樹(shù)的并行體數(shù)據(jù)分割算法,首先,使用預(yù)處理程序確保每個(gè)進(jìn)程讀取的網(wǎng)格數(shù)量大致相等;然后,在每個(gè)進(jìn)程上同步構(gòu)造局部KD樹(shù);最后,使用MPI API函數(shù)進(jìn)行數(shù)據(jù)交換并合成全局KD樹(shù)。此外,還根據(jù)相機(jī)位置和分割平面計(jì)算了全局KD樹(shù)葉子節(jié)點(diǎn)的可見(jiàn)性順序。在繪制階段,在每個(gè)進(jìn)程上建立可視化管線(xiàn),使用高效的線(xiàn)程并行投影四面體算法計(jì)算體繪制圖片。在圖片合成階段,設(shè)計(jì)了基于二叉樹(shù)的圖像合成算法,根據(jù)可見(jiàn)性順序?qū)w繪制圖片分組合成。為了提升用戶(hù)的交互體驗(yàn),本文還設(shè)計(jì)了兩層LOD模型,處于交互狀態(tài)時(shí),渲染開(kāi)銷(xiāo)較低的邊框模型;停止交互后,再渲染開(kāi)銷(xiāo)較大的體繪制模型。

    在Intel服務(wù)器和國(guó)產(chǎn)服務(wù)器上 測(cè)試了本文的數(shù)據(jù)分割算法和并行體繪制算法。對(duì)于數(shù)據(jù)分割算法,首先,研究了不同進(jìn)程數(shù)量下的網(wǎng)格規(guī)模增加情況;然后,測(cè)試了數(shù)據(jù)分割算法的負(fù)載均衡能力;最后,對(duì)比了本文算法與VTK算法的性能。實(shí)驗(yàn)結(jié)果顯示,本文算法在不同進(jìn)程數(shù)量下可保持良好的負(fù)載均衡能力;同時(shí),與VTK算法相比,本文算法更具性能優(yōu)勢(shì)。對(duì)于并行體繪制算法,設(shè)計(jì)了節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)和跨節(jié)點(diǎn)并行實(shí)驗(yàn),首先,測(cè)試了在節(jié)點(diǎn)內(nèi)并行實(shí)驗(yàn)配置下算法的執(zhí)行時(shí)間,并計(jì)算了本文算法相對(duì)于串行體繪制算法的加速比;然后,測(cè)試了在32個(gè)計(jì)算節(jié)點(diǎn)并行實(shí)驗(yàn)配置下算法的執(zhí)行時(shí)間。實(shí)驗(yàn)結(jié)果顯示,本文算法在64個(gè)進(jìn)程下可以獲得的最大平均加速比為37.6,由于采用了兩層LOD模型,交互時(shí)間均控制在毫秒級(jí)別,本文算法可以很好地應(yīng)用于大規(guī)模非結(jié)構(gòu)網(wǎng)格體可視化,滿(mǎn)足實(shí)時(shí)交互的需求。

    本文實(shí)現(xiàn)了基于sort-last架構(gòu)的并行體可視化原型系統(tǒng),但是,還存在一些需要繼續(xù)優(yōu)化的地方。在數(shù)據(jù)分割算法中,并行計(jì)算分割平面的方向和位置是一個(gè)耗時(shí)的過(guò)程,下一階段的研究工作可以考慮保存這些KD樹(shù)分割平面信息,避免同一個(gè)數(shù)據(jù)被再次分割時(shí)重復(fù)計(jì)算分割平面。在圖片合成算法中,使用over運(yùn)算逐像素串行地合成兩張圖片,下一階段的研究工作可以考慮使用線(xiàn)程并行的方法優(yōu)化over運(yùn)算。在用戶(hù)交互體驗(yàn)優(yōu)化方面,由于體繪制模型渲染需要極大的開(kāi)銷(xiāo),下一階段的研究工作可以考慮過(guò)濾無(wú)效的鼠標(biāo)事件,避免造成無(wú)效的體繪制更新。

    猜你喜歡
    進(jìn)程繪制葉子
    Art on coffee cups
    債券市場(chǎng)對(duì)外開(kāi)放的進(jìn)程與展望
    葉子
    最后一片葉子(節(jié)選)
    放學(xué)后
    一見(jiàn)傾心的優(yōu)雅——葉子
    海峽姐妹(2016年1期)2016-02-27 15:15:13
    Word Fun
    在轉(zhuǎn)變中繪制新藍(lán)圖
    社會(huì)進(jìn)程中的新聞學(xué)探尋
    我國(guó)高等教育改革進(jìn)程與反思
    日日干狠狠操夜夜爽| kizo精华| 亚洲av熟女| 精品久久久久久久久久免费视频| av在线天堂中文字幕| 熟妇人妻久久中文字幕3abv| 亚洲欧美精品自产自拍| av在线天堂中文字幕| 两性午夜刺激爽爽歪歪视频在线观看| 嘟嘟电影网在线观看| 少妇人妻一区二区三区视频| 精品99又大又爽又粗少妇毛片| 看非洲黑人一级黄片| 联通29元200g的流量卡| 午夜免费激情av| 变态另类成人亚洲欧美熟女| 女人被狂操c到高潮| 久久6这里有精品| 国产黄a三级三级三级人| 日韩欧美三级三区| 成人高潮视频无遮挡免费网站| 一本精品99久久精品77| 久99久视频精品免费| 99九九线精品视频在线观看视频| 村上凉子中文字幕在线| 不卡视频在线观看欧美| 国产单亲对白刺激| 欧美成人一区二区免费高清观看| 最新中文字幕久久久久| 亚洲av二区三区四区| 一本久久中文字幕| 久久婷婷人人爽人人干人人爱| 老熟妇乱子伦视频在线观看| 天堂影院成人在线观看| av又黄又爽大尺度在线免费看 | 久久久久久大精品| 春色校园在线视频观看| 免费无遮挡裸体视频| 国产乱人偷精品视频| 变态另类丝袜制服| 人人妻人人澡人人爽人人夜夜 | 国产精品电影一区二区三区| 久久久久网色| 天美传媒精品一区二区| 村上凉子中文字幕在线| 岛国毛片在线播放| 男女那种视频在线观看| 国产成人影院久久av| 日韩精品青青久久久久久| 一级毛片aaaaaa免费看小| 亚洲最大成人手机在线| 久久人人精品亚洲av| 看十八女毛片水多多多| 熟女人妻精品中文字幕| 国产黄色小视频在线观看| 热99在线观看视频| 欧美日韩国产亚洲二区| 联通29元200g的流量卡| 午夜激情欧美在线| 男人舔奶头视频| 99在线视频只有这里精品首页| 寂寞人妻少妇视频99o| 一级毛片aaaaaa免费看小| 国产单亲对白刺激| 少妇熟女欧美另类| 久久99热这里只有精品18| 欧美日韩一区二区视频在线观看视频在线 | 在线免费观看的www视频| 亚洲中文字幕一区二区三区有码在线看| 欧美3d第一页| 亚洲精品色激情综合| 女同久久另类99精品国产91| 丝袜喷水一区| 中国美女看黄片| 哪个播放器可以免费观看大片| 老熟妇乱子伦视频在线观看| 亚洲图色成人| 综合色丁香网| 永久网站在线| 亚洲久久久久久中文字幕| 国产精品一区www在线观看| 青春草亚洲视频在线观看| 美女国产视频在线观看| 免费av不卡在线播放| 观看免费一级毛片| 99热全是精品| 日韩欧美精品免费久久| 日韩成人av中文字幕在线观看| 嫩草影院精品99| 我要看日韩黄色一级片| 亚洲欧洲日产国产| 午夜福利在线在线| 国产乱人视频| 波多野结衣高清无吗| 神马国产精品三级电影在线观看| 国产伦理片在线播放av一区 | 国内精品宾馆在线| 日日摸夜夜添夜夜爱| 久久久久久久久久黄片| 91aial.com中文字幕在线观看| 成人毛片60女人毛片免费| 在线观看av片永久免费下载| 久久鲁丝午夜福利片| 国产亚洲av片在线观看秒播厂 | 内地一区二区视频在线| 成人av在线播放网站| 能在线免费看毛片的网站| 亚洲精品国产av成人精品| 高清毛片免费观看视频网站| 一区二区三区四区激情视频 | videossex国产| 亚洲美女视频黄频| 国内揄拍国产精品人妻在线| 亚洲av中文av极速乱| kizo精华| 在线国产一区二区在线| 中文字幕久久专区| 久久久久久久久久久丰满| 欧美成人一区二区免费高清观看| 成人午夜高清在线视频| 天美传媒精品一区二区| 两个人视频免费观看高清| 亚洲av男天堂| 边亲边吃奶的免费视频| 尾随美女入室| 极品教师在线视频| 国内精品宾馆在线| 少妇猛男粗大的猛烈进出视频 | 在线观看一区二区三区| 午夜a级毛片| 18禁黄网站禁片免费观看直播| 日本与韩国留学比较| 成人三级黄色视频| 国产精品福利在线免费观看| 日韩精品青青久久久久久| 中文字幕av成人在线电影| 午夜福利高清视频| 永久网站在线| 小说图片视频综合网站| 日韩欧美在线乱码| 国产在线精品亚洲第一网站| 国产久久久一区二区三区| 小蜜桃在线观看免费完整版高清| 网址你懂的国产日韩在线| 人妻制服诱惑在线中文字幕| 伦精品一区二区三区| 99久久精品一区二区三区| 日韩视频在线欧美| 国产乱人偷精品视频| 麻豆av噜噜一区二区三区| 国产美女午夜福利| 久久久久性生活片| 欧美色视频一区免费| 美女cb高潮喷水在线观看| 嫩草影院入口| 六月丁香七月| 亚洲欧美日韩卡通动漫| 狂野欧美激情性xxxx在线观看| 男女边吃奶边做爰视频| 亚洲内射少妇av| 天堂√8在线中文| 亚洲欧洲日产国产| 男女边吃奶边做爰视频| 久久精品综合一区二区三区| 一级二级三级毛片免费看| av卡一久久| 国内精品宾馆在线| 午夜激情欧美在线| 国产亚洲欧美98| 女人被狂操c到高潮| 午夜福利成人在线免费观看| 丝袜喷水一区| 免费一级毛片在线播放高清视频| 国产精品人妻久久久久久| 亚洲成av人片在线播放无| 日韩欧美在线乱码| 99精品在免费线老司机午夜| 大又大粗又爽又黄少妇毛片口| 精品少妇黑人巨大在线播放 | 中文字幕人妻熟人妻熟丝袜美| 亚洲在线观看片| 日韩大尺度精品在线看网址| 又黄又爽又刺激的免费视频.| 欧美最黄视频在线播放免费| 尾随美女入室| .国产精品久久| 精品不卡国产一区二区三区| 不卡一级毛片| 国产真实伦视频高清在线观看| 波多野结衣高清无吗| 国产亚洲5aaaaa淫片| 亚洲欧美日韩无卡精品| 久久精品国产自在天天线| 成年女人永久免费观看视频| 亚洲aⅴ乱码一区二区在线播放| 久久久色成人| 国产精品一二三区在线看| 欧美色视频一区免费| 久久久色成人| 午夜福利视频1000在线观看| 嘟嘟电影网在线观看| 精品久久久噜噜| 免费人成在线观看视频色| 中文资源天堂在线| 大香蕉久久网| 欧美日韩综合久久久久久| 成人无遮挡网站| 性插视频无遮挡在线免费观看| 女人被狂操c到高潮| 久久精品国产亚洲网站| 99热6这里只有精品| 色视频www国产| 亚洲精品国产av成人精品| 亚洲精品456在线播放app| 丝袜喷水一区| 精品99又大又爽又粗少妇毛片| 校园春色视频在线观看| 熟女人妻精品中文字幕| 观看美女的网站| 最近中文字幕高清免费大全6| 少妇猛男粗大的猛烈进出视频 | 国产精品免费一区二区三区在线| 国产蜜桃级精品一区二区三区| 成人三级黄色视频| 国产精品福利在线免费观看| 国产av不卡久久| 欧美性猛交╳xxx乱大交人| 六月丁香七月| 麻豆国产av国片精品| 国产精品永久免费网站| 精品久久久久久久久久久久久| 中文字幕精品亚洲无线码一区| 国内精品宾馆在线| 成人av在线播放网站| 国产v大片淫在线免费观看| 久久久精品大字幕| www.av在线官网国产| 国产亚洲精品av在线| av在线亚洲专区| 在线观看免费视频日本深夜| 99久久久亚洲精品蜜臀av| 黄片wwwwww| 国产精品一区二区三区四区久久| av免费在线看不卡| 97超视频在线观看视频| 变态另类丝袜制服| 99久久无色码亚洲精品果冻| 精品无人区乱码1区二区| 又爽又黄无遮挡网站| 国产探花在线观看一区二区| 免费av观看视频| 午夜视频国产福利| 波野结衣二区三区在线| 亚洲av中文av极速乱| 男女做爰动态图高潮gif福利片| 久久久精品94久久精品| 精品久久久久久久末码| 亚洲国产色片| 美女高潮的动态| 中出人妻视频一区二区| 国产高清三级在线| 在线国产一区二区在线| av.在线天堂| 精品人妻视频免费看| 爱豆传媒免费全集在线观看| 免费看美女性在线毛片视频| 女人十人毛片免费观看3o分钟| 最近手机中文字幕大全| 人妻少妇偷人精品九色| 精品99又大又爽又粗少妇毛片| 高清在线视频一区二区三区 | a级毛片免费高清观看在线播放| 男插女下体视频免费在线播放| 久久精品国产99精品国产亚洲性色| 免费人成在线观看视频色| 三级男女做爰猛烈吃奶摸视频| 欧美精品一区二区大全| 亚洲欧美成人综合另类久久久 | 此物有八面人人有两片| 亚洲av男天堂| 91久久精品国产一区二区三区| 亚洲va在线va天堂va国产| 欧美在线一区亚洲| 麻豆国产av国片精品| 国产精品美女特级片免费视频播放器| 成人美女网站在线观看视频| 中文资源天堂在线| 国产爱豆传媒在线观看| 亚洲av免费在线观看| 嫩草影院新地址| 国产一级毛片在线| 看片在线看免费视频| 美女脱内裤让男人舔精品视频 | 91aial.com中文字幕在线观看| 在线观看一区二区三区| 99九九线精品视频在线观看视频| 99久国产av精品国产电影| 成年免费大片在线观看| 麻豆一二三区av精品| 国产熟女欧美一区二区| 五月伊人婷婷丁香| 国产成人福利小说| 69人妻影院| 亚洲欧美中文字幕日韩二区| 精品久久久久久成人av| 日日摸夜夜添夜夜添av毛片| 亚洲中文字幕一区二区三区有码在线看| avwww免费| 欧美zozozo另类| 久久亚洲精品不卡| 日本爱情动作片www.在线观看| 日本三级黄在线观看| 国产午夜精品论理片| 亚洲精品乱码久久久久久按摩| 久久久成人免费电影| 丰满的人妻完整版| 亚洲精品国产成人久久av| 男人和女人高潮做爰伦理| 99久国产av精品| 欧美+日韩+精品| 最好的美女福利视频网| 色哟哟·www| 最后的刺客免费高清国语| 国产精品永久免费网站| 色综合色国产| 亚洲自拍偷在线| 日本免费a在线| 欧美色欧美亚洲另类二区| 欧美变态另类bdsm刘玥| 不卡一级毛片| 亚洲av免费在线观看| 一区二区三区免费毛片| 国产91av在线免费观看| 国产精品99久久久久久久久| 亚洲精品久久久久久婷婷小说 | 国产探花极品一区二区| 成人毛片a级毛片在线播放| 亚洲欧美成人综合另类久久久 | 青春草亚洲视频在线观看| 国产黄色视频一区二区在线观看 | 特大巨黑吊av在线直播| 不卡视频在线观看欧美| 在线观看av片永久免费下载| 国产一区二区亚洲精品在线观看| 秋霞在线观看毛片| 国产精品99久久久久久久久| 亚洲国产精品sss在线观看| 欧美性猛交╳xxx乱大交人| 亚洲成a人片在线一区二区| 欧美日本视频| 日本与韩国留学比较| 69av精品久久久久久| 国产单亲对白刺激| 搞女人的毛片| 国产午夜精品久久久久久一区二区三区| 久久久久久久午夜电影| 精品欧美国产一区二区三| 国产乱人偷精品视频| 久久鲁丝午夜福利片| 26uuu在线亚洲综合色| 日韩av在线大香蕉| 免费黄网站久久成人精品| 熟妇人妻久久中文字幕3abv| 中文欧美无线码| 欧美日韩乱码在线| 亚洲欧美精品综合久久99| 色综合色国产| 久久亚洲精品不卡| 免费搜索国产男女视频| 级片在线观看| av.在线天堂| 久久久久久久久久黄片| av女优亚洲男人天堂| 欧美变态另类bdsm刘玥| 又粗又爽又猛毛片免费看| 一级毛片电影观看 | 色噜噜av男人的天堂激情| 中国国产av一级| 国产视频内射| 久久久久国产网址| av免费观看日本| 国产精品精品国产色婷婷| 中文字幕免费在线视频6| 免费av不卡在线播放| av免费在线看不卡| 一本一本综合久久| 97超碰精品成人国产| 国产三级在线视频| a级毛片a级免费在线| 欧美3d第一页| 国产白丝娇喘喷水9色精品| 欧美精品国产亚洲| 中文字幕精品亚洲无线码一区| 亚洲最大成人中文| 免费电影在线观看免费观看| 99riav亚洲国产免费| 又黄又爽又刺激的免费视频.| 亚洲国产高清在线一区二区三| 男女边吃奶边做爰视频| 国产单亲对白刺激| 白带黄色成豆腐渣| 波多野结衣高清作品| 国产日本99.免费观看| 白带黄色成豆腐渣| 中文精品一卡2卡3卡4更新| 国产日本99.免费观看| 亚洲最大成人中文| 国产视频首页在线观看| 级片在线观看| 亚洲欧美精品自产自拍| 亚洲av成人av| 人妻系列 视频| 国产精品一区二区三区四区免费观看| 久久中文看片网| 三级毛片av免费| 少妇熟女aⅴ在线视频| 午夜a级毛片| 99国产精品一区二区蜜桃av| 在线播放国产精品三级| 国产极品天堂在线| av视频在线观看入口| 在线播放国产精品三级| 日韩欧美 国产精品| 免费看美女性在线毛片视频| 欧美色欧美亚洲另类二区| 欧美激情国产日韩精品一区| 国产高清激情床上av| 老司机影院成人| 欧美日本视频| 搡女人真爽免费视频火全软件| 国产成人影院久久av| 啦啦啦韩国在线观看视频| 欧美日本亚洲视频在线播放| 国产精品久久视频播放| 久久久欧美国产精品| 精品久久久久久久久亚洲| 精品久久久久久久末码| 国产精品综合久久久久久久免费| 最新中文字幕久久久久| 国产成人影院久久av| 国产伦在线观看视频一区| 高清日韩中文字幕在线| 麻豆精品久久久久久蜜桃| 熟女电影av网| 日本爱情动作片www.在线观看| 亚洲欧美日韩高清在线视频| 久久国产乱子免费精品| 秋霞在线观看毛片| 一进一出抽搐gif免费好疼| 99久久精品国产国产毛片| 欧美人与善性xxx| 亚洲自偷自拍三级| ponron亚洲| 人妻久久中文字幕网| 中文亚洲av片在线观看爽| 丝袜美腿在线中文| 男女那种视频在线观看| 日韩制服骚丝袜av| 校园春色视频在线观看| 国产成人精品久久久久久| 99九九线精品视频在线观看视频| 久久精品国产鲁丝片午夜精品| 大型黄色视频在线免费观看| 夜夜爽天天搞| kizo精华| av又黄又爽大尺度在线免费看 | 少妇被粗大猛烈的视频| 亚洲最大成人手机在线| 伊人久久精品亚洲午夜| 少妇的逼好多水| 久久精品国产亚洲av天美| 日本黄大片高清| 丝袜美腿在线中文| 日韩成人伦理影院| 丰满的人妻完整版| 少妇熟女欧美另类| 成人亚洲欧美一区二区av| 欧美性猛交╳xxx乱大交人| 国产亚洲av片在线观看秒播厂 | 欧美在线一区亚洲| 精品久久久久久久久久免费视频| www日本黄色视频网| 欧美xxxx性猛交bbbb| 欧美日韩一区二区视频在线观看视频在线 | 性插视频无遮挡在线免费观看| 天堂av国产一区二区熟女人妻| 少妇丰满av| 精品无人区乱码1区二区| 永久网站在线| 69人妻影院| 99精品在免费线老司机午夜| 波多野结衣高清无吗| 成人无遮挡网站| 色5月婷婷丁香| 长腿黑丝高跟| 亚洲精品乱码久久久v下载方式| 成人毛片a级毛片在线播放| 国产精品久久久久久av不卡| 日韩一区二区视频免费看| 婷婷六月久久综合丁香| 成年免费大片在线观看| 亚洲一区二区三区色噜噜| 国产高清有码在线观看视频| 波多野结衣巨乳人妻| 免费av毛片视频| 狂野欧美白嫩少妇大欣赏| 欧美区成人在线视频| 亚洲av第一区精品v没综合| 日韩一区二区视频免费看| 日日撸夜夜添| 国产精品久久久久久久久免| 国产免费一级a男人的天堂| 在线观看午夜福利视频| 波野结衣二区三区在线| 一个人观看的视频www高清免费观看| 久久久久免费精品人妻一区二区| 国产av不卡久久| 精品久久久久久久久久久久久| 亚洲欧美日韩无卡精品| 国产麻豆成人av免费视频| 天堂中文最新版在线下载 | 菩萨蛮人人尽说江南好唐韦庄 | 99国产精品一区二区蜜桃av| kizo精华| 哪里可以看免费的av片| 国产综合懂色| 热99在线观看视频| 亚洲av不卡在线观看| 五月伊人婷婷丁香| 一级av片app| 日本五十路高清| 一进一出抽搐动态| 悠悠久久av| 1024手机看黄色片| 99视频精品全部免费 在线| 好男人视频免费观看在线| 国产白丝娇喘喷水9色精品| 深爱激情五月婷婷| 亚洲人成网站在线观看播放| 国产精品爽爽va在线观看网站| 国产激情偷乱视频一区二区| 99久久中文字幕三级久久日本| 精品99又大又爽又粗少妇毛片| 少妇人妻一区二区三区视频| 婷婷色av中文字幕| 人人妻人人澡欧美一区二区| 久99久视频精品免费| 久久人人精品亚洲av| 亚洲av不卡在线观看| 久久99热这里只有精品18| 亚洲图色成人| 精品国产三级普通话版| 高清在线视频一区二区三区 | 国产色婷婷99| 99久久中文字幕三级久久日本| 国内久久婷婷六月综合欲色啪| 3wmmmm亚洲av在线观看| 干丝袜人妻中文字幕| 日本与韩国留学比较| 韩国av在线不卡| 亚洲精品亚洲一区二区| 好男人在线观看高清免费视频| 日本黄大片高清| 亚洲第一电影网av| 国产真实伦视频高清在线观看| 一本久久中文字幕| 欧美日本视频| 麻豆国产97在线/欧美| 日韩大尺度精品在线看网址| 爱豆传媒免费全集在线观看| 亚洲天堂国产精品一区在线| 久久这里只有精品中国| 亚洲人成网站在线播| 美女大奶头视频| 成年av动漫网址| 菩萨蛮人人尽说江南好唐韦庄 | 99九九线精品视频在线观看视频| 欧美高清成人免费视频www| 淫秽高清视频在线观看| 麻豆一二三区av精品| 成人特级av手机在线观看| 亚洲性久久影院| 青青草视频在线视频观看| 在线播放无遮挡| 久久久久久久午夜电影| 国产精品野战在线观看| 长腿黑丝高跟| 大又大粗又爽又黄少妇毛片口| 美女黄网站色视频| 日韩大尺度精品在线看网址| 一级毛片电影观看 | 一本久久中文字幕| av.在线天堂| 国产亚洲av嫩草精品影院| 欧美日韩一区二区视频在线观看视频在线 | 91狼人影院| 少妇裸体淫交视频免费看高清| 欧美+日韩+精品| 我要搜黄色片| 欧美+日韩+精品| 狠狠狠狠99中文字幕| 欧美最新免费一区二区三区| 久久久久九九精品影院| 两个人的视频大全免费| 热99re8久久精品国产| 村上凉子中文字幕在线| 蜜桃久久精品国产亚洲av| 日日撸夜夜添| 欧美潮喷喷水| 久久综合国产亚洲精品| 免费无遮挡裸体视频| 一本久久精品| 两个人的视频大全免费| 少妇熟女欧美另类| 美女大奶头视频|