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

    基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的并行字符串相似性連接方法

    2021-04-01 01:19:00徐坤浩聶鐵錚申德榮
    關(guān)鍵詞:字符串相似性閾值

    徐坤浩 聶鐵錚 申德榮 寇 月 于 戈

    (東北大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 沈陽(yáng) 110169)

    (xukunhao725@163.com)

    隨著傳統(tǒng)互聯(lián)網(wǎng)的發(fā)展和移動(dòng)互聯(lián)網(wǎng)的出現(xiàn),數(shù)據(jù)量迅速變大,“大數(shù)據(jù)”的概念逐漸被人們熟知.但大量的數(shù)據(jù)也對(duì)傳統(tǒng)的數(shù)據(jù)存儲(chǔ)和處理帶來(lái)了新的挑戰(zhàn).為了更快地處理大數(shù)據(jù),人們采用例如MapReduce和HDFS(Hadoop distributed file system)等分布式的策略來(lái)計(jì)算和存儲(chǔ)大數(shù)據(jù).傳統(tǒng)的CPU性能提升方法已經(jīng)達(dá)到瓶頸,提高主頻和核心數(shù)量等方法對(duì)CPU性能的提升變得越來(lái)越困難,僅由CPU負(fù)責(zé)計(jì)算的傳統(tǒng)相似性連接算法的處理速度已經(jīng)漸漸滿足不了用戶的需求.近年來(lái),GPU的處理性能和并行處理單元集成度提升迅速,更多的算術(shù)邏輯單元使得GPU的綜合計(jì)算性能遠(yuǎn)超CPU.GPU能夠極大地解決CPU處理能力不足的問(wèn)題,因此基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的處理模式正成為未來(lái)的發(fā)展趨勢(shì).

    相似性連接處理技術(shù)是對(duì)來(lái)自不同數(shù)據(jù)集的2個(gè)對(duì)象計(jì)算相似度,并以相似度是否達(dá)到指定閾值作為對(duì)象間的連接條件.目前,相似性連接技術(shù)已經(jīng)被廣泛地應(yīng)用在搜索引擎、數(shù)據(jù)集成以及知識(shí)庫(kù)構(gòu)建等領(lǐng)域.根據(jù)計(jì)算對(duì)象間相似度的算法不同,常見(jiàn)的相似性連接可以分為字符串相似性連接、集合相似性連接、向量相似性連接以及圖相似性連接,其中以字符串相似性連接應(yīng)用最為廣泛.字符串的相似性可以通過(guò)Jaccard相似度等多種相似性度量進(jìn)行計(jì)算.傳統(tǒng)的相似性連接處理技術(shù)一般使用過(guò)濾-驗(yàn)證框架,包含過(guò)濾和驗(yàn)證2個(gè)部分:在過(guò)濾階段設(shè)計(jì)高效的過(guò)濾算法將大量不可能符合相似度要求的數(shù)據(jù)記錄對(duì)過(guò)濾剔除,大幅減少候選對(duì)的數(shù)量;在驗(yàn)證階段,計(jì)算每個(gè)候選對(duì)的相似度,將滿足相似度條件的候選對(duì)添加至最后結(jié)果.

    目前,對(duì)相似性連接算法的優(yōu)化主要集中在過(guò)濾階段的優(yōu)化,通過(guò)對(duì)過(guò)濾算法的優(yōu)化來(lái)提升過(guò)濾效果.現(xiàn)有研究工作提出了很多過(guò)濾算法,包括基于倒排索引的計(jì)數(shù)過(guò)濾算法[1]、基于位置的過(guò)濾算法[2]、基于長(zhǎng)度的過(guò)濾算法[3]以及基于前綴的過(guò)濾算法[4].這些算法在一定程度上都提升了過(guò)濾階段的效率,但大部分都是基于串行處理的設(shè)計(jì)思想,處理效率受到了極大的限制.因此,本文主要研究通過(guò)CPU-GPU異構(gòu)體系結(jié)構(gòu)并行處理相似性連接算法,提高相似性連接算法的處理效率.由于CPU與GPU在計(jì)算模型上的巨大區(qū)別,傳統(tǒng)的相似性連接算法無(wú)法直接在GPU上直接運(yùn)行.GPU強(qiáng)大的計(jì)算能力來(lái)源于大量的核心帶來(lái)的高并行度,通過(guò)大量核心并行的執(zhí)行計(jì)算提高任務(wù)處理效率,但GPU存在不適合執(zhí)行復(fù)雜邏輯控制的缺點(diǎn).因此基于GPU實(shí)現(xiàn)相似性連接的加速處理,就必須根據(jù)GPU的處理架構(gòu)特點(diǎn)設(shè)計(jì)相應(yīng)的處理策略和優(yōu)化方法.

    本文主要研究基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的并行相似性連接處理方法,通過(guò)將任務(wù)進(jìn)行分解并運(yùn)行在不同處理器架構(gòu)上,提升任務(wù)并行性,從而提高基于過(guò)濾-驗(yàn)證模型的相似性連接處理效率.本文的主要貢獻(xiàn)有4個(gè)方面:

    1) 提出了基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的并行相似性連接處理策略,充分利用GPU的并行計(jì)算能力和CPU的邏輯計(jì)算能力.

    2) 提出了基于GPU的倒排索引結(jié)構(gòu)和構(gòu)建方法,并采用SoA(struct of arrays)結(jié)構(gòu)提升并行計(jì)算時(shí)倒排索引的構(gòu)建速度.

    3) 提出了面向長(zhǎng)度過(guò)濾和前綴過(guò)濾算法的GPU并行過(guò)濾方法,提高記錄對(duì)的過(guò)濾效率.

    4) 通過(guò)對(duì)比實(shí)驗(yàn)證明了所提出的并行算法可以有效地提升相似性連接中并行處理的執(zhí)行效率,并分析了不同條件下算法的性能表現(xiàn).

    1 相關(guān)工作

    目前,關(guān)于相似性連接技術(shù)的研究工作可以分為基于串行技術(shù)的方法和基于并行技術(shù)的方法.

    基于串行的相似性連接研究主要集中在對(duì)匹配記錄對(duì)過(guò)濾算法的優(yōu)化以及不同類型數(shù)據(jù)的相似性連接算法2個(gè)方面.Rong等人[4]提出了基于全局指令的多前綴過(guò)濾算法.這篇文章使用了流水線全局指令模式,并且提出適合這種模式的多前綴過(guò)濾算法,有效地減少在驗(yàn)證階段需要計(jì)算的候選對(duì)數(shù)量.Cui等人[5]認(rèn)為隨著數(shù)據(jù)實(shí)時(shí)性要求的提升,動(dòng)態(tài)數(shù)據(jù)流會(huì)成為重要的數(shù)據(jù)來(lái)源,所以對(duì)數(shù)據(jù)流的數(shù)據(jù)相似性連接展開(kāi)了研究,提出基于編輯距離和滑動(dòng)窗口語(yǔ)義驗(yàn)證的相似性連接算法,介紹了數(shù)據(jù)流中滑動(dòng)窗口模型的構(gòu)建以及特征提取等關(guān)鍵步驟.Wang等人[6]研究了局部相似性連接的問(wèn)題,該文首先判斷2個(gè)字符串是否具有一定的局部相似度,然后設(shè)計(jì)算法定位二者的最長(zhǎng)相似子串,基于局部相似子串的長(zhǎng)度進(jìn)行字符串的相似性連接.Zhao等人[7]對(duì)數(shù)組形式的數(shù)據(jù)的相似性連接進(jìn)行研究,文章首先將數(shù)組數(shù)據(jù)抽象成高維向量,然后定義了向量的相似性連接定義與度量標(biāo)準(zhǔn);在連接的基礎(chǔ)上進(jìn)行了查詢優(yōu)化,提供高效的查詢操作,并且將這種相似性連接與查詢的算法推廣至圖結(jié)構(gòu)的數(shù)據(jù).Patil等人[8]研究不確定字符串的相似性連接和查詢過(guò)程.以上的相關(guān)研究工作都局限在串行的相似性連接算法上,并沒(méi)有突破串行算法的性能瓶頸,而且針對(duì)特定結(jié)構(gòu)數(shù)據(jù)的相似性連接算法并不具備良好的普適性.

    在并行的相似性連接算法方面,近些年的研究主要集中在借助已有的并行計(jì)算框架以及利用GPU實(shí)現(xiàn)并行化2個(gè)方面.Chen等人[9]利用MapReduce實(shí)現(xiàn)相似性連接,文章提出基于聚類抽樣和KD樹(shù)(k-dimensional tree)的數(shù)據(jù)劃分方式,保證數(shù)據(jù)被平均地分配到節(jié)點(diǎn)上,然后提出基于順序映射和距離的過(guò)濾方式進(jìn)行數(shù)據(jù)過(guò)濾,提升算法執(zhí)行效率的同時(shí)也使算法具有良好的伸縮性.鄧詩(shī)卓等人[10]利用Spark框架和雙前綴過(guò)濾方法實(shí)現(xiàn)了相似性連接算法.Matsumoto等人[11]提出了并行排序算法,同時(shí)利用并行最大最小堆結(jié)構(gòu)在CPU-GPU異構(gòu)體系上實(shí)現(xiàn)了數(shù)據(jù)相似性連接.Johnson等人[12]利用GPU實(shí)現(xiàn)了k-NN算法以及相似性搜索算法,利用GPU進(jìn)行并行的局部數(shù)據(jù)排序,壓縮數(shù)據(jù)集來(lái)減少數(shù)據(jù)傳輸與通信的代價(jià).Feng等人[13]研究文檔相似性連接,針對(duì)文檔數(shù)據(jù)的特殊性和GPU計(jì)算的特點(diǎn)提出了2階段相似性連接算法,根據(jù)TF-IDF算法進(jìn)行排序后對(duì)低頻詞進(jìn)行過(guò)濾,提出適合并行計(jì)算的倒排索引讀取和相似度計(jì)算方法.

    除此以外,GPU也被廣泛地應(yīng)用到其他方面.Alam等人[14]設(shè)計(jì)適合GPU并行計(jì)算的cuPPA算法解決無(wú)標(biāo)度網(wǎng)絡(luò)中遇到的問(wèn)題,算法基于優(yōu)先附著模型,并且可以通過(guò)Hash的方式支持多GPU同時(shí)計(jì)算.Doraiswamy等人[15]使用GPU構(gòu)建索引來(lái)解決時(shí)空數(shù)據(jù)的查詢問(wèn)題,索引覆蓋多個(gè)維度,采用塊存儲(chǔ)的形式加快數(shù)據(jù)查詢速度,并且同時(shí)支持基于異構(gòu)體系結(jié)構(gòu)的查詢請(qǐng)求.

    與已有的工作相比,本文的工作將研究基于并行計(jì)算方式的相似性連接處理策略,突破傳統(tǒng)串行算法的性能瓶頸,設(shè)計(jì)面向GPU的數(shù)據(jù)匹配索引結(jié)構(gòu),以及利用GPU處理架構(gòu)并行計(jì)算模型,提升單處理機(jī)上的并行處理能力,降低分布式環(huán)境的數(shù)據(jù)劃分和網(wǎng)絡(luò)通信代價(jià).

    2 基于CPU-GPU的相似性連接處理框架

    2.1 相似性連接方法

    本文的研究?jī)?nèi)容主要面向以文本為屬性內(nèi)容的記錄集合間的相似性連接方法,其中記錄集合間的相似性度量主要采用基于字符串的相似性匹配方法.字符串相似性匹配方法可以分為2類:基于特征的相似性匹配和基于字符的相似性匹配,其中常用的相似性度量算法有Jaccard相似度、余弦相似度、遺傳相似度和編輯相似度等.本文將針對(duì)基于特征的相似性匹配方法相似性連接進(jìn)行優(yōu)化處理,為此首先給出相似性連接相關(guān)定義:

    定義1.相似性連接.給定2個(gè)記錄集合R和S,r和s分別是來(lái)自R和S的記錄,Sim表示相似度計(jì)算函數(shù);對(duì)于給定相似性閾值τ,相似性連接是指找出所有相似度大于τ的記錄對(duì)r,s,即集合:

    {r,s∈R×S|Sim(r,s)≥τ}.

    目前相似性連接最常用的處理框架是過(guò)濾-驗(yàn)證框架.過(guò)濾-驗(yàn)證框架分為記錄對(duì)過(guò)濾和相似度驗(yàn)證2個(gè)步驟.過(guò)濾步驟主要的目的是過(guò)濾不相似的候選記錄對(duì),減少候選記錄匹配集的大小.過(guò)濾算法的設(shè)計(jì)需要同時(shí)平衡過(guò)濾效果與過(guò)濾成本2個(gè)因素:想追求更好的過(guò)濾效果勢(shì)必會(huì)增加過(guò)濾成本;而簡(jiǎn)單的過(guò)濾算法又會(huì)導(dǎo)致過(guò)濾效果不明顯,難以降低驗(yàn)證階段的處理代價(jià).

    在過(guò)濾策略中可以使用索引結(jié)構(gòu)提高過(guò)濾效率:例如對(duì)每個(gè)特征建立倒排索引,利用倒排索引的包含項(xiàng)生成候選對(duì).目前,相似性連接在過(guò)濾階段最常用的算法是前綴過(guò)濾算法.前綴過(guò)濾算法的基本思想是利用前綴子串來(lái)衡量整體的相似性[16].其中,首先對(duì)所有的特征進(jìn)行排序,然后對(duì)每一個(gè)字符串進(jìn)行比較,如果其前綴部分的重疊程度小于設(shè)定的閾值,就將候選對(duì)刪除.前綴過(guò)濾常常與長(zhǎng)度過(guò)濾和位置過(guò)濾等方法共同使用來(lái)達(dá)到更好的過(guò)濾效果.

    驗(yàn)證階段主要任務(wù)是精確計(jì)算所有候選對(duì)的相似度,如果記錄間的相似度大于給定閾值,那么該記錄對(duì)即可以作為連接結(jié)果輸出.

    相似性連接算法不僅可以處理2個(gè)數(shù)據(jù)集合間的記錄相似性匹配,也可以用于在同一個(gè)數(shù)據(jù)集合執(zhí)行自連接操作,從而發(fā)現(xiàn)集合中冗余記錄.

    2.2 基于GPU的數(shù)據(jù)處理原理

    隨著GPU處理器計(jì)算能力的提高,通用型GPU(general-purpose GPU, GPGPU)被廣泛地應(yīng)用于高性能計(jì)算等領(lǐng)域.相關(guān)研究表明GPU在處理連接、排序、索引構(gòu)建等過(guò)程時(shí)具有更優(yōu)異的表現(xiàn).常用的通用GPU計(jì)算框架包括NVIDIA的CUDA(compute unified device architecture)和非盈利性組織Khronos Group掌管的OpenCL.目前,多數(shù)的研究使用的是CUDA框架處理并行計(jì)算問(wèn)題,該框架使GPU利用SIMT(single instruction multiple threads)體系結(jié)構(gòu)解決復(fù)雜的計(jì)算問(wèn)題.本文將基于CUDA框架在索引處理上的性能特性設(shè)計(jì)相似性連接的算法處理流程.

    GPU的優(yōu)勢(shì)在于眾多內(nèi)核帶來(lái)的高并發(fā)度,然而并不是所有的計(jì)算任務(wù)都適合使用GPU計(jì)算.CPU適合處理控制密集型任務(wù),GPU適合處理包含數(shù)據(jù)并行的計(jì)算密集型任務(wù).因此GPU的并行處理并不是處理完整的計(jì)算流程,而是按照計(jì)算任務(wù)的特性進(jìn)行劃分,GPU處理由計(jì)算任務(wù)主導(dǎo)的且?guī)в泻?jiǎn)單控制流的計(jì)算任務(wù).2種處理器在功能上互補(bǔ),使CPU-GPU異構(gòu)并行計(jì)算體系結(jié)構(gòu)獲得最佳性能.

    2.3 基于異構(gòu)體系的相似性連接處理框架

    傳統(tǒng)串行相似性連接方法可以分為數(shù)據(jù)讀取、倒排索引構(gòu)建、原始數(shù)據(jù)過(guò)濾和相似度驗(yàn)證4個(gè)主要步驟,其處理過(guò)程都是基于CPU處理計(jì)算,數(shù)據(jù)在主存中存儲(chǔ).

    基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的處理方法將傳統(tǒng)方法的4個(gè)步驟分開(kāi)處理,其中適合并行計(jì)算的部分由GPU負(fù)責(zé),數(shù)據(jù)存儲(chǔ)在GPU顯存中;涉及復(fù)雜邏輯控制的部分由CPU負(fù)責(zé),數(shù)據(jù)存儲(chǔ)在主存中;處理器之間通過(guò)PCIe(peripheral component interconnect express)通道進(jìn)行數(shù)據(jù)傳輸.這種方式能充分利用CPU-GPU異構(gòu)體系結(jié)構(gòu)中2種處理器不同的數(shù)據(jù)處理特點(diǎn),提高整體的執(zhí)行效率.本文對(duì)傳統(tǒng)相似性連接方法的主要步驟進(jìn)行分析和重新設(shè)計(jì),如圖1所示.①使用CPU讀取數(shù)據(jù),利用GPU并行構(gòu)建倒排索引;②使用CPU依據(jù)倒排索引生成候選對(duì);③使用GPU對(duì)候選對(duì)進(jìn)行雙重長(zhǎng)度過(guò)濾;④使用CPU驗(yàn)證相似度得到最終結(jié)果集R. 2種處理器協(xié)同工作完成相似性連接整體任務(wù).

    Fig. 1 Similarity join algorithms based on theCPU-GPU heterogeneous architecture圖1 基于CPU-GPU異構(gòu)體系的相似性連接算法

    3 基于GPU的倒排索引構(gòu)建方法

    在相似性連接算法中,利用倒排索引可以快速找到可能相似的候選項(xiàng),從而達(dá)到過(guò)濾不相似項(xiàng)的效果.倒排索引是大部分過(guò)濾算法的基礎(chǔ),為此本文首先提出使用GPU構(gòu)建倒排索引的方法.

    相比于內(nèi)存空間,GPU的存儲(chǔ)空間是很有限的,GPU全局內(nèi)存(global memory, GM)一般只有幾GB的空間,而訪問(wèn)速度更快的共享內(nèi)存只有KB級(jí)別的空間,所以使用GPU生成倒排索引時(shí)必須考慮減小倒排索引的體積.同時(shí),GPU與主機(jī)內(nèi)存之間的消息通信必須通過(guò)PCIe通道,目前CPU從內(nèi)存讀寫數(shù)據(jù)的速度是PCIe通道的4~8倍,所以需要盡可能對(duì)原始數(shù)據(jù)以及倒排索引進(jìn)行壓縮,利用GPU存儲(chǔ)空間來(lái)存儲(chǔ)數(shù)據(jù).出于以上的考慮本文采用了全局內(nèi)存映射表來(lái)減小數(shù)據(jù)和索引的體積.

    全局內(nèi)存映射表的功能類似于數(shù)據(jù)字典,可以將體積較大的字符串類型的特征項(xiàng)轉(zhuǎn)換為數(shù)值類型的唯一序號(hào).通過(guò)這種結(jié)構(gòu),倒排索引中每個(gè)鍵值對(duì)所占用的空間大幅減少,原始數(shù)據(jù)的體積也大幅減少,這樣就可以使用GPU全局內(nèi)存存儲(chǔ)更多的原始數(shù)據(jù)以及索引信息.

    基于這個(gè)問(wèn)題,本文首先對(duì)傳統(tǒng)的倒排索引結(jié)構(gòu)進(jìn)行改進(jìn),采用基于SoA結(jié)構(gòu)的倒排索引,充分利用GPU多線程并發(fā)訪問(wèn)的特性,提升索引訪問(wèn)和構(gòu)建速度.SoA也被稱為并行結(jié)構(gòu)體或者并行數(shù)組,這種數(shù)據(jù)結(jié)構(gòu)的出現(xiàn)主要是為了解決在并行訪問(wèn)的場(chǎng)景下傳統(tǒng)結(jié)構(gòu)體數(shù)組訪問(wèn)和寫入效率低的問(wèn)題.圖2所示為SoA與AoS這2種數(shù)據(jù)結(jié)構(gòu)的定義以及在內(nèi)存中布局方式的對(duì)比,SoA為結(jié)構(gòu)體中定義的每個(gè)屬性創(chuàng)建一個(gè)數(shù)組,相同的屬性值在內(nèi)存中連續(xù)存放,不同的數(shù)據(jù)之間沒(méi)有任何耦合.所以這種數(shù)據(jù)結(jié)構(gòu)非常適合多線程同時(shí)并發(fā)訪問(wèn),并且全部由基本數(shù)據(jù)類型組成的數(shù)組在訪問(wèn)時(shí)也不需要進(jìn)行數(shù)據(jù)補(bǔ)全.

    Fig. 2 Comparison of SoA and AoS structure圖2 SoA與AoS結(jié)構(gòu)對(duì)比

    GPU最大的優(yōu)勢(shì)在于多線程并行計(jì)算的能力.為了充分地提高并行度,每個(gè)線程塊block將負(fù)責(zé)一部分原始數(shù)據(jù)的解析工作,block中的每個(gè)線程每次會(huì)讀取一個(gè)單詞,根據(jù)全局映射表解析數(shù)據(jù)生成tid,sid,然后查找全局倒排索引,使用函數(shù)atomicAdd將sid和tid分別寫入對(duì)應(yīng)的位置,等到所有線程完成各自的任務(wù)后,SoA型倒排索引的構(gòu)建工作也就完成了.如果想要進(jìn)一步提高索引的讀寫速度,可將得到的全局倒排索引按照共享內(nèi)存的大小順序劃分,劃分后的部分索引傳入共享內(nèi)存中等待后續(xù)使用.將構(gòu)建完成的索引回傳至主存,然后對(duì)tid相同的匹配對(duì)進(jìn)行合并就得到了通用性更好的傳統(tǒng)倒排索引.算法1表述了基于GPU的倒排索引的構(gòu)建過(guò)程.

    算法1.基于GPU的倒排索引構(gòu)建算法.

    輸入:字符串集S;

    輸出:倒排索引ISoA.

    ① 初始化:

    ② 基于字符串集S構(gòu)建全局映射表Map;

    ③ 為字符串集S中每個(gè)token創(chuàng)建特征編號(hào)tid,為每個(gè)字符串創(chuàng)建編號(hào)sid;

    ④ 記錄數(shù)據(jù)集中token的數(shù)量N;

    ⑤ 將S和Map加載到全局內(nèi)存;

    ⑥ 初始化SoA結(jié)構(gòu)的倒排索引ISoA;

    ⑦ for eachS中的字符串si并行執(zhí)行操作:

    ⑧ 創(chuàng)建字符串si的token集合Tsi;

    ⑨ for eachTsi中的token并行執(zhí)行操作:

    ⑩ 基于Map解析數(shù)據(jù)生成tid,sid;

    算法1中行①~④是在CPU和主存上做的準(zhǔn)備工作,主要包括數(shù)據(jù)讀取、構(gòu)建全局內(nèi)存映射表Map等.行⑤~⑥將數(shù)據(jù)和映射表通過(guò)PCIe通道傳輸至GPU全局內(nèi)存并且初始化大小SoA型倒排索引結(jié)構(gòu).行⑦~為具體的并行倒排索引構(gòu)建過(guò)程,圖3對(duì)這一過(guò)程進(jìn)行了簡(jiǎn)要的描述.對(duì)于每條數(shù)據(jù)使用一定數(shù)量的線程并行解析,根據(jù)全局內(nèi)存映射表Map解析tid,sid,使用atomicAdd函數(shù)并行補(bǔ)全SoA倒排索引.行將處理得到的SoA倒排索引回傳至主存,因?yàn)椴⑿杏?jì)算得到的倒排索引是SoA類型,行~在CPU上對(duì)倒排索引進(jìn)行合并,得到傳統(tǒng)的AoS類型的倒排索引.合并后的倒排索引具有更高的普適性和更廣泛的應(yīng)用場(chǎng)景,可應(yīng)用到搜索引擎、數(shù)據(jù)清洗等方面.

    Fig. 3 Construction process of inverted index圖3 倒排索引構(gòu)建過(guò)程

    4 基于CPU-GPU的并行相似性連接方法

    長(zhǎng)度過(guò)濾的基本思想是:如果字符串s與r相似,則其長(zhǎng)度一定不會(huì)相差太多.以Jaccard相似度為例,給出長(zhǎng)度過(guò)濾算法中字符串長(zhǎng)度與相似度閾值的關(guān)系.長(zhǎng)度過(guò)濾因計(jì)算簡(jiǎn)單,且條件僅僅需要統(tǒng)計(jì)每條數(shù)據(jù)項(xiàng)的長(zhǎng)度等特點(diǎn)被廣泛地應(yīng)用到過(guò)濾-驗(yàn)證框架中,同時(shí)這種邏輯簡(jiǎn)單的計(jì)算密集型過(guò)濾算法特別適合GPU并行計(jì)算.因此本文考慮使用基于GPU的長(zhǎng)度過(guò)濾算法對(duì)原始數(shù)據(jù)集進(jìn)行過(guò)濾:

    (1)

    其中,τ為已定義的相似度閥值.如果數(shù)據(jù)集中的字符串是由許多特征組成的,那么除了使用字符串的長(zhǎng)度進(jìn)行長(zhǎng)度過(guò)濾之外,還可以使用每個(gè)字符串的特征數(shù)量進(jìn)行過(guò)濾.因?yàn)閿?shù)據(jù)集中普遍存在長(zhǎng)度相近,但是所含單詞數(shù)量相差很多的字符串,僅使用數(shù)據(jù)長(zhǎng)度無(wú)法過(guò)濾掉這些不相似的字符串.而使用長(zhǎng)度和特征數(shù)雙重過(guò)濾的方式可以過(guò)濾掉這一類型的字符串,進(jìn)一步提升過(guò)濾效果減少候選項(xiàng)的數(shù)量.長(zhǎng)度過(guò)濾算法的主要過(guò)程是統(tǒng)計(jì)每個(gè)字符串的長(zhǎng)度,以及判斷字符串的長(zhǎng)度是否在相似度閾值規(guī)定的區(qū)間內(nèi).這2個(gè)步驟是2個(gè)完全獨(dú)立的工作,并且這2部分工作都是簡(jiǎn)單的讀寫任務(wù),不涉及復(fù)雜的邏輯處理,因此十分適合使用GPU對(duì)這部分工作進(jìn)行并行化處理.

    長(zhǎng)度過(guò)濾算法也有缺點(diǎn),例如對(duì)相似度閾值敏感、對(duì)方差較小的短文本數(shù)據(jù)集過(guò)濾效果很差等.為了彌補(bǔ)長(zhǎng)度過(guò)濾算法的缺點(diǎn),本文使用前綴過(guò)濾與長(zhǎng)度過(guò)濾相結(jié)合的方式進(jìn)行數(shù)據(jù)過(guò)濾.

    前綴過(guò)濾算法是目前比較領(lǐng)先的過(guò)濾算法之一,并且常常與長(zhǎng)度過(guò)濾等方法一起使用來(lái)獲得更好的過(guò)濾效果.前綴過(guò)濾的基本思想是:對(duì)于已按照某種規(guī)則排序后的數(shù)據(jù)項(xiàng),如果2個(gè)數(shù)據(jù)項(xiàng)的前p項(xiàng)特征中有相同項(xiàng),那么這2個(gè)數(shù)據(jù)項(xiàng)就可能相似.前綴長(zhǎng)度p與字符串長(zhǎng)度|s|以及相似度閾值τ的關(guān)系:

    (2)

    使用前綴過(guò)濾算法對(duì)經(jīng)過(guò)長(zhǎng)度過(guò)濾之后生成的中間結(jié)果集進(jìn)行2次過(guò)濾:對(duì)于中間結(jié)果集中的每個(gè)候選項(xiàng),根據(jù)相似度計(jì)算公式計(jì)算出前綴p,然后判斷候選項(xiàng)是否出現(xiàn)在前綴項(xiàng)對(duì)應(yīng)的倒排索引中.經(jīng)過(guò)前綴過(guò)濾之后的中間結(jié)果集被進(jìn)一步減小,從而也少了后續(xù)相似度驗(yàn)證階段的任務(wù)量.

    基于以上考慮,本文首先使用算法1,利用GPU構(gòu)建倒排索引;然后使用GPU對(duì)原始數(shù)據(jù)集進(jìn)行雙重長(zhǎng)度過(guò)濾生成中間結(jié)果集;隨后根據(jù)倒排索引,使用前綴過(guò)濾算法對(duì)中間結(jié)果集進(jìn)行2次過(guò)濾,剔除不滿足前綴過(guò)濾要求的候選項(xiàng);最后對(duì)通過(guò)2次過(guò)濾的候選項(xiàng)逐個(gè)進(jìn)行相似度驗(yàn)證,將通過(guò)驗(yàn)證的候選項(xiàng)添加至最終結(jié)果.以Jaccard相似度為例,算法2描述了使用倒排索引基于前綴過(guò)濾和長(zhǎng)度過(guò)濾思想的并行相似性連接算法.

    算法2.并行相似性連接算法.

    輸入:字符串集S、相似度閾值τ、相似性度量函數(shù)Sim;

    輸出:相似字符串匹配集RM.

    ① 使用算法1創(chuàng)建SoA結(jié)構(gòu)倒排索引ISoA;

    ② 設(shè)置RM=?,創(chuàng)建全局字符串token映射表TS和長(zhǎng)度表LS,初始化候選匹配對(duì)集合Candi;

    ③ for eachS中的字符串si并行執(zhí)行

    ④ 使用atomicAdd函數(shù)對(duì)si中的每個(gè)token執(zhí)行操作以在TS和LS中記錄si的token數(shù)量和特征長(zhǎng)度:

    ⑤ end for

    ⑥ for eachS中排序后的字符串si并行執(zhí)行操作:

    ⑦low=τ|si|,high=|si|τ,min=τTS[si],max=TS[si]τ;

    ⑧ 對(duì)于S中其他的字符串sj,如果滿足|sj|∈[low,high]且TS[sj]∈[min,max],則添加候選匹配對(duì)(sj,si)至Candi;

    ⑨ end for

    ⑩ for each候選對(duì)(sj,si)∈Candi執(zhí)行

    算法2中行①依據(jù)算法1使用GPU并行構(gòu)建倒排索引,行②進(jìn)行相關(guān)結(jié)構(gòu)的初始化.行③~⑤解析數(shù)據(jù)統(tǒng)計(jì)每個(gè)字符串的長(zhǎng)度以及所含特征的數(shù)量.行⑥~⑨使用GPU對(duì)原始數(shù)據(jù)集進(jìn)行雙重長(zhǎng)度過(guò)濾,根據(jù)給定的相似度閾值τ計(jì)算出長(zhǎng)度和特征數(shù)范圍,將同時(shí)滿足長(zhǎng)度和特征數(shù)量要求的記錄對(duì)添加至中間結(jié)果集.行⑩~對(duì)中間結(jié)果集進(jìn)行前綴過(guò)濾,將同時(shí)滿足2種過(guò)濾條件的候選項(xiàng)添加至候選結(jié)果集中.行在CPU上對(duì)候選結(jié)果集中所有候選項(xiàng)進(jìn)行相似度驗(yàn)證,將相似度超過(guò)閾值τ的候選項(xiàng)添加至匹配結(jié)果集.

    5 實(shí)驗(yàn)結(jié)果與分析

    5.1 實(shí)驗(yàn)設(shè)置與數(shù)據(jù)集

    本次實(shí)驗(yàn)采用多種不同類型的數(shù)據(jù)集,表1給出了本次實(shí)驗(yàn)所用數(shù)據(jù)集的基本信息.

    Table 1 Datasets for Experiments表1 實(shí)驗(yàn)所用數(shù)據(jù)集

    1) DBLP.從DBLP(database systems and logic programming)原始數(shù)據(jù)集中抽取作者名和論文名進(jìn)行拼接,然后隨機(jī)刪除、更改后形成的數(shù)據(jù)集.

    2) AOL.AOL(american online)搜索引擎的查詢?nèi)罩?,該?shù)據(jù)集中的每一行代表一組查詢關(guān)鍵詞.

    3) Querylog.某搜索引擎的查詢語(yǔ)句集合.

    4) BMS.商業(yè)管理系統(tǒng)(business management systems, BMS)的某商店使用POS機(jī)記錄的銷售數(shù)據(jù).

    5) Enron.真實(shí)的電子郵件數(shù)據(jù)集,一個(gè)字符串代表一個(gè)真實(shí)的電子郵件的信息,平均長(zhǎng)度很長(zhǎng).

    本文實(shí)驗(yàn)主要測(cè)試算法的執(zhí)行時(shí)間、加速比、算法各部分占比以及數(shù)據(jù)集大小、相似度閾值等條件對(duì)算法的影響.實(shí)驗(yàn)環(huán)境:本文實(shí)驗(yàn)所用GPU:NVIDIA GTX 1060 6 GB;CPU:Intel Core i7-8700 3.20 GHz;內(nèi)存:8 GB;操作系統(tǒng):Windows 10.算法使用CUDA 9.0和C++實(shí)現(xiàn).

    5.2 實(shí)驗(yàn)結(jié)果與分析

    本文將通過(guò)實(shí)驗(yàn)分別檢測(cè)GPU加速在倒排索引構(gòu)建階段和相似性連接整體執(zhí)行上的加速效果.

    1) 基于GPU的倒排索引構(gòu)建方法的作用

    表2記錄了分別使用GPU和CPU在不同數(shù)據(jù)集上構(gòu)建倒排索引時(shí)程序的執(zhí)行時(shí)間.可以明顯地看出使用GPU構(gòu)建倒排索引可以大幅提升倒排索引的構(gòu)建速度.在不同的數(shù)據(jù)集上,本文提出的基于GPU的SoA型倒排索引的構(gòu)建方法的加速比(并行算法與串行算法執(zhí)行時(shí)間的比值)分別達(dá)到了51.87,8.53,81.40,23.83,80.58,加速效果明顯.

    在Enron,DBLP,BMS這3個(gè)數(shù)據(jù)集上獲得了較高的加速比,而在Querylog數(shù)據(jù)集上的加速比相對(duì)較低.這是因?yàn)镼uerylog是小數(shù)據(jù)集,數(shù)據(jù)集較小時(shí)并行計(jì)算帶來(lái)的計(jì)算速度的提升效果不明顯,同時(shí)GPU的引入會(huì)提升數(shù)據(jù)傳輸?shù)拇鷥r(jià),所以加速比相對(duì)較低.而同樣是小數(shù)據(jù)集的BMS是純數(shù)字?jǐn)?shù)據(jù)集,數(shù)字類型占據(jù)空間相對(duì)較小,所以體量更小的BMS數(shù)據(jù)集的數(shù)據(jù)規(guī)模其實(shí)比Querylog數(shù)據(jù)集更大,因此使用GPU構(gòu)建倒排索引的加速效果也比較明顯.在使用CPU構(gòu)建倒排索引時(shí)需要使用Enron等較大數(shù)據(jù)集是因?yàn)椴⑿杏?jì)算大幅減少數(shù)據(jù)處理時(shí)間,所以加速效果十分明顯.

    Table 2 Comparison of Inverted Index Construct Time表2 倒排索引構(gòu)建時(shí)間對(duì)比

    Fig. 4 Impact of dataset size on execution time圖4 數(shù)據(jù)集大小對(duì)執(zhí)行時(shí)間的影響

    圖4(a)記錄了使用GPU構(gòu)建倒排索引時(shí)方法的執(zhí)行時(shí)間隨數(shù)據(jù)集大小的變化情況,圖4(b)記錄了并行方法加速比隨數(shù)據(jù)集大小的變化情況.隨著數(shù)據(jù)集的增大,基于GPU的并行索引構(gòu)建方法的執(zhí)行時(shí)間呈近似線性增長(zhǎng).這是因?yàn)镾oA結(jié)構(gòu)保證不同線程間的讀寫沒(méi)有耦合,數(shù)據(jù)集的增大僅僅會(huì)增加單個(gè)線程完成計(jì)算任務(wù)需要的次數(shù).加速比隨著數(shù)據(jù)集的增大逐漸提升,說(shuō)明傳統(tǒng)的索引構(gòu)建方法不能在數(shù)據(jù)集增大的同時(shí)保證運(yùn)行時(shí)間的線性增長(zhǎng).因此本文提出的倒排索引構(gòu)建方法可以在數(shù)據(jù)集規(guī)模較大的時(shí)候依然保證良好的執(zhí)行效率,并且數(shù)據(jù)集越大構(gòu)建方法的加速效果越明顯.

    Fig. 5 Time proportion of each part of inverted index construction algorithm圖5 倒排序索引構(gòu)建算法各部分時(shí)間占比

    圖5比較了使用GPU構(gòu)建倒排索引的過(guò)程中方法各部分的時(shí)間占比.其中預(yù)處理部分包括原始數(shù)據(jù)讀取與全局映射表構(gòu)建2個(gè)步驟;GPU構(gòu)建索引部分同時(shí)也包括主存與全局內(nèi)存之間數(shù)據(jù)傳輸過(guò)程;CPU索引合并部分是指將SoA型倒排索引合并成通用的倒排索引結(jié)構(gòu)的過(guò)程.在不同數(shù)據(jù)集上的實(shí)驗(yàn)表明:數(shù)據(jù)預(yù)處理部分的時(shí)間占比最高,并且隨著數(shù)據(jù)集體積的增大,這部分的時(shí)間占比會(huì)進(jìn)一步提高;而并行計(jì)算以及索引合并2個(gè)階段的時(shí)間占比很低.所以在CPU-GPU異構(gòu)體系結(jié)構(gòu)的倒排索引構(gòu)建方法中,方法的性能瓶頸主要在CPU端的數(shù)據(jù)預(yù)處理部分.

    2) 基于GPU的相似性連接方法的作用

    表3記錄在不同數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)的結(jié)果,對(duì)比的串行算法為目前效率較高且適用范圍較廣的PPJoin算法[17].為了節(jié)省算法的執(zhí)行時(shí)間,本節(jié)實(shí)驗(yàn)分別從Enron,DBLP,AOL這3個(gè)數(shù)據(jù)集中抽取了24 000,60 000,140 000條數(shù)據(jù)進(jìn)行實(shí)驗(yàn).實(shí)驗(yàn)結(jié)果表明本文提出的基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的算法相較于原有算法有一定的提升,在AOL數(shù)據(jù)集上獲得了最高45.6%加速效果,整體加速效果與倒排索引構(gòu)建方法相比很不明顯.

    Table 3 Comparison of Algorithm Execution Time表3 算法執(zhí)行時(shí)間對(duì)比

    Fig. 6 Execution time of the algorithm with differentdata scales圖6 算法在不同數(shù)據(jù)規(guī)模下的執(zhí)行時(shí)間

    Fig. 7 Time proportion of each part of similarity join algorithm圖7 相似性連接算法各部分時(shí)間占比

    為了探究相似性連接方法加速效果及相關(guān)影響因素,本文記錄了通過(guò)實(shí)驗(yàn)對(duì)比算法各個(gè)部分的時(shí)間占比隨數(shù)據(jù)集大小的變化情況,實(shí)驗(yàn)結(jié)果如圖6和圖7所示.圖6展示了Enron,DBLP,AOL這3個(gè)數(shù)據(jù)集在不同數(shù)據(jù)記錄數(shù)量規(guī)模下的執(zhí)行時(shí)間變化情況,從實(shí)驗(yàn)結(jié)果可見(jiàn),隨著數(shù)據(jù)規(guī)模的增大,算法的執(zhí)行時(shí)間呈近似線性增長(zhǎng).圖7展示了Enron,DBLP,AOL這3個(gè)數(shù)據(jù)集在不同數(shù)據(jù)記錄數(shù)量規(guī)模下的算法各部分執(zhí)行時(shí)間占比,從實(shí)驗(yàn)結(jié)果圖可以看出使用GPU執(zhí)行的創(chuàng)建索引(create index)和過(guò)濾記錄對(duì)(filter pairs)這2個(gè)階段的時(shí)間占比較低,隨數(shù)據(jù)集的變大逐漸減少或保持平穩(wěn);而相似度驗(yàn)證記錄對(duì)(verify pairs)階段時(shí)間占比最高,超過(guò)了其余步驟的總和,并且隨著數(shù)據(jù)集的增大不斷增大.因此,最后在CPU端執(zhí)行的相似度驗(yàn)證階段是本文提出的相似性連接方法加速效果不明顯的主要原因,要進(jìn)一步提升算法的加速效果,必須重新設(shè)計(jì)適合GPU并行計(jì)算的相似度計(jì)算方法.

    圖8和圖9分別比較了相似度閾值τ對(duì)算法執(zhí)行時(shí)間和過(guò)濾效果的影響.隨著相似度閾值的增加,候選項(xiàng)的數(shù)量以及算法的整體執(zhí)行時(shí)間成近似線性減少,算法的過(guò)濾效果良好.其中DBLP數(shù)據(jù)集對(duì)閾值變化最敏感,因?yàn)榇藬?shù)據(jù)集中字符串長(zhǎng)度方差最大,所以使用前綴過(guò)濾和長(zhǎng)度過(guò)濾時(shí)提升相似度閾值可以大幅減少候選項(xiàng)的數(shù)量,迅速減少算法執(zhí)行時(shí)間.

    Fig. 8 Effect of similarity threshold on execution time圖8 相似度閾值對(duì)算法執(zhí)行時(shí)間的影響

    Fig. 9 Influence of similarity threshold on candidatefiltration圖9 相似度閾值對(duì)算法過(guò)濾效果的影響

    通過(guò)本節(jié)實(shí)驗(yàn)可以得出2個(gè)結(jié)論:

    1) 使用GPU構(gòu)建倒排索引可以明顯加快索引的構(gòu)建速度,并且數(shù)據(jù)集數(shù)據(jù)量越大,算法的加速效果越明顯;

    2) 基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的并行相似性連接方法過(guò)濾效果良好,與傳統(tǒng)方法相比具有一定的加速效果.

    6 總結(jié)與展望

    本文提出了基于CPU-GPU異構(gòu)體系結(jié)構(gòu)的倒排索引構(gòu)建方法以及相似性連接方法.采用SoA型的倒排索引結(jié)構(gòu)加快并行條件下索引的讀寫速度,在獲得較高加速比的同時(shí)保證索引具有良好的通用性.基于前綴和長(zhǎng)度過(guò)濾的并行相似性連接方法在一定程度上進(jìn)一步提升了傳統(tǒng)方法的執(zhí)行速度,并且為相似性連接算法的研究提供了一個(gè)新的思路.但是本文提出的方法依然存在局限性,實(shí)驗(yàn)結(jié)果表明數(shù)據(jù)讀取和相似度驗(yàn)證的2個(gè)階段時(shí)間占比較高,如果可以使用例如直接尋址等技術(shù)讀取數(shù)據(jù)并且構(gòu)建適合GPU并行計(jì)算的相似性度量,就可以進(jìn)一步提升方法的執(zhí)行速度.下一步,我們將試圖在本文的基礎(chǔ)上解決這一問(wèn)題.

    猜你喜歡
    字符串相似性閾值
    一類上三角算子矩陣的相似性與酉相似性
    淺析當(dāng)代中西方繪畫的相似性
    小波閾值去噪在深小孔鉆削聲發(fā)射信號(hào)處理中的應(yīng)用
    基于自適應(yīng)閾值和連通域的隧道裂縫提取
    比值遙感蝕變信息提取及閾值確定(插圖)
    河北遙感(2017年2期)2017-08-07 14:49:00
    室內(nèi)表面平均氡析出率閾值探討
    低滲透黏土中氯離子彌散作用離心模擬相似性
    一種新的基于對(duì)稱性的字符串相似性處理算法
    V4國(guó)家經(jīng)濟(jì)的相似性與差異性
    依據(jù)字符串匹配的中文分詞模型研究
    好男人视频免费观看在线| 国产伦精品一区二区三区四那| a级一级毛片免费在线观看| 亚洲最大成人中文| 婷婷色麻豆天堂久久| 久久久久精品久久久久真实原创| 九色成人免费人妻av| 欧美zozozo另类| 久久人人爽人人片av| 尤物成人国产欧美一区二区三区| 国产精品99久久久久久久久| 汤姆久久久久久久影院中文字幕| 国产男人的电影天堂91| 日本欧美国产在线视频| 又黄又爽又刺激的免费视频.| 99re6热这里在线精品视频| 中文字幕av成人在线电影| 亚洲一级一片aⅴ在线观看| 69av精品久久久久久| 天堂俺去俺来也www色官网| 久久久精品免费免费高清| 成年女人看的毛片在线观看| 亚洲欧洲国产日韩| 国产免费视频播放在线视频| 99久久人妻综合| 久久鲁丝午夜福利片| 亚洲精品,欧美精品| 夫妻午夜视频| 韩国av在线不卡| 国产欧美日韩精品一区二区| av在线蜜桃| 一级毛片 在线播放| 美女内射精品一级片tv| 97在线人人人人妻| av.在线天堂| 少妇人妻久久综合中文| 国语对白做爰xxxⅹ性视频网站| 又爽又黄无遮挡网站| 国产又色又爽无遮挡免| 日产精品乱码卡一卡2卡三| 一级a做视频免费观看| 好男人在线观看高清免费视频| 国产爽快片一区二区三区| 国产精品99久久久久久久久| 欧美bdsm另类| 欧美日韩国产mv在线观看视频 | 亚洲精品一二三| 国产爱豆传媒在线观看| 狂野欧美激情性xxxx在线观看| 日韩免费高清中文字幕av| 亚洲不卡免费看| 五月开心婷婷网| 美女主播在线视频| 男男h啪啪无遮挡| 亚洲av不卡在线观看| 内射极品少妇av片p| 国产黄频视频在线观看| 精品少妇久久久久久888优播| 黄色视频在线播放观看不卡| 国产伦理片在线播放av一区| 少妇丰满av| 国产av国产精品国产| 婷婷色av中文字幕| www.av在线官网国产| 日本午夜av视频| 色视频在线一区二区三区| 国产69精品久久久久777片| 国产成人一区二区在线| 免费播放大片免费观看视频在线观看| 嫩草影院新地址| 欧美3d第一页| 国产精品一区二区三区四区免费观看| 美女主播在线视频| 精品少妇久久久久久888优播| 三级国产精品片| 97超碰精品成人国产| 午夜福利在线在线| 啦啦啦中文免费视频观看日本| 免费在线观看成人毛片| 日韩国内少妇激情av| 国产精品无大码| 日本av手机在线免费观看| 成人鲁丝片一二三区免费| 国产成人freesex在线| av免费观看日本| 一区二区三区四区激情视频| 国产乱人偷精品视频| 国产高清不卡午夜福利| 欧美精品国产亚洲| 亚洲成人久久爱视频| 人妻 亚洲 视频| 国产乱人视频| 欧美日韩视频高清一区二区三区二| 97精品久久久久久久久久精品| 一级爰片在线观看| 亚洲av不卡在线观看| 伦理电影大哥的女人| 国产精品av视频在线免费观看| 色视频在线一区二区三区| 国产v大片淫在线免费观看| 久久久久久久久久成人| 欧美日韩精品成人综合77777| 午夜免费鲁丝| 高清在线视频一区二区三区| 亚洲电影在线观看av| 国产精品人妻久久久影院| 国产精品嫩草影院av在线观看| 国产精品麻豆人妻色哟哟久久| 国产精品一区二区在线观看99| 精品久久久久久久久亚洲| 亚洲欧美日韩卡通动漫| 99热这里只有精品一区| 国产免费福利视频在线观看| 狂野欧美激情性xxxx在线观看| 好男人视频免费观看在线| 99热这里只有是精品在线观看| av女优亚洲男人天堂| 亚洲人与动物交配视频| 成年av动漫网址| 国产 一区 欧美 日韩| 一级爰片在线观看| 亚洲成色77777| 美女国产视频在线观看| 97精品久久久久久久久久精品| 少妇的逼水好多| 亚洲一区二区三区欧美精品 | 久久久精品免费免费高清| 自拍偷自拍亚洲精品老妇| 天美传媒精品一区二区| av在线老鸭窝| 免费高清在线观看视频在线观看| 日本爱情动作片www.在线观看| 日本黄色片子视频| 久久久久久久久久人人人人人人| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 国产精品人妻久久久久久| 街头女战士在线观看网站| 一区二区三区四区激情视频| 日韩电影二区| 国产 一区精品| 久久6这里有精品| 亚洲av在线观看美女高潮| 大话2 男鬼变身卡| 国产精品精品国产色婷婷| 一级av片app| 成人亚洲精品一区在线观看 | 国产av不卡久久| 熟女人妻精品中文字幕| 伦理电影大哥的女人| 亚洲自偷自拍三级| 亚洲成人一二三区av| 亚洲成色77777| 久久人人爽人人爽人人片va| 免费黄色在线免费观看| 黄色日韩在线| 亚洲国产欧美在线一区| 久热久热在线精品观看| 国产av码专区亚洲av| 97在线视频观看| 女人被狂操c到高潮| 亚洲av二区三区四区| 国产欧美另类精品又又久久亚洲欧美| 97精品久久久久久久久久精品| 亚洲欧美成人精品一区二区| 国内揄拍国产精品人妻在线| 久久久久国产精品人妻一区二区| 免费大片黄手机在线观看| 日日撸夜夜添| 免费看av在线观看网站| 在线看a的网站| 久久ye,这里只有精品| 如何舔出高潮| 久久久亚洲精品成人影院| 少妇裸体淫交视频免费看高清| 欧美日韩亚洲高清精品| 纵有疾风起免费观看全集完整版| 一级二级三级毛片免费看| 中文字幕免费在线视频6| 日本免费在线观看一区| 嫩草影院新地址| 亚洲人成网站高清观看| 婷婷色麻豆天堂久久| 91精品伊人久久大香线蕉| 国产成人精品一,二区| 日日啪夜夜撸| 国产亚洲av嫩草精品影院| a级一级毛片免费在线观看| 少妇被粗大猛烈的视频| 亚洲成人久久爱视频| 国产欧美亚洲国产| 噜噜噜噜噜久久久久久91| 亚洲av不卡在线观看| 在线看a的网站| 午夜免费鲁丝| 日韩欧美一区视频在线观看 | 交换朋友夫妻互换小说| 国模一区二区三区四区视频| 欧美人与善性xxx| 亚洲av男天堂| 亚洲成人一二三区av| 亚洲第一区二区三区不卡| 深爱激情五月婷婷| 国产色婷婷99| 免费av毛片视频| 亚洲欧美中文字幕日韩二区| 国产精品一区二区在线观看99| 自拍欧美九色日韩亚洲蝌蚪91 | 国产在视频线精品| 亚洲在久久综合| 亚洲av免费在线观看| 午夜爱爱视频在线播放| 亚洲国产日韩一区二区| 久久久精品94久久精品| 在线观看一区二区三区激情| 午夜福利在线在线| 中文乱码字字幕精品一区二区三区| 日韩成人伦理影院| 亚洲av福利一区| 女的被弄到高潮叫床怎么办| 91午夜精品亚洲一区二区三区| 偷拍熟女少妇极品色| 在线观看人妻少妇| 免费播放大片免费观看视频在线观看| 在线免费观看不下载黄p国产| 在线精品无人区一区二区三 | 亚洲va在线va天堂va国产| 国产又色又爽无遮挡免| 亚洲av福利一区| 女的被弄到高潮叫床怎么办| 只有这里有精品99| 老司机影院成人| 一个人看视频在线观看www免费| 国产成人免费观看mmmm| 如何舔出高潮| 久久精品人妻少妇| 2021少妇久久久久久久久久久| 国产午夜精品一二区理论片| 成人国产av品久久久| 狠狠精品人妻久久久久久综合| 伦精品一区二区三区| 22中文网久久字幕| av国产久精品久网站免费入址| 国产日韩欧美在线精品| 国产精品久久久久久精品电影| 国产精品久久久久久精品电影小说 | 一级毛片aaaaaa免费看小| 欧美日韩精品成人综合77777| 大香蕉97超碰在线| 网址你懂的国产日韩在线| 欧美少妇被猛烈插入视频| 欧美高清性xxxxhd video| 男人舔奶头视频| 最近手机中文字幕大全| 国产精品一区二区在线观看99| 亚洲欧洲日产国产| 精品一区二区三卡| 亚洲av.av天堂| 亚洲精品成人av观看孕妇| 精品国产一区二区三区久久久樱花 | 亚洲av成人精品一二三区| 亚洲精品成人av观看孕妇| 欧美三级亚洲精品| 18禁在线无遮挡免费观看视频| a级一级毛片免费在线观看| 亚洲国产精品专区欧美| 国产精品蜜桃在线观看| 免费看a级黄色片| 一级毛片我不卡| 伊人久久精品亚洲午夜| 国产亚洲最大av| 亚洲图色成人| 熟女电影av网| 日韩中字成人| 日韩欧美精品免费久久| 伊人久久国产一区二区| 身体一侧抽搐| 搡女人真爽免费视频火全软件| 日韩成人av中文字幕在线观看| 久久精品夜色国产| 久久久久久久亚洲中文字幕| 久久鲁丝午夜福利片| 精品国产乱码久久久久久小说| 校园人妻丝袜中文字幕| 亚洲国产成人一精品久久久| 女人久久www免费人成看片| 亚洲国产精品专区欧美| 一区二区三区乱码不卡18| 一级爰片在线观看| 日韩av在线免费看完整版不卡| 欧美少妇被猛烈插入视频| 热re99久久精品国产66热6| 九草在线视频观看| 草草在线视频免费看| 国产在视频线精品| 人人妻人人看人人澡| 少妇丰满av| 建设人人有责人人尽责人人享有的 | 欧美日本视频| 麻豆国产97在线/欧美| 国产 一区 欧美 日韩| 成人国产麻豆网| 99热这里只有是精品在线观看| av.在线天堂| 国产成人a∨麻豆精品| 国产成人一区二区在线| 激情 狠狠 欧美| 精品久久久噜噜| 亚洲伊人久久精品综合| 九九爱精品视频在线观看| 亚洲自拍偷在线| 熟女人妻精品中文字幕| 男的添女的下面高潮视频| 国语对白做爰xxxⅹ性视频网站| 精品少妇黑人巨大在线播放| 久久久久久国产a免费观看| 国产大屁股一区二区在线视频| 国产精品成人在线| 欧美3d第一页| 91aial.com中文字幕在线观看| 国内精品宾馆在线| 国产熟女欧美一区二区| 亚洲国产最新在线播放| 一个人看的www免费观看视频| 青春草亚洲视频在线观看| 联通29元200g的流量卡| 国产黄a三级三级三级人| 国产色爽女视频免费观看| 九九久久精品国产亚洲av麻豆| 99热全是精品| 边亲边吃奶的免费视频| 水蜜桃什么品种好| 亚洲精品乱码久久久久久按摩| 亚洲精品国产av成人精品| 99久久九九国产精品国产免费| 国产亚洲最大av| 秋霞伦理黄片| 有码 亚洲区| 午夜精品一区二区三区免费看| 成人国产麻豆网| 中文字幕亚洲精品专区| 3wmmmm亚洲av在线观看| 如何舔出高潮| 日韩精品有码人妻一区| 99热这里只有精品一区| 草草在线视频免费看| 成人亚洲精品av一区二区| 日本午夜av视频| 婷婷色av中文字幕| 3wmmmm亚洲av在线观看| 免费黄网站久久成人精品| 国产一区二区在线观看日韩| 中文字幕亚洲精品专区| 日本wwww免费看| 国产欧美日韩一区二区三区在线 | 亚洲美女搞黄在线观看| 搡女人真爽免费视频火全软件| 婷婷色av中文字幕| 日韩中字成人| 亚洲不卡免费看| 日韩不卡一区二区三区视频在线| 成人亚洲精品av一区二区| 哪个播放器可以免费观看大片| a级毛色黄片| 免费高清在线观看视频在线观看| 国产中年淑女户外野战色| 国产免费一级a男人的天堂| 五月天丁香电影| 1000部很黄的大片| 国产精品99久久99久久久不卡 | 久久久久久久精品精品| 中文字幕亚洲精品专区| av.在线天堂| 男女国产视频网站| av黄色大香蕉| 亚洲精品自拍成人| 午夜亚洲福利在线播放| 欧美极品一区二区三区四区| 寂寞人妻少妇视频99o| 嫩草影院新地址| 国产色婷婷99| 欧美日韩精品成人综合77777| 一本久久精品| 免费av观看视频| 我的女老师完整版在线观看| a级毛色黄片| 寂寞人妻少妇视频99o| 精品少妇久久久久久888优播| 国产色爽女视频免费观看| 欧美区成人在线视频| 国产男人的电影天堂91| 久久久久久久国产电影| 两个人的视频大全免费| 女人十人毛片免费观看3o分钟| tube8黄色片| 国产精品成人在线| 国产精品久久久久久久久免| 精品久久久久久久久亚洲| 久久久久久久国产电影| 七月丁香在线播放| 亚洲人成网站高清观看| 国产精品三级大全| 91狼人影院| 嫩草影院新地址| 五月开心婷婷网| 国产免费一区二区三区四区乱码| 国产白丝娇喘喷水9色精品| 性插视频无遮挡在线免费观看| 欧美人与善性xxx| 久久精品久久精品一区二区三区| 免费大片黄手机在线观看| 91久久精品国产一区二区成人| 黄色配什么色好看| 亚洲高清免费不卡视频| 高清午夜精品一区二区三区| 午夜爱爱视频在线播放| 日本与韩国留学比较| 天堂俺去俺来也www色官网| 精品人妻视频免费看| 狠狠精品人妻久久久久久综合| 日韩中字成人| 中文在线观看免费www的网站| 国产精品久久久久久精品电影| 亚洲人成网站在线播| 搡女人真爽免费视频火全软件| 欧美高清性xxxxhd video| 日日撸夜夜添| 美女被艹到高潮喷水动态| 激情五月婷婷亚洲| 人人妻人人爽人人添夜夜欢视频 | 蜜臀久久99精品久久宅男| 国产视频内射| 精华霜和精华液先用哪个| 免费黄网站久久成人精品| 久久久久久伊人网av| 国产色婷婷99| 99九九线精品视频在线观看视频| 免费看光身美女| 一个人观看的视频www高清免费观看| 亚洲国产日韩一区二区| 18禁裸乳无遮挡免费网站照片| 色网站视频免费| 日韩亚洲欧美综合| 久久99精品国语久久久| 晚上一个人看的免费电影| 亚洲国产精品专区欧美| 国产欧美日韩精品一区二区| 欧美一区二区亚洲| 国产白丝娇喘喷水9色精品| 97热精品久久久久久| 亚洲欧美精品自产自拍| 麻豆成人午夜福利视频| 中文欧美无线码| 丝瓜视频免费看黄片| 国产欧美另类精品又又久久亚洲欧美| 精品一区二区三卡| 在线观看国产h片| 不卡视频在线观看欧美| 好男人视频免费观看在线| 身体一侧抽搐| 美女高潮的动态| 国内揄拍国产精品人妻在线| 精品久久久噜噜| 亚洲最大成人av| 一个人看视频在线观看www免费| 国产av国产精品国产| 人体艺术视频欧美日本| 久久精品夜色国产| 少妇丰满av| 真实男女啪啪啪动态图| 久久精品综合一区二区三区| 欧美激情国产日韩精品一区| 亚洲高清免费不卡视频| 欧美精品人与动牲交sv欧美| 免费看av在线观看网站| 最近最新中文字幕免费大全7| 久久久久久久亚洲中文字幕| 听说在线观看完整版免费高清| 搞女人的毛片| 美女内射精品一级片tv| 亚洲av欧美aⅴ国产| 又爽又黄无遮挡网站| 99热网站在线观看| 午夜免费观看性视频| 国产黄片视频在线免费观看| 夜夜看夜夜爽夜夜摸| 久久久久国产精品人妻一区二区| 久久国产乱子免费精品| av在线老鸭窝| av在线天堂中文字幕| 九草在线视频观看| 五月天丁香电影| 亚洲欧美精品专区久久| 直男gayav资源| 国产亚洲91精品色在线| 日日摸夜夜添夜夜添av毛片| 天天躁日日操中文字幕| 22中文网久久字幕| 国产欧美日韩一区二区三区在线 | 看黄色毛片网站| 免费观看无遮挡的男女| 永久网站在线| 婷婷色av中文字幕| 亚洲精品色激情综合| 欧美日本视频| 能在线免费看毛片的网站| 男女边摸边吃奶| 18禁动态无遮挡网站| 五月玫瑰六月丁香| 内射极品少妇av片p| 亚洲精品国产av成人精品| 2022亚洲国产成人精品| 亚洲av在线观看美女高潮| 亚洲国产欧美人成| 99久久九九国产精品国产免费| 美女cb高潮喷水在线观看| 久久精品人妻少妇| 欧美成人午夜免费资源| 一级毛片电影观看| 欧美最新免费一区二区三区| 简卡轻食公司| 免费播放大片免费观看视频在线观看| 亚洲av成人精品一区久久| 国产视频首页在线观看| 三级男女做爰猛烈吃奶摸视频| 亚洲av免费高清在线观看| 日产精品乱码卡一卡2卡三| 国产乱人偷精品视频| 亚洲精品国产成人久久av| 亚洲成色77777| 狂野欧美激情性bbbbbb| 九九久久精品国产亚洲av麻豆| 国产色婷婷99| 久久6这里有精品| 日韩欧美 国产精品| 特大巨黑吊av在线直播| 精品久久久久久久久av| 国产白丝娇喘喷水9色精品| 亚洲成人久久爱视频| 国内揄拍国产精品人妻在线| 午夜视频国产福利| 午夜福利视频精品| 22中文网久久字幕| 亚洲图色成人| 激情 狠狠 欧美| 国产熟女欧美一区二区| 热re99久久精品国产66热6| 亚洲av免费在线观看| 亚洲在久久综合| 日韩亚洲欧美综合| 精品国产乱码久久久久久小说| 天堂网av新在线| 国产黄片视频在线免费观看| 亚洲精品aⅴ在线观看| 如何舔出高潮| 有码 亚洲区| 国产黄片美女视频| 在线免费观看不下载黄p国产| 久久久久精品久久久久真实原创| 精品一区二区三卡| 色播亚洲综合网| 两个人的视频大全免费| 精品99又大又爽又粗少妇毛片| 黑人高潮一二区| 日本熟妇午夜| 久久久久精品性色| 国产伦精品一区二区三区视频9| 日韩一区二区视频免费看| 美女内射精品一级片tv| av在线观看视频网站免费| 男女那种视频在线观看| 青青草视频在线视频观看| av在线蜜桃| 国产91av在线免费观看| 色哟哟·www| 波野结衣二区三区在线| 国产精品一二三区在线看| 国产成年人精品一区二区| 欧美+日韩+精品| 精品一区二区三区视频在线| 最新中文字幕久久久久| 亚洲av中文字字幕乱码综合| 一级毛片我不卡| 欧美日韩视频精品一区| 国产色婷婷99| 六月丁香七月| 国产精品偷伦视频观看了| tube8黄色片| 久久6这里有精品| 亚洲精品日韩在线中文字幕| 国产高清三级在线| 嫩草影院新地址| 国产乱人视频| 在线观看人妻少妇| 国产av国产精品国产| 亚洲精品自拍成人| av在线老鸭窝| 亚洲aⅴ乱码一区二区在线播放| 在线看a的网站| 日本黄色片子视频| 亚洲美女视频黄频| 国产精品麻豆人妻色哟哟久久| 爱豆传媒免费全集在线观看| 国产成人a区在线观看| 中国三级夫妇交换| 成人午夜精彩视频在线观看| 亚洲av福利一区| 免费av观看视频| 一个人观看的视频www高清免费观看| 美女脱内裤让男人舔精品视频| 国产淫片久久久久久久久| 2022亚洲国产成人精品| 国产精品久久久久久精品古装| 婷婷色综合大香蕉| 成人美女网站在线观看视频| 午夜福利视频精品|