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

    Co-OLAP:Research on cooperated OLAP with star schema benchmark on hybridCPU&GPU platform

    2014-10-31 03:20:22ZHANGYuZHANGYansongZHANGBingCHENHongWANGShan

    ZHANG Yu, ZHANG Yan-song,3, ZHANG Bing,CHEN Hong, WANG Shan

    (1.DEKE Lab,Renmin University of China,Beijing 100872,China;2.School of Information,Renmin University of China,Beijing 100872,China;3.National Survey Research Center at Renmin University of China,Beijing 100872,China)

    0 Introduction

    Databases severely suffer from performance issues for the data-and computing-intensive workloads such as data warehousing and OLAP.Performance-critical designed IMDBs(In-memory Database)such as MonetDB,Vectorwise,HANA,Hyper,IWA,have gained orders of magnitude improvement than the traditional disk resident databases,but performance is still the most critical issue for a big in-memory dataset due to memory bandwidth bottleneck and limited processing cores.Nowadays graphic processing units(GPUs)have been designed to be powerful parallel computing processors with much more cores than CPUs(thousands of cores vs.tens of cores),and GPU memory has much higher memory bandwidth than DRAM(300+GB/s vs.80 GB/s).The parallel programming models,such as CUDA and OpenCL further push GPUs as practical candidate for parallel computing-intensive engine beyond multicore CPUs.Database community has made significant approaches in optimizing query processing on GPUs in recent years[1-13],co-processor framework becomes main stream in high performance computer.Even moderate computers are commonly configured with powerful GPU which can not only provide graphic processing but also additional computing power.

    In this paper,we focus on a case study on a moderate workstation configuration with two Xeon6-core CPUs(12 cores)and one NVIDA Quadra 5 000 GPU(11 multiprocessors,352 cuda cores)for standard SSB OLAP optimizations.On data-intensive OLAP workload,we find that the processing capability relies more on amount of multiprocessors than amount of streaming cores.The Xeon CPU platform outperforms GPU platform in our workstation,and it is common scenario for typical moderate servers.So it is impossible to use GPU as major accelerator as some researches(commonly configured with low levelCPU and high level GPU),we have to rethink the hybrid CPU/GPU computing framework.we first design an array oriented storage and processing engine for cooperated CPU and GPU computing,AIR(array index referencing)algorithm to replace traditional hash join operator to make star-join efficient both on CPU and GPU platforms,then we assign GPU as additional star-join engine and CPU as predicate processing and aggregating engines to cooperate for the whole OLAP processing.

    The related work are presented in Sec.1.Co-OLAP is discussed in Sec.2.Sec.3 shows the results of experiments.Finally,Sec.4 summarizes the paper.

    1 Related Work

    GPUs are employed as co-processors for CPUs[1,2],GDB[2]gives an architecture of relational query Co-Processing on graphic processors.According to cost model for CPU and GPU,workload is assigned to different processors.Relational operators are optimized for GPU processing such as GPU joins[3,4],GPU hashing[5],GPU compression[6,7],GPU sorting[8,9],GPU memory contention[10],data movement optimizations[11],GPU transaction execution[12],GPU cost model[13],etc.These significant efforts have verified that GPUs are good candidate for high performance relational processing due to massive parallel cores.The major differences between GPU and CPU focus on two aspects:(1)CPU optimizations are cache-conscious designed,the key idea is to fully utilize cache hierarchy to make frequent dataset closer to the cores,the LLC(last level cache)becomes larger and larger with increasing cores;GPU equips with the small size of shared memory(32 KB-48 KB),without hardware shared memory management like cache,GPU optimizations need more programming techniques,and the small size of shared memory is difficult to optimize strong data locality processing like hash join;GPU commonly relies on hardware threading mechanism to overlap device memory accessing latency while CPU majorly relies on large cache.(2)nowadays PCIe bandwidth is much lower than memory bandwidth,we must either improve PCIe transmission performance (e.g.,multiple memory channels,DMA(Direct Memory Access),pinned memory transmission[4])or data distribution to make computing-intensive workload GPU memory resident.

    For OLAP workload,the key issue is the star-join performance.[14,15]discussed the performances of different multicore parallel hash join algorithms,the results show that simple nopartitioned hash algorithm is adaptive to star schema with skewed dataset between fact table and dimension tables.Invisible-join[16]can even improve star-join efficiency by using bitwise operation.Current GPU efforts commonly rely on hash structures for hash join or hash aggregation,while managing hash structure in GPU is not as efficient as in CPU.So GPU OLAP algorithms rely on two main considerations,one is to choose high performance hash join algorithms,the other is to tune algorithms to be adaptive to GPU’s memory management and hardware architecture.One common barrier is that memory efficient hash table needs pointers to manage dynamic chained buckets,while it is less effi-cient in GPU for fixed memory management.DDTA-JOIN[17]is a tailored join algorithm by using foreign key columns as native join indexes for the star-joins.Hash tables are removed from OLAP processing,so they are more adaptive to be used in GPU.

    In general,desktop GPU outperforms CPU.But for moderate server,multi-way CPUs may outperform GPU in typical configuration.For balanced CPU and GPU platforms,it is not necessary for GPU to realize all the query processing operators,GPU acts as an additional computing engine instead of a major computing engine,we should focus on how to distribute data and computing in CPU and GPU memories and cooperate the computing of each platform.

    2 Co-OLAP Designs

    Co-OLAP model is designed for a distributed OLAP model for GPU and CPU platforms,data distribution strategy is processor-conscious to guarantee minimal data movement overhead and make computing adaptive to processor features.

    2.1 Data distribution Model

    Star schema is a formula schema for data warehousing,and star schema is widely studied by commercial databases and academic researches.We focus on star schema optimizations for Co-OLAP in this paper,and snow-flake schema like TPC-H will be studied in future work.

    1.Data distribution of SSB

    SSB(star schema benchmark)comprises one fact table and four dimension tables,fact table comprises four foreign key columns and thirteen measure columns.Dimension tables are small in sizes with predicate processing on various data types,foreign key columns in fact table are relative small but frequently accessed for multidimensional queries(starjoins),and measure columns may be very large in enterprise dataset,but each multidimensional query commonly locates very small dataset(aggregate on dataset with very low multidimensional selectivity and few measure attributes).So we can first consider the small dimension tables and foreign key columns to be GPU memory resident candidates.

    Dimension tables are small in sizes but with various data types,complex data type management is adaptive to CPU.Moreover,dimension tables involve many update operations,CPU can do updates more efficient than GPU.According to these considerations,we only assign foreign key columns GPU memory resident for the simple data types and computing-intensive workload of star-join.

    2.Data access latency of data distribution

    Fig.1illustrates a workstation configuration.The device memory of GPU is 2.5 GB,the main memory is 12 GB,the memory bandwidthes of CPUs are 51.2 GB/s(four memory channels with each 12.8 GB/s bandwidth),the bandwidth of GPU device memory is 120 GB/s,and the PCIe bandwidth is maximal 6 GB/s with pinned memory access.The local memory accesses are efficient for both GPU and CPU,but data movement betweenhost memory and device memory is quite slow.So we must minimize data movement between CPU and GPU during query processing.We design a vector oriented OLAP algorithm to reduce PCIe transmission overhead by only swapping small dimension vectors and fact vectors.The detailed design will be illustrated in the following sections.

    Fig.1 Data distribution

    3.Maximal high performance data distribution model

    In ideal data distribution model,all the foreign key columns can be GPU memory resident for CPU bound star-join processing,CPU only responses for predicate processing and aggregation.To gain this target,GPU memory should contain all the foreign key columns,so we can model the maximal high performance dataset size as:

    S=(SGPU-SDimVecs-SFactVec)/RFKs/Dataset,in which,

    Sdenotes the total dataset size with GPU memory resident computing;

    RFKs/Datasetdenotes the proportion of foreign key columns size in whole dataset;

    SGPUdenotes the size of GPU device memory;

    SDimVecsdenotes the size of a dimension vector;

    SFactVecdenotes the size of a fact vector.

    With this data distribution model,we can support maximal Sdataset to perform completely cooperated computing with CPU and GPU according to specified GPU memory size.If we have to deal with larger dataset,we can upgrade hardware platform by add more GPUs or use higher level GPU with larger GPU memory.

    2.2 Array store and AIR algorithm

    Storing columns in arrays is widely adopted in main-memory databases(e.g.,Monet-DB)and GPU database researches.We adopt array store technique,the dimensional columns and measure columns are stored as page-able arrays,the foreign key columns are stored as pinned arrays to accelerate the transmission performance through PCIe bus.

    For dimension table,array index can be considered as virtual primary key(VPK).If a foreign key is assigned with dimensional array index,the join between foreign key columnand primary key column can be simplified as foreign key directly accessing dimensional item with stored dimensional array index.We define this join as Array Index Referencing(AIR).This new operator requires an additional constraint for star schema that primary key of dimension table must be defined as 1,2,3… which is widely used in SSB and TPC-H as default(such as part,supplier,customer,date(the 19920101,19920102,…format primary keys can be simply used as array index by current date minus the first date)dimension tables in SSB and part,supplier,customer dimension tables in TPC-H).We can also update foreign key columns for existed dataset as an ETL process.

    Invisible-join[14]is a column based OLAP algorithm like MonetDB with improvement on star-join by bitmap bitwising operator,and invisible-join algorithm is also adopted by[13]GPU algorithm.To make AIR algorithm comparable with invisible-join,we inherit the query example style algorithm description like[17],we will illustrate how AIR works with Q3.1 from star schema benchmark,and compare the detailed process stages with invisible-join.

    SELECT c.nation,s.nation,d.year,sum(lo.revenue)as revenue

    FROM customer AS c,lineorder AS lo,supplier AS s,dwdate AS d

    WHERE lo.custkey=c.custkey

    AND lo.suppkey=s.suppkey

    AND lo.orderdate=d.datekey

    AND c.region= ’ASIA’

    AND s.region= ’ASIA’

    AND d.year>=1992 and d.year<=1997

    GROUP BY c.nation,s.nation,d.year

    ORDER BY d.year asc,revenue desc;

    In this query,dimension tables response for providing predicate filters(opposite to hash tables in[16])and groups for aggregation.For Q3.1,the first stage is to apply predicates and GroupByclauses on dimension tables to generate star-join filters.In Fig.3,invisible-join only applies predicates on dimension tables and uses hash table as star-join filters,the GroupByclauses are processed in the end,so dimension tables are accessed twice in the whole query processing.AIR uses vector as an early-materialized grouping filter.According to predicates on dimension table,filtered GroupBykeys are organized as array dictionaries.In dimension vector,positions 1 and 3 are filled with GrpCode array indexes,position 2 does not satisfy the predicate and is filled with0.The dimension vector is small(length of dimension table rows)even for large dataset,foreign key can directly access dimension vector to probe whether current fact tuple can go through dimension filter.Moreover,we can pre-generate a multidimensional array Agg[D1]…[Dn]as GroupBycontainer,where Di(1<=i<=n)denotes the cardinality of each dimensional array dictionary in each dimension vector.For example,F(xiàn)ig.2 can use Agg[2][1][1]for aggregation.

    In star-join stage,invisible-join performs hash table oriented column joins and uses bitmaps as join results,finally a bitwise AND operator is invoked for star-join result.There are two important issues we should pay attentions:one issue is that OLAP query commonly has high selectivity(maximal 6/7 in SSB opposite to Fig.2 example with very few filtered dimensional tuples)in single dimension table,hash join between foreign key column and dimension table has high overhead;the other issue is that bitwise operation overhead for big bitmaps is also high and bitmaps consume large space for a big dataset.

    Fig.2 The first stage of predicate processing on sample data

    In Fig.3,AIR algorithm makes star-join even simple and efficient.Assume that orderdate column can be on-the-fly converted with array index of datetable.We use a fact vector as star-join filter.As scanning custkeycolumn,each key is mapped to custVec to update relative fact vector item with custkey value.For suppkey column,we perform a positional scan according to fact vector’s non-zero positions,and then updating fact vectoraccording to suppVec mapping.The fact vector is iteratively updated with GroupBy multidimensional array indexes(mapping3-D array index to 1-D array index),when finishing all the foreign key scans,the fact vector can identify which fact rows are to be output for aggregation and the aggregation unit address for each fact tuple.

    Fig.3 The second stage of star-join on sample data

    With AIR algorithm,hash tables are replaced with simple vectors,array index referencing on small dimension vectors is very efficient for cache locality.

    Column store commonly employs late-materialization strategy.Invisible-join has to access foreign key columns twice,one for foreign key join,one for extracting final foreign key and joining with dimensional column for GroupByvalues as shown in Fig.4.

    Fig.4 The third stage of aggregation on sample data

    Opposite to invisible-join,AIR employs early-materialization strategy.In dimension processing stage,GroupBy values are encoded into dimension vectors and pre-generate multidimensional array for final aggregation.The star-join stage iteratively refreshes fact vector with pre-assigned multidimensional array addresses,so the aggregation stage can be independently performed without accessing dimensional columns or foreign key columns again.Fig.4 shows the aggregation stage of AIR,apositional lookup according to fact vector is performed on measure columns,the value is extracted and pushed to aggregation array Agg[2][1][1]for aggregating.Finally,aggregation array is converted into aggregating results by mapping array indexes to dimension array dictionary to extract each grouping attributes.

    In AIR algorithm,a standard OLAP query processing is divided into three independ-ent stages,the input and output data are all small.Star-join is a computing-intensive workload with fixed columns and can be assigned to GPU;aggregation involves large dataset but simple processing,this data-intensive workload is CPU adaptive.

    The Co-OLAP model can be illustrated in Fig.1.All the data are memory resident,and foreign key columns are GPU memory resident.CPU processes query and generates dimension vectors,the small vectors are transferred to GPU memory through PCIe bus,GPU performs star-join with dimension vectors and generates fact vector,the fact vector is transferred back to CPU memory,then CPU performs a positional scan on measure columns for aggregation.

    For CPU programming,we can use a dynamic vector template class as fact vector to only store filtered fact tuple positions and GroupByaddresses.For high selective queries,the dynamic vector oriented fact vector needs less space and avoids scanning the whole fact vector.For GPU programming,we maintain a pre-allocated pinned array as a fact vector.Star-join is multiple-pass vector processing between equal length arrays,and it is adaptive to be programmed with CUDA.We did not use dynamic vectorlike CPU because GPU is less efficient than CPU in dynamic memory management,fixed length fact vector can satisfy all the queries with different selectivity.Star-join in CPU has better code efficiency than in GPU,but GPU has much more processing cores and higher device memory bandwidth than CPU,the overall performance is convincing.

    3 Case Studies

    In this paper,we design experiments in a moderate workstation to exploit how to maximize the hardware performance.Our experiments are conducted on a Lenovo workstation with two IntelR XeonR Processor E5-2667(6-core,15M Cache,2.90 GHz),12 GB memory,maximal memory bandwidth 51.2 GB/s,PCIe channel bandwidth 6 GB/s with pinned memory.The GPU type is NVIDA Quadro 5000,the configurations are as follows:352 cuda cores(11 multiprocessors),2.5 GB GDDR5,320 bit bus width,120 GB/s bandwidth.The prices of two CPUs and one GPU are equal(~20,000RMB).The OS version is ubuntu-12.04(precise)64-bit,kernel Linux 3.8.0-29-generic,CUDA version is 5.5.We use star schema benchmark(SSB)dataset of SF=20 with standard SSB data generator.

    3.1 GPU memory resident

    For Co-OLAP model,the foreign key columns are GPU memory resident,small dimension vectors are on-the-fly transferred from host memory to device memory for each ad-h(huán)oc query,and only fact vector needs to be transferred from device memory to host memory.The total size of four foreign key columns plus one fact vector is about 2.39GB,95.6%GPU memory is utilized.The GPU memory is maximal utilized and we can support maximal SF=20 dataset for GPU memory resident Co-OLAP.

    3.2 CPU memory resident

    The average predicate processing time is 10.24 ms in CPU,dimension vectors are transferred from host to device memory with average 0.23 ms under 6GB/s pinned transfer bandwidth.In star-join stage,each foreign key column is parallel scanned with AIR algorithm on dimension vectors and updating fact vector.The star-join execution time(average 73%in total execution time)is influenced by dimension vector size,selectivity and amount of foreign key columns.The fact vector is transferred from device to host memory with about 20.89 ms.With the fact vector,aggregation is executed efficiently in CPU on large measure columns with average 5.33 ms.In the whole Co-OLAP processing stages,starjoin is computing-intensive workload on GPU memory resident foreign key columns.For big dataset,dimension vectors usually exceed the small shared memory size(48 KB),array index referencing involves many global memory access latency.In general,shared memory can hardly contain strong locality dataset such as dimension vectors or hash table,GPU’s SIMT(Single Instruction Multiple Threads)mechanism uses hardware threads to overlap device memory access latency.

    For further analysis on Co-OLAP,we compare SSB performance of CPU AIR algorithm,Co-OLAP model(CPU&GPU memory resident AIR algorithm)and open-source column-oriented MonetDB with version Feb2013-SP6 (http://www.monetdb.org/downloads/deb/).We execute each query for 3 times and use the minimal time as execution time to eliminate I/O overhead for MonetDB.In our 12-core workstation,shown as Fig.5,the average execution time of MonetDB is 571.87 ms.The average execution time of Co-OLAP is 136.36 ms.CPU AIR algorithm outperforms both Co-OLAP and Monet-DB,the average execution time is 89.06 ms.Co-OLAP model is 4.2 X faster than Monet-DB with GPU accelerator and 6.4 X faster than MonetDB with multicore CPUs.

    Fig.5 Performance comparison for different Co-OLAPs

    GPU OLAP commonly employs hash join algorithms and the overall performance is usually lower than column based MonetDB[13],the performance gains rely on GPU’s hardware performance opposite to algorithm efficiency.AIR algorithm is special designed for GPU vectorized processing and the algorithm efficiency is also higher than conventional hash join algorithms and MonetDB on multicore platform.

    CPU AIR algorithm still outperforms Co-OLAP even if we do not consider transfer cost,the pure star-join execution time for CPU and GPU platform is 89.06 ms and 99.67 ms,the main reasons lie in two aspects:

    · Dimension vectors in SSB dataset(SF=20)amount to 1.62 MB which are far less than CPU’s L3 cache size but far larger than GPU’s shared memory size,so star-join stage gains better cache locality in CPU than in GPU.

    ·CPU AIR algorithm employs dynamic vector as fact vector to avoid sequential scan on fact vector,programming for GPU is less efficient than for CPU.

    As a summary,one GPU’s processing performance is approximately equal to processing performance of two CPUs in our experiments.For concurrent queries,half workloads can be assigned to CPUs and the remainder workload can be assigned to GPU and CPUs with Co-OLAP model,the server’s performance can be doubled.

    4 Conclusion

    Different from many researches,we first focus on GPU-aware OLAP framework research instead of GPU-able relational operator optimizations,AIR algorithm is superior to in-memory database on both CPU platform and GPU platform.Co-OLAP model focuses on GPU memory resident computing strategy to maximize GPU computing power and minimize PCIe bus transmission overhead by assigning computing-intensive workload for GPU.Co-OLAP can also model the platform processing power by either configuring GPUs according to dataset size or give the maximal high performance Co-OLAP dataset size according to GPU memory size.

    [1] GOVINDARAJU N K,LLOYD B,WANG W,et al.Fast computation of database operations using graphics processors[C]//SIGMOD Conference.2004.

    [2] HE B,LIU M,YANG K,et al.Relational query coprocessing on graphics processors[J].ACM Transactions on Database Systems,2009,34(4).

    [3] HE B,YANG K,F(xiàn)ANG R,ey al.Relational joins on graphics processors[C]//SIGMOD,2008:511–524.

    [4] PIRK H,MANEGOLD S,KERSTEN M.Accelerating foreign-key joins using asymmetric memory channels[C]//ADMS,2011.

    [5] ALCANTARA D A,SHARF A,ABBASINEJAD F,et al.Real-time parallel hashing on the gpu[J].ACM Trans Graph,2009,28(5).

    [6] AO N,ZHANG F,WU D,et al.Efficient parallel lists intersection and index compression algorithms using graphics processing units[J].PVLDB,2011.

    [7] FANG W,HE B,LUO Q.Database compression on graphics processors[C]//VLDB,2010.

    [8] GOVINDARAJU N,GRAY J,KUMAR R,et al.Gputerasort:high performance graphics co-processor sorting for large database management[C]//SIGMOD,2006.

    [9] SATISH N,KIM C,CHHUGANI J,et al.Fast sort on cpus and gpus:a case for bandwidth oblivious simd sort[C]//SIGMOD,2010.

    [10] SITARIDI E,ROSS K.Ameliorating memory contention of olap operators on gpu processors[C]//DaMoN,2012:39-47.

    [11] WU H,DIAMOS G,CADAMBI S,et al.Kernel weaver:automatically fusing database primitives for efficient gpu computation[C]//MICRO-45.2012.

    [12] HE B,YU J X.High-throughput transaction executions on graphics processors[J].PVLDB,2011.

    [13] YUAN Y,LEE R B,ZHANG X D.The yin and yang of processing data warehousing queries on GPU devices[J].PVLDB,2013,6(10):817-828.

    [14] BLANAS S,LI Y,PATEL J.Design and evaluation of main memory hash join algorithms for multi-core cpus[C]//SIGMOD,2011:37–48.

    [15] BALKESEN C,TEUBNER J,ALONSO G,et al.Main-memory hash joins on multi-core cpus:Tuning to the underlying hardware[C]//ICDE,2013.

    [16] ABADI D J,MADDEN S,HACHEM N.Column-stores vs.row-stores:how different are they really?[C]//SIGMOD Conference.2008:967-980.

    [17] ZHANG Y S,WANG S,LU J H.Improving performance by creating a native join-index for OLAP[J].Frontiers of Computer Science in China,2011,5(2):236-249.

    午夜老司机福利剧场| 肉色欧美久久久久久久蜜桃| 国产深夜福利视频在线观看| 国产精品久久久久久精品古装| 成人国语在线视频| 人人妻人人澡人人爽人人夜夜| 亚洲中文av在线| 少妇被粗大的猛进出69影院 | 纯流量卡能插随身wifi吗| 狠狠精品人妻久久久久久综合| 国产日韩欧美亚洲二区| av女优亚洲男人天堂| 99热全是精品| 亚洲欧美一区二区三区国产| 人人妻人人添人人爽欧美一区卜| 两个人看的免费小视频| 亚洲精品自拍成人| 午夜福利网站1000一区二区三区| 亚洲,欧美,日韩| 岛国毛片在线播放| 波野结衣二区三区在线| 男女无遮挡免费网站观看| 丰满饥渴人妻一区二区三| 午夜福利影视在线免费观看| 久久影院123| 黑人高潮一二区| 少妇人妻 视频| 如日韩欧美国产精品一区二区三区| 精品人妻偷拍中文字幕| 欧美日韩精品成人综合77777| 国国产精品蜜臀av免费| 久久久久久久精品精品| a 毛片基地| av黄色大香蕉| 女性生殖器流出的白浆| 欧美精品一区二区免费开放| 亚洲国产欧美在线一区| 精品少妇内射三级| 久久99热6这里只有精品| 亚洲第一av免费看| 亚洲欧美成人精品一区二区| 捣出白浆h1v1| 蜜桃在线观看..| 女性生殖器流出的白浆| 1024视频免费在线观看| 国产熟女午夜一区二区三区| 欧美日韩精品成人综合77777| 免费女性裸体啪啪无遮挡网站| 伦精品一区二区三区| 免费少妇av软件| av国产久精品久网站免费入址| 成人影院久久| 国产一区二区在线观看av| 精品福利永久在线观看| 午夜激情久久久久久久| 九色亚洲精品在线播放| 成年动漫av网址| 男女免费视频国产| 欧美另类一区| 成人二区视频| 色94色欧美一区二区| 国产极品粉嫩免费观看在线| av电影中文网址| 高清在线视频一区二区三区| 欧美日韩综合久久久久久| 草草在线视频免费看| 美女福利国产在线| 国产高清三级在线| 一级片免费观看大全| 久久久国产一区二区| 欧美国产精品va在线观看不卡| 亚洲欧美色中文字幕在线| 久久久国产精品麻豆| 国产欧美日韩综合在线一区二区| videossex国产| videos熟女内射| 国产熟女欧美一区二区| 一级a做视频免费观看| 欧美xxxx性猛交bbbb| 精品人妻在线不人妻| 国产黄色免费在线视频| 日本av手机在线免费观看| 蜜桃国产av成人99| 90打野战视频偷拍视频| 亚洲av福利一区| 老司机影院成人| 青春草视频在线免费观看| 满18在线观看网站| 亚洲av电影在线观看一区二区三区| 麻豆乱淫一区二区| 黄色一级大片看看| 七月丁香在线播放| 一级黄片播放器| 国产精品不卡视频一区二区| 又大又黄又爽视频免费| 美女国产高潮福利片在线看| 亚洲三级黄色毛片| 久久99蜜桃精品久久| 美女xxoo啪啪120秒动态图| 在线观看www视频免费| 在线天堂中文资源库| 免费在线观看黄色视频的| 卡戴珊不雅视频在线播放| 九九爱精品视频在线观看| 国产成人精品在线电影| 大码成人一级视频| av女优亚洲男人天堂| 久久毛片免费看一区二区三区| 成人手机av| 日韩成人av中文字幕在线观看| 成人二区视频| 国产免费福利视频在线观看| 欧美性感艳星| 亚洲美女搞黄在线观看| 高清黄色对白视频在线免费看| 国产成人精品婷婷| 久久久精品区二区三区| 大陆偷拍与自拍| 久久久久视频综合| 国产黄色视频一区二区在线观看| 久久亚洲国产成人精品v| 街头女战士在线观看网站| 亚洲精品久久午夜乱码| 18禁观看日本| 肉色欧美久久久久久久蜜桃| 免费大片18禁| 国产亚洲av片在线观看秒播厂| 精品熟女少妇av免费看| 欧美少妇被猛烈插入视频| 国产精品国产三级国产专区5o| 高清视频免费观看一区二区| 亚洲综合色惰| 51国产日韩欧美| 国产毛片在线视频| 桃花免费在线播放| 日本欧美国产在线视频| 狠狠精品人妻久久久久久综合| 国产精品三级大全| 亚洲av中文av极速乱| 国产成人91sexporn| 看非洲黑人一级黄片| 日本黄大片高清| 欧美精品一区二区大全| 香蕉国产在线看| 亚洲综合色惰| 亚洲精品久久午夜乱码| 国产精品99久久99久久久不卡 | 国产成人免费无遮挡视频| 久久午夜综合久久蜜桃| 狂野欧美激情性xxxx在线观看| 亚洲成人手机| 亚洲欧洲精品一区二区精品久久久 | 看免费成人av毛片| 国产黄色免费在线视频| 七月丁香在线播放| 午夜免费鲁丝| 亚洲精品日本国产第一区| 亚洲国产欧美日韩在线播放| 国产伦理片在线播放av一区| 中文天堂在线官网| 十分钟在线观看高清视频www| 亚洲欧美成人综合另类久久久| 国产精品免费大片| 午夜老司机福利剧场| 蜜桃国产av成人99| 女性生殖器流出的白浆| 99久久中文字幕三级久久日本| 一区二区三区四区激情视频| 国产亚洲一区二区精品| 婷婷成人精品国产| 亚洲三级黄色毛片| 夫妻性生交免费视频一级片| 久久精品久久久久久噜噜老黄| 午夜福利视频精品| 九九爱精品视频在线观看| 国产av码专区亚洲av| 国产精品 国内视频| 色哟哟·www| 成人无遮挡网站| 久久精品久久久久久久性| 国产一区二区激情短视频 | 乱码一卡2卡4卡精品| av有码第一页| 成人毛片a级毛片在线播放| 欧美bdsm另类| 免费观看无遮挡的男女| 久久精品国产鲁丝片午夜精品| 久热这里只有精品99| 精品人妻偷拍中文字幕| 国产精品欧美亚洲77777| 亚洲高清免费不卡视频| 在线亚洲精品国产二区图片欧美| 亚洲性久久影院| 久久99一区二区三区| 亚洲综合色网址| 国产老妇伦熟女老妇高清| 国产精品久久久av美女十八| 国产永久视频网站| 一级黄片播放器| 亚洲一区二区三区欧美精品| 18禁动态无遮挡网站| 91久久精品国产一区二区三区| 女人久久www免费人成看片| 久久人人爽人人片av| 91久久精品国产一区二区三区| 久久久亚洲精品成人影院| 精品亚洲成a人片在线观看| 日日摸夜夜添夜夜爱| 亚洲伊人久久精品综合| 中文字幕人妻丝袜制服| 欧美变态另类bdsm刘玥| 一本大道久久a久久精品| 汤姆久久久久久久影院中文字幕| 自线自在国产av| 视频中文字幕在线观看| 成人手机av| av.在线天堂| 欧美人与善性xxx| 免费黄色在线免费观看| 观看美女的网站| 国产欧美亚洲国产| 国语对白做爰xxxⅹ性视频网站| 99热6这里只有精品| 在线观看免费高清a一片| 嫩草影院入口| 亚洲国产精品一区三区| 精品卡一卡二卡四卡免费| 多毛熟女@视频| 制服人妻中文乱码| 中文字幕最新亚洲高清| av在线观看视频网站免费| 久久人妻熟女aⅴ| 日本av免费视频播放| 国产福利在线免费观看视频| 丝袜人妻中文字幕| 99热国产这里只有精品6| 久久人人爽av亚洲精品天堂| 少妇熟女欧美另类| 中文字幕制服av| 日本欧美视频一区| 国产不卡av网站在线观看| 久久久久国产网址| 亚洲精品aⅴ在线观看| 欧美bdsm另类| 国产精品三级大全| 久久国产亚洲av麻豆专区| 国产精品一区www在线观看| 97在线人人人人妻| 一区二区日韩欧美中文字幕 | 最新中文字幕久久久久| 欧美日韩av久久| 亚洲国产精品999| 国产国语露脸激情在线看| 一本久久精品| 午夜免费男女啪啪视频观看| 亚洲av成人精品一二三区| 欧美 亚洲 国产 日韩一| 国产精品国产av在线观看| 如日韩欧美国产精品一区二区三区| 99久久综合免费| 高清在线视频一区二区三区| 免费高清在线观看视频在线观看| 春色校园在线视频观看| 亚洲成av片中文字幕在线观看 | 少妇高潮的动态图| 中文精品一卡2卡3卡4更新| 国产精品国产三级国产专区5o| 国产免费现黄频在线看| 久久ye,这里只有精品| 在线亚洲精品国产二区图片欧美| 成人毛片a级毛片在线播放| 男女高潮啪啪啪动态图| 最近2019中文字幕mv第一页| 国产精品国产av在线观看| 99热国产这里只有精品6| 最近手机中文字幕大全| 亚洲欧美色中文字幕在线| 久久久久久久久久久免费av| 国国产精品蜜臀av免费| 欧美xxxx性猛交bbbb| 在线观看免费视频网站a站| 99国产综合亚洲精品| 在线观看人妻少妇| 女人精品久久久久毛片| 两性夫妻黄色片 | 少妇的丰满在线观看| 桃花免费在线播放| 2022亚洲国产成人精品| 日韩不卡一区二区三区视频在线| 亚洲国产欧美在线一区| 日韩成人av中文字幕在线观看| 99久久综合免费| 日韩一区二区三区影片| 久久国产精品男人的天堂亚洲 | www.熟女人妻精品国产 | 色94色欧美一区二区| 男女啪啪激烈高潮av片| 亚洲美女视频黄频| av国产精品久久久久影院| 夜夜骑夜夜射夜夜干| 伊人久久国产一区二区| 欧美bdsm另类| 国产精品久久久久久久久免| 91午夜精品亚洲一区二区三区| 最后的刺客免费高清国语| 在线精品无人区一区二区三| 国产亚洲最大av| 日本91视频免费播放| 国产黄频视频在线观看| 日韩一区二区三区影片| 亚洲精品日韩在线中文字幕| 国产精品久久久久久精品电影小说| 五月开心婷婷网| 在线观看国产h片| 免费少妇av软件| 国产成人91sexporn| 国产精品蜜桃在线观看| 日本与韩国留学比较| 美女国产高潮福利片在线看| 大香蕉久久网| 久久久久久久精品精品| 中国美白少妇内射xxxbb| 国产男人的电影天堂91| 国产精品一二三区在线看| 内地一区二区视频在线| 女人精品久久久久毛片| 中文精品一卡2卡3卡4更新| 丰满迷人的少妇在线观看| 春色校园在线视频观看| 涩涩av久久男人的天堂| 人人妻人人爽人人添夜夜欢视频| 日韩人妻精品一区2区三区| 国产国拍精品亚洲av在线观看| 久久精品国产综合久久久 | 男人添女人高潮全过程视频| 国产福利在线免费观看视频| 丰满乱子伦码专区| 妹子高潮喷水视频| 考比视频在线观看| 在线天堂中文资源库| 黑丝袜美女国产一区| 极品人妻少妇av视频| 亚洲国产精品一区三区| 最近2019中文字幕mv第一页| 国产精品熟女久久久久浪| 国产精品久久久久久精品电影小说| 国产色爽女视频免费观看| 亚洲成色77777| 观看av在线不卡| 欧美精品av麻豆av| 午夜福利影视在线免费观看| 色婷婷久久久亚洲欧美| 欧美成人精品欧美一级黄| 国产淫语在线视频| 亚洲欧洲国产日韩| 久久久久久久国产电影| 少妇人妻 视频| 国产精品久久久久久久久免| 欧美日韩精品成人综合77777| 免费看av在线观看网站| 91国产中文字幕| 日韩一区二区三区影片| 黄片无遮挡物在线观看| 久久久精品区二区三区| 欧美日韩成人在线一区二区| 欧美成人午夜精品| 丝袜人妻中文字幕| 欧美丝袜亚洲另类| 街头女战士在线观看网站| 国产精品国产三级国产专区5o| 男女边摸边吃奶| 亚洲精品日本国产第一区| 你懂的网址亚洲精品在线观看| 热re99久久国产66热| 在线天堂中文资源库| 久久99热这里只频精品6学生| 宅男免费午夜| 成人漫画全彩无遮挡| 亚洲人成网站在线观看播放| 久久影院123| 日韩成人伦理影院| 亚洲内射少妇av| 男女无遮挡免费网站观看| 中国三级夫妇交换| 又黄又爽又刺激的免费视频.| 亚洲国产精品专区欧美| 久久精品国产亚洲av天美| 欧美bdsm另类| 亚洲精品一区蜜桃| 成人国语在线视频| 久久久久久久亚洲中文字幕| 高清av免费在线| 久久久国产欧美日韩av| 一级片'在线观看视频| 国产日韩欧美在线精品| 久久久久久伊人网av| 亚洲美女搞黄在线观看| 亚洲伊人久久精品综合| tube8黄色片| 最近最新中文字幕免费大全7| 国产乱人偷精品视频| 国产精品秋霞免费鲁丝片| 日韩制服丝袜自拍偷拍| 少妇人妻久久综合中文| 午夜影院在线不卡| 少妇的逼好多水| 美女中出高潮动态图| 色哟哟·www| 亚洲丝袜综合中文字幕| 中国国产av一级| 高清视频免费观看一区二区| 日日摸夜夜添夜夜爱| 久久久国产精品麻豆| 好男人视频免费观看在线| 99精国产麻豆久久婷婷| 在现免费观看毛片| 精品福利永久在线观看| 一二三四在线观看免费中文在 | 一区二区三区乱码不卡18| 亚洲成人av在线免费| 最近手机中文字幕大全| 成人毛片a级毛片在线播放| 亚洲欧美中文字幕日韩二区| 亚洲激情五月婷婷啪啪| 国产亚洲一区二区精品| 精品国产乱码久久久久久小说| 秋霞在线观看毛片| 亚洲性久久影院| 高清黄色对白视频在线免费看| 另类亚洲欧美激情| 美女脱内裤让男人舔精品视频| 制服诱惑二区| 啦啦啦中文免费视频观看日本| 亚洲三级黄色毛片| 一级毛片电影观看| 午夜福利,免费看| 啦啦啦中文免费视频观看日本| 看十八女毛片水多多多| 精品久久久精品久久久| 亚洲av欧美aⅴ国产| 少妇人妻精品综合一区二区| 两性夫妻黄色片 | 少妇高潮的动态图| 欧美人与性动交α欧美软件 | 欧美亚洲日本最大视频资源| 国产欧美日韩综合在线一区二区| 日本91视频免费播放| 国产亚洲欧美精品永久| 国产又色又爽无遮挡免| 午夜免费鲁丝| 亚洲成色77777| 我要看黄色一级片免费的| 国产成人精品久久久久久| 国产成人aa在线观看| 最新的欧美精品一区二区| 亚洲av综合色区一区| 看非洲黑人一级黄片| 精品人妻一区二区三区麻豆| 国产激情久久老熟女| 少妇的逼水好多| 久久热在线av| 人人妻人人澡人人爽人人夜夜| 最后的刺客免费高清国语| 国产成人精品无人区| 亚洲经典国产精华液单| 9色porny在线观看| 五月开心婷婷网| 婷婷色综合www| 亚洲精品aⅴ在线观看| 三级国产精品片| 波多野结衣一区麻豆| 天天躁夜夜躁狠狠躁躁| xxx大片免费视频| 18+在线观看网站| 欧美日韩视频高清一区二区三区二| 国产精品.久久久| 人妻人人澡人人爽人人| 91午夜精品亚洲一区二区三区| 亚洲精品中文字幕在线视频| 亚洲av.av天堂| 欧美97在线视频| 狂野欧美激情性xxxx在线观看| 伦精品一区二区三区| 18禁在线无遮挡免费观看视频| 肉色欧美久久久久久久蜜桃| 日韩 亚洲 欧美在线| 视频在线观看一区二区三区| 中文字幕免费在线视频6| 欧美bdsm另类| 狠狠精品人妻久久久久久综合| 制服诱惑二区| 久久久国产欧美日韩av| 男女高潮啪啪啪动态图| 伦理电影大哥的女人| 欧美国产精品va在线观看不卡| 2022亚洲国产成人精品| av线在线观看网站| 男女边吃奶边做爰视频| 国产一区二区激情短视频 | 精品一品国产午夜福利视频| 免费观看性生交大片5| 精品熟女少妇av免费看| a级毛色黄片| 日韩不卡一区二区三区视频在线| 亚洲精品久久成人aⅴ小说| 久久人人爽av亚洲精品天堂| 插逼视频在线观看| www.av在线官网国产| 午夜福利视频精品| 久久国产精品大桥未久av| 最后的刺客免费高清国语| 中文字幕另类日韩欧美亚洲嫩草| 91aial.com中文字幕在线观看| 18禁在线无遮挡免费观看视频| 国产av码专区亚洲av| 高清欧美精品videossex| 亚洲av日韩在线播放| 夜夜骑夜夜射夜夜干| 一级毛片黄色毛片免费观看视频| 日韩免费高清中文字幕av| 男女下面插进去视频免费观看 | 免费高清在线观看日韩| 午夜老司机福利剧场| 在线天堂最新版资源| 人妻人人澡人人爽人人| 亚洲av日韩在线播放| 久久人人爽人人片av| 欧美人与性动交α欧美精品济南到 | 亚洲国产精品999| 国产日韩一区二区三区精品不卡| 人妻一区二区av| xxxhd国产人妻xxx| 女人久久www免费人成看片| 好男人视频免费观看在线| 国产白丝娇喘喷水9色精品| 亚洲婷婷狠狠爱综合网| 国产免费福利视频在线观看| 久久人人爽人人片av| 国产熟女午夜一区二区三区| 飞空精品影院首页| 99久久中文字幕三级久久日本| h视频一区二区三区| 欧美国产精品一级二级三级| 高清视频免费观看一区二区| 日日摸夜夜添夜夜爱| 亚洲第一区二区三区不卡| 国产 精品1| 两性夫妻黄色片 | 免费观看av网站的网址| 亚洲精品国产av成人精品| 国产成人精品无人区| 午夜激情av网站| 2022亚洲国产成人精品| 亚洲国产欧美日韩在线播放| 久久精品久久久久久噜噜老黄| 黑人巨大精品欧美一区二区蜜桃 | 久久久久久人妻| 国产成人91sexporn| 成人综合一区亚洲| 国国产精品蜜臀av免费| 亚洲精品美女久久av网站| av国产久精品久网站免费入址| 肉色欧美久久久久久久蜜桃| 欧美xxxx性猛交bbbb| 亚洲精品,欧美精品| 内地一区二区视频在线| 色吧在线观看| tube8黄色片| 视频区图区小说| 欧美 亚洲 国产 日韩一| 精品人妻偷拍中文字幕| 丝袜脚勾引网站| 久久精品人人爽人人爽视色| 国产av国产精品国产| 欧美日韩综合久久久久久| 久久久久网色| 午夜日本视频在线| 久久久精品区二区三区| 免费播放大片免费观看视频在线观看| 高清在线视频一区二区三区| 亚洲av福利一区| 午夜福利乱码中文字幕| 欧美性感艳星| 90打野战视频偷拍视频| 老司机影院成人| 免费人妻精品一区二区三区视频| 韩国高清视频一区二区三区| 26uuu在线亚洲综合色| 久久久a久久爽久久v久久| √禁漫天堂资源中文www| 宅男免费午夜| 国产av国产精品国产| 99精国产麻豆久久婷婷| 下体分泌物呈黄色| 国产 一区精品| 国产一级毛片在线| 美女国产视频在线观看| 国产精品麻豆人妻色哟哟久久| 日韩三级伦理在线观看| h视频一区二区三区| 9色porny在线观看| 性高湖久久久久久久久免费观看| 男男h啪啪无遮挡| 欧美xxⅹ黑人| 三级国产精品片| 亚洲欧洲国产日韩| 亚洲三级黄色毛片| 青青草视频在线视频观看| 亚洲人成77777在线视频| 日本欧美国产在线视频| 亚洲一区二区三区欧美精品| 晚上一个人看的免费电影| 少妇人妻久久综合中文| h视频一区二区三区| 精品少妇久久久久久888优播|