日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

从Java视角理解伪共享(False Sharing)

發布時間:2024/1/17 java 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从Java视角理解伪共享(False Sharing) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

從我的前一篇博文中, 我們知道了CPU緩存及緩存行的概念, 同時用一個例子說明了編寫單線程Java代碼時應該注意的問題. 下面我們討論更為復雜, 而且更符合現實情況的多核編程時將會碰到的問題. 這些問題更容易犯, 連j.u.c包作者Doug Lea大師的JDK代碼里也存在這些問題.?

MESI協議及RFO請求?
前一篇我們知道, 典型的CPU微架構有3級緩存, 每個核都有自己私有的L1, L2緩存. 那么多線程編程時, 另外一個核的線程想要訪問當前核內L1, L2 緩存行的數據, 該怎么辦呢??
有人說可以通過第2個核直接訪問第1個核的緩存行. 這是可行的, 但這種方法不夠快. 跨核訪問需要通過Memory Controller(見上一篇的示意圖), 典型的情況是第2個核經常訪問第1個核的這條數據, 那么每次都有跨核的消耗. 更糟的情況是, 有可能第2個核與第1個核不在一個插槽內.況且Memory Controller的總線帶寬是有限的, 扛不住這么多數據傳輸. 所以, CPU設計者們更偏向于另一種辦法: 如果第2個核需要這份數據, 由第1個核直接把數據內容發過去, 數據只需要傳一次.?

那么什么時候會發生緩存行的傳輸呢? 答案很簡單: 當一個核需要讀取另外一個核的臟緩存行時發生. 但是前者怎么判斷后者的緩存行已經被弄臟(寫)了呢??

下面將詳細地解答以上問題. 首先我們需要談到一個協議--MESI協議(鏈接). 現在主流的處理器都是用它來保證緩存的相干性和內存的相干性. M,E,S和I代表使用MESI協議時緩存行所處的四個狀態:?
  • M(修改, Modified): 本地處理器已經修改緩存行, 即是臟行, 它的內容與內存中的內容不一樣. 并且此cache只有本地一個拷貝(專有).
  • E(專有, Exclusive): 緩存行內容和內存中的一樣, 而且其它處理器都沒有這行數據
  • S(共享, Shared): 緩存行內容和內存中的一樣, 有可能其它處理器也存在此緩存行的拷貝
  • I(無效, Invalid): 緩存行失效, 不能使用
?
上圖源自于內核開發者Ulrich Drepper著名的What Every Programmer Should Know About Memory一書(下載), 簡要地展示了緩存行的四種狀態轉換. 不過他的書中沒有說明白這四個狀態是怎么轉換的, 下面我用小段文字來說明一下.?

初始?一開始時, 緩存行沒有加載任何數據, 所以它處于I狀態.?
本地寫(Local Write)如果本地處理器寫數據至處于I狀態的緩存行, 則緩存行的狀態變成M.?
本地讀(Local Read)?如果本地處理器讀取處于I狀態的緩存行, 很明顯此緩存沒有數據給它. 此時分兩種情況: (1)其它處理器的緩存里也沒有此行數據, 則從內存加載數據到此緩存行后, 再將它設成E狀態, 表示只有我一家有這條數據, 其它處理器都沒有 (2)其它處理器的緩存有此行數據, 則將此緩存行的狀態設為S狀態.?

P.S.如果處于M狀態的緩存行, 再由本地處理器寫入/讀出, 狀態是不會改變的.?

遠程讀(Remote Read)?假設我們有兩個處理器c1和c2. 如果c2需要讀另外一個處理器c1的緩存行內容, c1需要把它緩存行的內容通過內存控制器(Memory Controller)發送給c2, c2接到后將相應的緩存行狀態設為S. 在設置之前, 內存也得從總線上得到這份數據并保存.?

遠程寫(Remote Write)?其實確切地說不是遠程寫, 而是c2得到c1的數據后, 不是為了讀, 而是為了寫. 也算是本地寫, 只是c1也擁有這份數據的拷貝, 這該怎么辦呢? c2將發出一個RFO(Request For Owner)請求, 它需要擁有這行數據的權限, 其它處理器的相應緩存行設為I, 除了它自已, 誰不能動這行數據. 這保證了數據的安全, 同時處理RFO請求以及設置I的過程將給寫操作帶來很大的性能消耗.?

以上只是列舉了一些狀態轉換, 為下文做鋪墊. 如果全部描述,需要非常大量的文字, 大家參考這張圖就知道原因了, 可以通過此圖了解MESI協議更詳細的信息.?

偽共享?
我們從上節知道, 寫操作的代價很高, 特別當需要發送RFO消息時. 我們編寫程序時, 什么時候會發生RFO請求呢? 有以下兩種:?
1. 線程的工作從一個處理器移到另一個處理器, 它操作的所有緩存行都需要移到新的處理器上. 此后如果再寫緩存行, 則此緩存行在不同核上有多個拷貝, 需要發送RFO請求了.?
2. 兩個不同的處理器確實都需要操作相同的緩存行?

由上一篇我們知道, 在Java程序中,數組的成員在緩存中也是連續的. 其實從Java對象的相鄰成員變量也會加載到同一緩存行中. 如果多個線程操作不同的成員變量, 但是相同的緩存行, 偽共享(False Sharing)問題就發生了. 下面引用Disruptor項目Lead的博文中的示例圖和實驗例子(偷會懶,但會加上更詳細的profile方法).?
?
一個運行在處理器core 1上的線程想要更新變量X的值, 同時另外一個運行在處理器core 2上的線程想要更新變量Y的值. 但是, 這兩個頻繁改動的變量都處于同一條緩存行. 兩個線程就會輪番發送RFO消息, 占得此緩存行的擁有權. 當core 1取得了擁有權開始更新X, 則core 2對應的緩存行需要設為I狀態. 當core 2取得了擁有權開始更新Y, 則core 1對應的緩存行需要設為I狀態(失效態). 輪番奪取擁有權不但帶來大量的RFO消息, 而且如果某個線程需要讀此行數據時, L1和L2緩存上都是失效數據, 只有L3緩存上是同步好的數據.從前一篇我們知道, 讀L3的數據非常影響性能. 更壞的情況是跨槽讀取, L3都要miss,只能從內存上加載.?
表面上X和Y都是被獨立線程操作的, 而且兩操作之間也沒有任何關系.只不過它們共享了一個緩存行, 但所有競爭沖突都是來源于共享.?

實驗及分析?
引用Martin的例子, 稍做修改,代碼如下:?
Java代碼??
  • public?final?class?FalseSharing?implements?Runnable?{??
  • ????public?static?int?NUM_THREADS?=?4;?//?change??
  • ????public?final?static?long?ITERATIONS?=?500L?*?1000L?*?1000L;??
  • ????private?final?int?arrayIndex;??
  • ????private?static?VolatileLong[]?longs;??
  • ??
  • ????public?FalseSharing(final?int?arrayIndex)?{??
  • ????????this.arrayIndex?=?arrayIndex;??
  • ????}??
  • ??
  • ????public?static?void?main(final?String[]?args)?throws?Exception?{??
  • ????????Thread.sleep(10000);??
  • ????????System.out.println("starting....");??
  • ????????if?(args.length?==?1)?{??
  • ????????????NUM_THREADS?=?Integer.parseInt(args[0]);??
  • ????????}??
  • ??
  • ????????longs?=?new?VolatileLong[NUM_THREADS];??
  • ????????for?(int?i?=?0;?i?<?longs.length;?i++)?{??
  • ????????????longs[i]?=?new?VolatileLong();??
  • ????????}??
  • ????????final?long?start?=?System.nanoTime();??
  • ????????runTest();??
  • ????????System.out.println("duration?=?"?+?(System.nanoTime()?-?start));??
  • ????}??
  • ??
  • ????private?static?void?runTest()?throws?InterruptedException?{??
  • ????????Thread[]?threads?=?new?Thread[NUM_THREADS];??
  • ????????for?(int?i?=?0;?i?<?threads.length;?i++)?{??
  • ????????????threads[i]?=?new?Thread(new?FalseSharing(i));??
  • ????????}??
  • ????????for?(Thread?t?:?threads)?{??
  • ????????????t.start();??
  • ????????}??
  • ????????for?(Thread?t?:?threads)?{??
  • ????????????t.join();??
  • ????????}??
  • ????}??
  • ??
  • ????public?void?run()?{??
  • ????????long?i?=?ITERATIONS?+?1;??
  • ????????while?(0?!=?--i)?{??
  • ????????????longs[arrayIndex].value?=?i;??
  • ????????}??
  • ????}??
  • ??
  • ????public?final?static?class?VolatileLong?{??
  • ????????public?volatile?long?value?=?0L;??
  • ????????public?long?p1,?p2,?p3,?p4,?p5,?p6;?//?注釋??
  • ????}??
  • }??

  • 代碼的邏輯是默認4個線程修改一數組不同元素的內容.? 元素的類型是VolatileLong, 只有一個長整型成員value和6個沒用到的長整型成員. value設為volatile是為了讓value的修改所有線程都可見. 在一臺Westmere(Xeon E5620 8core*2)機器上跑一下看?
    Shell代碼??
  • $?java?FalseSharing??
  • starting....??
  • duration?=?9316356836??

  • 把以上代碼49行注釋掉, 看看結果:?
    Shell代碼??
  • $?java?FalseSharing??
  • starting....??
  • duration?=?59791968514??

  • 兩個邏輯一模一樣的程序, 前者只需要9秒, 后者跑了將近一分鐘, 這太不可思議了! 我們用偽共享(False Sharing)的理論來分析一下. 后面的那個程序longs數組的4個元素,由于VolatileLong只有1個長整型成員, 所以整個數組都將被加載至同一緩存行, 但有4個線程同時操作這條緩存行, 于是偽共享就悄悄地發生了. 讀者可以測試一下2,4,8, 16個線程分別操作時分別是什么效果, 什么樣的趨勢.?

    那么怎么避免偽共享呢? 我們未注釋的代碼就告訴了我們方法. 我們知道一條緩存行有64字節, 而Java程序的對象頭固定占8字節(32位系統)或12字節(64位系統默認開啟壓縮, 不開壓縮為16字節), 詳情見?鏈接. 我們只需要填6個無用的長整型補上6*8=48字節, 讓不同的VolatileLong對象處于不同的緩存行, 就可以避免偽共享了(64位系統超過緩存行的64字節也無所謂,只要保證不同線程不要操作同一緩存行就可以). 這個辦法叫做補齊(Padding).?

    如何從系統層面觀察到這種優化是切實有效的呢? 很可惜, 由于很多計算機的微架構不同, 我們沒有工具來直接探測偽共享事件(包括Intel Vtune和Valgrind). 所有的工具都是從側面來發現的, 下面通過Linux利器OProfile來證明一下. 上面的程序的數組只是占64 * 4 = 256字節, 而且在連續的物理空間, 照理來說數據會在L1緩存上就命中, 肯定不會傳入到L2緩存中, 只有在偽共享發生時才會出現. 于是, 我們可以通過觀察L2緩存的IN事件就可以證明了,步驟如下:?
    Shell代碼??
  • #?設置捕捉L2緩存IN事件??
  • $?sudo??opcontrol?--setup?--event=L2_LINES_IN:100000??
  • #?清空工作區??
  • $?sudo?opcontrol?--reset??
  • #?開始捕捉??
  • $?sudo?opcontrol?--start??
  • #?運行程序??
  • $?java?FalseSharing??
  • #?程序跑完后,?dump捕捉到的數據??
  • $?sudo?opcontrol?--dump??
  • #?停止捕捉??
  • $?sudo?opcontrol?-h??
  • #?報告結果??
  • $?opreport?-l?`which?java`??


  • 比較一下兩個版本的結果, 慢的版本:?
    Shell代碼??
  • $?opreport?-l?`which?java`??
  • CPU:?Intel?Westmere?microarchitecture,?speed?2400.2?MHz?(estimated)??
  • Counted?L2_LINES_IN?events?(L2?lines?alloacated)?with?a?unit?mask?of?0x07?(any?L2?lines?alloacated)?count?100000??
  • samples??%????????p_w_picpath?name???????????????symbol?name??
  • 34085????99.8447??anon?(tgid:18051?range:0x7fcdee53d000-0x7fcdee7ad000)?anon?(tgid:18051?range:0x7fcdee53d000-0x7fcdee7ad000)??
  • 51????????0.1494??anon?(tgid:16054?range:0x7fa485722000-0x7fa485992000)?anon?(tgid:16054?range:0x7fa485722000-0x7fa485992000)??
  • 2?????????0.0059??anon?(tgid:2753?range:0x7f43b317e000-0x7f43b375e000)?anon?(tgid:2753?range:0x7f43b317e000-0x7f43b375e000)??

  • 快的版本:?
    Shell代碼??
  • $?opreport?-l?`which?java`??
  • CPU:?Intel?Westmere?microarchitecture,?speed?2400.2?MHz?(estimated)??
  • Counted?L2_LINES_IN?events?(L2?lines?alloacated)?with?a?unit?mask?of?0x07?(any?L2?lines?alloacated)?count?100000??
  • samples??%????????p_w_picpath?name???????????????symbol?name??
  • 22???????88.0000??anon?(tgid:18873?range:0x7f3e3fa8a000-0x7f3e3fcfa000)?anon?(tgid:18873?range:0x7f3e3fa8a000-0x7f3e3fcfa000)??
  • 3????????12.0000??anon?(tgid:2753?range:0x7f43b317e000-0x7f43b375e000)?anon?(tgid:2753?range:0x7f43b317e000-0x7f43b375e000)??

  • 慢的版本由于False Sharing引發的L2緩存IN事件達34085次, 而快版本的為0次.?

    總結?
    偽共享在多核編程中很容易發生, 而且比較隱蔽. 例如, 在JDK的LinkedBlockingQueue中, 存在指向隊列頭的引用head和指向隊列尾的引用last. 而這種隊列經常在異步編程中使有,這兩個引用的值經常的被不同的線程修改, 但它們卻很可能在同一個緩存行, 于是就產生了偽共享. 線程越多, 核越多,對性能產生的負面效果就越大.?
    某些Java編譯器會將沒有使用到的補齊數據, 即示例代碼中的6個長整型在編譯時優化掉, 可以在程序中加入一些代碼防止被編譯優化.?
    Java代碼??
  • public?static?long?preventFromOptimization(VolatileLong?v)?{??
  • ????return?v.p1?+?v.p2?+?v.p3?+?v.p4?+?v.p5?+?v.p6;??
  • }??

  • 另外, 由于Java的GC問題. 數據在內存和對應的CPU緩存行的位置有可能發生變化, 所以在使用pad的時候應該注意GC的影響.?

    最后感謝同事撒迦,?長仁在Java對象內存布局及Profile工具上給予的幫助.?

    2012年4月19日更新:?
    發現netty和grizzly的代碼中的LinkedTransferQueue中都使用了PaddedAtomicReference<QNode>來代替原來的Node, 使用了補齊的辦法解決了隊列偽共享的問題. 不知道是不是JSR-166的人開發的, 看來他們早就意識到這個問題了. 但是從Doug Lea JSR-166的cvs看不到這個變化, 不知道究竟是誰改的? 他們的repository到底是在哪??

    2012年5月19日更新:?
    為了區別Cache Coherence和Cache Consistency兩個概念, 不讓讀者混淆, 這里把Cache Coherence改翻譯成緩存相干性.?

    轉載于:https://blog.51cto.com/w19995/1057911

    總結

    以上是生活随笔為你收集整理的从Java视角理解伪共享(False Sharing)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    国产不卡一二三区 | 欧美一区二区三区激情视频 | 亚洲精品动漫成人3d无尽在线 | 亚洲午夜精品一区 | 成年人电影免费看 | 97热在线观看 | a在线视频v视频 | 深爱激情丁香 | 国产视频 久久久 | 97人人模人人爽人人少妇 | 免费中午字幕无吗 | 亚洲高清视频在线观看 | 亚洲专区视频在线观看 | 天天做日日爱夜夜爽 | 美女免费网站 | 国产精品成人免费精品自在线观看 | 西西44人体做爰大胆视频 | 91精品国自产在线偷拍蜜桃 | 国产黄a三级三级三级三级三级 | www狠狠| 久久男人免费视频 | 九九九九热精品免费视频点播观看 | 日本中文字幕久久 | 人人操日日干 | 激情综合婷婷 | 亚洲91精品在线观看 | 中文字幕在线视频第一页 | 亚洲精品小视频 | 99麻豆视频 | 天天爽夜夜爽精品视频婷婷 | 久草在线视频免费资源观看 | 久草在线免费电影 | 2019天天干天天色 | 免费在线激情视频 | 成人精品在线 | 综合激情网 | 特级aaa毛片| 97视频中文字幕 | 国产精品成人一区二区三区吃奶 | 国产一级免费电影 | 女人18毛片a级毛片一区二区 | 五月香视频在线观看 | 亚洲欧洲国产视频 | 亚洲伊人天堂 | 一级黄视频 | 国产不卡av在线播放 | 91麻豆国产| 中文字幕黄色 | 日韩av在线看 | av看片在线 | 国产成人在线看 | 激情综合亚洲精品 | 免费日韩一区二区三区 | 欧美精品视 | 激情丁香综合五月 | 国产精品日韩在线观看 | 免费视频一级片 | 亚洲欧美激情插 | 日韩亚洲精品电影 | 日韩免费观看一区二区三区 | 天天操天天干天天操天天干 | 插久久| 国内精品久久久久久久影视简单 | 大荫蒂欧美视频另类xxxx | 九九色综合 | 久久五月网 | 久久伊人精品天天 | 色综合婷婷 | 国产一区在线免费观看视频 | 中文一区二区三区在线观看 | 欧美日韩精品在线 | 在线观看日韩视频 | 鲁一鲁影院 | 国产 日韩 在线 亚洲 字幕 中文 | www.亚洲精品视频 | 久久免费a| 精品国产一区二区三区久久久蜜臀 | 国产精品久久电影网 | 日韩av片无码一区二区不卡电影 | 韩日色视频 | 五月天天色 | а天堂中文最新一区二区三区 | 伊人色播| 免费看黄色91 | 国产成人精品亚洲精品 | 国产视频黄 | 日本精品一区二区 | 国产精品乱码久久久久 | 精品久久久久久久久久久久久 | 久久久久久久久网站 | 国产成人精品999在线观看 | 香蕉视频久久久 | 欧美精品九九99久久 | 国产精品乱码久久 | 日本黄色免费在线观看 | av在线之家电影网站 | 久久久视屏 | 九九欧美 | 精品视频一区在线 | 天天干.com | 美女网站黄在线观看 | 免费亚洲婷婷 | 91亚洲网 | 国产日韩精品一区二区三区在线 | 日韩爱爱网站 | 在线播放视频一区 | 伊人五月婷| 精品国产一区二区三区久久影院 | 91精品影视 | 九九热中文字幕 | 人人干天天射 | 人人舔人人干 | 99精品国产福利在线观看免费 | 国内精品亚洲 | 91精品国产自产在线观看永久 | 国产日韩精品欧美 | 久久草在线免费 | 久久久99精品免费观看app | 精品国产aⅴ一区二区三区 在线直播av | 四虎影视成人精品国库在线观看 | 久久av网址 | 欧美日韩三级在线观看 | 久久久久日本精品一区二区三区 | 在线观看一区视频 | 亚洲黄在线观看 | 视频在线观看国产 | 黄色大片免费网站 | av在线进入 | 视频成人 | 久久亚洲电影 | 欧美一区二区日韩一区二区 | 97超视频在线观看 | 日韩欧美国产成人 | 色综合国产 | 亚洲最大av网 | 91福利视频久久久久 | av成人免费在线看 | 成人h动漫在线看 | 又黄又爽又刺激的视频 | 天天做夜夜做 | 午夜精品久久久久99热app | 国产不卡视频在线 | 在线免费视频你懂的 | 激情综合网五月 | 成人中心免费视频 | 日韩午夜小视频 | a视频免费在线观看 | av免费高清观看 | 日韩动漫免费观看高清完整版在线观看 | 99精品福利 | 国产中文在线播放 | 欧美激情精品 | 日韩欧美精品在线观看 | 日韩中文字幕91 | av蜜桃在线 | 日本中文字幕在线免费观看 | 欧美91精品久久久久国产性生爱 | 日韩视频一区二区三区在线播放免费观看 | 国产区在线 | 久久99国产综合精品免费 | 欧美日韩伦理在线 | 国产999精品久久久 免费a网站 | 天天干天天拍天天操天天拍 | 日韩av黄 | av高清一区| 深夜男人影院 | 青青河边草免费观看完整版高清 | 日韩免费b | 亚洲精品午夜久久久 | 97在线免费视频 | 精品一区二区免费视频 | 亚洲激情电影在线 | 亚洲无吗视频在线 | 国产一区二区三区在线免费观看 | 国产在线国偷精品产拍免费yy | 97av精品 | 一区二区三区在线免费观看视频 | 中文字幕观看在线 | 超碰人人av | 久久亚洲精品电影 | 亚洲精品免费在线观看 | 久久免费视频精品 | 日本精品视频在线观看 | 91精品国产自产在线观看永久 | 日本中文一级片 | 色婷婷久久久综合中文字幕 | 色就是色综合 | 亚洲精品电影在线 | www色综合 | 深爱五月激情网 | 欧美日韩国产一区二 | 天天射狠狠干 | 日韩欧美视频免费看 | 亚洲成人在线免费 | 91视频亚洲| 久久激情精品 | 国产精品久久久免费 | 免费看片网址 | 国产视频二区三区 | 亚洲综合国产精品 | 日韩欧美一区二区三区免费观看 | 夜夜爽88888免费视频4848 | 在线小视频你懂的 | www.av免费观看 | 高清一区二区三区 | 久草视频国产 | 免费国产在线观看 | 久久综合九色99 | 在线观看中文字幕视频 | 国产99在线免费 | 日本公妇色中文字幕 | 久久av高清 | 天天干天天搞天天射 | 国产精品高清免费在线观看 | 黄色毛片大全 | 日韩精品免费在线 | 成人播放器 | 香蕉在线播放 | 色婷婷福利 | 欧美激情精品 | 四虎在线视频免费观看 | 国产99久久久国产精品免费二区 | 国产精品美女www爽爽爽视频 | 国产精品成人一区二区三区吃奶 | 亚洲精品视频免费观看 | av解说在线 | 91成人精品在线 | ,午夜性刺激免费看视频 | 五月婷婷激情六月 | 日日日日日| 精品久久久免费视频 | 最新日韩视频 | 国产精品久久 | 最近中文字幕在线中文高清版 | 国产成人精品一区二三区 | 亚洲精品乱码久久久久久写真 | 毛片美女网站 | 黄色av电影在线观看 | 高清精品在线 | 久久久久网站 | 成人免费观看网站 | 久久免费在线观看视频 | 9999免费视频| 一区二区三区av在线 | 特级西西人体444是什么意思 | 亚洲午夜精品在线观看 | 麻豆影视在线观看 | av资源在线看 | 日韩a免费 | 一级a性色生活片久久毛片波多野 | 国产精品精品 | 色偷偷888欧美精品久久久 | 狠狠狠色丁香综合久久天下网 | 在线导航av | 天天干天天拍 | 午夜a区| 婷婷丁香色综合狠狠色 | 在线看一级片 | 国产破处在线播放 | 国产a视频免费观看 | 国产中文字幕一区二区 | 国产不卡免费av | 亚洲国产片色 | 亚洲精品人人 | 精品欧美一区二区在线观看 | 久久久久久久国产精品视频 | 久久免费视频2 | 亚洲精品色视频 | 在线视频观看亚洲 | 美女网站视频久久 | 国产精品一区二区久久精品爱涩 | 亚洲成aⅴ人片久久青草影院 | 中文字幕永久免费 | 综合久久影院 | 久久成电影 | av在线一 | 伊人狠狠色丁香婷婷综合 | 欧美a√大片 | 久久亚洲综合色 | 亚洲精品免费在线观看 | 欧美韩国日本在线 | 最近免费观看的电影完整版 | 免费又黄又爽 | 欧美三级免费 | 一本一本久久a久久精品综合 | 999久久国精品免费观看网站 | 亚洲国产高清在线观看视频 | 欧美精品久久久久久久久久 | 久久国产视屏 | 婷婷深爱网| 99热官网 | 亚洲狠狠婷婷综合久久久 | 亚洲经典视频 | 亚洲,国产成人av | 亚洲一区二区精品视频 | 亚洲国产精品激情在线观看 | 一区 二区电影免费在线观看 | 精品久久久久国产 | 日韩欧美精品在线视频 | 伊色综合久久之综合久久 | 亚洲激情在线视频 | 亚洲国产精品va在线看黑人 | 综合久久一本 | 99视频精品全部免费 在线 | 高清一区二区 | 亚洲精品tv| 日本中文字幕电影在线免费观看 | 色综久久| 日本黄色免费大片 | 国产高清绿奴videos | 日日操网| 国产视频 亚洲视频 | 色香网| 亚洲蜜桃av| 美女网站免费福利视频 | 国产在线播放一区 | 久艹在线免费观看 | 日韩欧美一区二区在线观看 | 国产黄色精品在线 | 一区二区视频在线看 | 五月激情六月丁香 | 在线观看视频亚洲 | 亚洲精品乱码久久久久久高潮 | 丁香六月天 | 在线播放一区二区三区 | 国产精品视频最多的网站 | 久免费视频| 亚洲激情中文 | av大片免费看 | 免费视频99| 91丨九色丨91啦蝌蚪老版 | 久久视频二区 | 亚洲成aⅴ人片久久青草影院 | 91在线看黄 | 欧美一级黄色网 | 国产麻豆视频在线观看 | 亚洲精品在线观看视频 | 国产v在线 | 久久这里只有精品23 | 亚洲天堂网在线观看视频 | 久久五月婷婷综合 | 亚洲国产高清在线观看视频 | 久久婷婷精品视频 | 国产一区二区三区高清播放 | 免费在线日韩 | 免费三级大片 | 久艹视频在线免费观看 | 国产精品一区二区免费视频 | 美女黄濒 | 欧美一区二区在线免费看 | 亚洲激情小视频 | 在线视频18在线视频4k | 99热精品国产一区二区在线观看 | 国产99黄| 一区二区理论片 | 一区 二区 精品 | 五月激情站| 国产在线中文字幕 | www.天天操| 97精品在线观看 | 亚洲综合色网站 | 黄色h在线观看 | 99精品国产99久久久久久97 | 久久天堂亚洲 | 99热9 | 欧美9999| 欧美一级专区免费大片 | 99综合久久 | 国产免费嫩草影院 | 99这里只有 | 99久久久国产精品免费99 | 亚洲视频在线观看网站 | 欧美日韩中文另类 | 一级成人在线 | 久久婷婷一区二区三区 | 日日摸日日添夜夜爽97 | 国产亚洲成av片在线观看 | 日本乱码在线 | 国产91电影在线观看 | 久久免费视频在线 | 国产成人精品一区二区三区免费 | 97成人在线观看视频 | www.黄色小说.com | 天天看天天干 | 丁香网五月天 | 成人网444ppp | 国产免费亚洲 | 国产精品露脸在线 | 麻豆久久久久 | 久久理伦片 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产精品综合久久久久久 | 99精品视频免费看 | 手机在线观看国产精品 | 天天草天天干天天射 | 久久99国产精品久久99 | 久久久免费网站 | 日韩免费一级电影 | 玖玖视频| av视屏在线| 日精品在线观看 | 久久国产精品99久久久久久老狼 | 国产美腿白丝袜足在线av | 国产一区二区三区高清播放 | 成年人黄色免费网站 | 92中文资源在线 | 国产一区二区三区视频在线 | 亚洲欧美日韩国产一区二区 | 午夜久久久久久久 | 国产视频久 | 久久久久久久久久久高潮一区二区 | 国产永久免费高清在线观看视频 | 国产高清久久久 | 欧美三级在线播放 | 蜜臀久久99精品久久久酒店新书 | 精品国产一区二区三区在线观看 | 日韩欧美精品在线 | 午夜久久影院 | 麻豆免费精品视频 | 日韩免费电影网站 | 人人插人人草 | 99精品免费久久久久久久久 | 天堂av高清 | 五月天婷婷狠狠 | 精精国产xxxx视频在线播放 | 成年人在线播放视频 | 日韩r级在线| 国产日韩在线视频 | 免费看片网站91 | v片在线播放 | .国产精品成人自产拍在线观看6 | 久草在线99| 国产手机视频在线播放 | 日韩欧美高清在线 | 99热这里只有精品在线观看 | 久热免费在线 | 国产精品丝袜在线 | 欧美日韩视频在线观看一区二区 | 亚洲综合欧美激情 | 亚洲人成精品久久久久 | 天天爱天天色 | 91女子私密保健养生少妇 | www色网站 | 午夜精品一区二区三区在线 | 国产又粗又硬又爽的视频 | 久久99精品国产99久久 | 日韩欧美视频在线播放 | 一区二区精品在线观看 | 天天操夜夜摸 | 久久国产精品久久w女人spa | 中文字幕 第二区 | 久久国产精品久久国产精品 | 97激情影院| 黄av免费 | 日韩欧美在线一区 | 天天操天天射天天添 | 96久久欧美麻豆网站 | 国产网站av | 97精品国产97久久久久久 | 国产在线高清视频 | 成年一级片 | 国语久久 | 91av国产视频 | 一区二区三区视频 | 西西44人体做爰大胆视频 | 亚洲精品美女 | 久草在线视频网站 | 91看片麻豆 | 欧美精品成人在线 | 精品一区二区免费在线观看 | 97超碰在线久草超碰在线观看 | 正在播放国产一区二区 | 亚洲黄色在线播放 | 91视频麻豆视频 | 国产美女网站在线观看 | 亚州av一区 | 欧美 日韩 视频 | 久草香蕉在线 | 成人一区二区三区在线观看 | 国产日韩在线看 | www日日| 成年人网站免费观看 | 久久国产精品久久国产精品 | 国产一级免费在线 | 亚洲色综合| 国产精品毛片久久久久久久久久99999999 | 国产香蕉视频在线观看 | 国产免费大片 | 亚洲午夜久久久久久久久 | 亚洲综合色视频在线观看 | 最新超碰| 日日激情 | 91精品毛片| 一级片免费观看 | 成人黄色免费观看 | 国产啊v在线| 国产精品一区二区在线看 | 一区二区 不卡 | 99久精品| 波多野结衣网址 | 日本三级国产 | 一区二区精品视频 | 久久激情日本aⅴ | 国产精品久久久久久一二三四五 | 深爱婷婷网 | 欧美国产在线看 | 在线观看中文字幕一区 | 99视频| 欧美日韩在线播放 | 丝袜足交在线 | 91桃色在线免费观看 | 国产首页 | 日韩av电影免费在线观看 | 91麻豆高清视频 | 国产高清日韩欧美 | 在线观看网站黄 | 久久久久久久久久久久99 | 美女久久精品 | 久久久久日本精品一区二区三区 | 91一区在线观看 | 免费 在线 中文 日本 | 国产视频在线看 | 国产精品毛片一区 | 成人免费一级片 | 日韩电影精品一区 | 亚洲人成影院在线 | 狠狠色香婷婷久久亚洲精品 | 久久久伊人网 | 丁香六月综合网 | 草久草久 | 亚洲日本一区二区在线 | 亚洲国产成人av网 | 99热这里有精品 | 国产色拍 | 国产一区二区三区免费视频 | 亚洲精品综合在线观看 | 中文字幕免费高清在线 | 亚洲午夜不卡 | 欧美日韩二区三区 | 日日爽天天操 | 婷婷av网| 免费亚洲视频 | 久久国产乱 | 色妞色视频一区二区三区四区 | 天天综合色天天综合 | 国产小视频网站 | 欧美精品乱码99久久影院 | 91cn国产在线 | 免费av网站在线看 | 国产视频欧美视频 | 国产精品久久久久影院 | 又粗又长又大又爽又黄少妇毛片 | www.国产精品| 国产区在线 | 精产嫩模国品一二三区 | 色五月色开心色婷婷色丁香 | 中文字幕一区二区三区四区久久 | 欧洲精品亚洲精品 | 国产高清久久久久 | 国内精品久久久久久 | 91视频-88av| 伊人精品影院 | 日韩在线观看一区二区 | 成人免费观看在线视频 | 精品久久久成人 | 国产资源网站 | 久久综合成人网 | 丁香婷婷在线观看 | 日韩欧美一区二区三区免费观看 | 久久a v视频| 亚洲精品大全 | 国产美女永久免费 | 大型av综合网站 | 一级黄色大片 | av在线收看 | 人人dvd | 亚洲欧美国产精品久久久久 | 亚洲黄色高清 | 又黄又刺激又爽的视频 | 69久久久久久久 | 成人四虎影院 | 天堂网一区二区三区 | 久久久久久久久久久影院 | 在线成人欧美 | 免费看成人 | 日韩视频一区二区三区 | 国产亚洲精品免费 | 看片一区二区三区 | 欧美精品亚洲精品日韩精品 | 在线精品视频免费播放 | 免费男女羞羞的视频网站中文字幕 | 天天射天天干天天 | 香蕉视频网站在线观看 | 天天摸天天舔 | 久久精品aaa | 精品久久久久一区二区国产 | 亚洲一级黄色 | 亚洲精品国产麻豆 | 黄污视频大全 | 五月花婷婷| 免费一级黄色 | 亚洲高清av | 国产福利精品在线观看 | 91视频中文字幕 | 日日日网 | 91人人爽人人爽人人精88v | 五月天综合网 | 亚洲国产中文字幕 | 夜夜操天天干, | 97中文字幕 | 中文字幕一区二区三区在线播放 | 成人国产精品一区二区 | 亚洲激情综合 | 丰满少妇在线观看 | 日韩三级不卡 | 日韩电影中文字幕 | 国产精品第一视频 | 91香蕉视频好色先生 | 毛片888 | 久草av在线播放 | 国产午夜激情视频 | 免费观看成人网 | 美女网站视频一区 | 日韩二区三区在线 | 国产精品一区二区av | 中文字幕av网站 | 欧美日韩中文国产 | 日本精品午夜 | 91伊人久久大香线蕉蜜芽人口 | 欧美了一区在线观看 | 国产一区免费在线观看 | 狠狠干夜夜爱 | a√资源在线 | 国产视频在线观看一区 | 91成人在线看 | 亚洲va欧洲va国产va不卡 | 超碰97在线资源站 | 手机成人在线电影 | 97理论电影 | 中文字幕国产视频 | h文在线观看免费 | 深爱开心激情 | 婷婷丁香色 | 97超碰人人看 | 四虎在线影视 | 婷婷中文字幕在线观看 | 欧美一区二区三区在线 | www.操.com| 很黄很色很污的网站 | 中文字幕乱码日本亚洲一区二区 | 久草精品视频在线观看 | 中文字幕视频三区 | 国产专区在线看 | 99精品视频免费看 | 午夜精品av | 中文字幕国产在线 | 日韩一级黄色片 | 丁香伊人网| 99欧美 | 97视频免费看 | 国产在线a视频 | 在线三级av | 久久国产精品久久国产精品 | 美女国内精品自产拍在线播放 | 亚洲成人精品久久 | 在线视频日韩一区 | 亚洲精品国产品国语在线 | 成人高清av在线 | 国产在线p| 五月天婷亚洲天综合网精品偷 | 狠狠躁夜夜a产精品视频 | 免费a级毛片在线看 | 黄色国产精品 | 午夜美女福利直播 | 久久夜色精品国产欧美乱极品 | 亚洲专区在线 | 99草视频| 久久深爱网 | 免费日韩av电影 | 五月天激情综合 | 日本久久视频 | 毛片888| 国产不卡一区二区视频 | 精品久久久久久久久中文字幕 | 亚洲艳情| 久久精品影片 | 精品国偷自产国产一区 | 高清一区二区三区 | 欧洲色吧 | 丝袜制服天堂 | 免费视频成人 | 久要激情网 | 91视频在线观看下载 | 国产一区在线视频 | 狠狠的干狠狠的操 | 天天干视频在线 | 日韩久久影院 | 97国产在线 | 91精品成人久久 | 国产一二区视频 | 夜色.com | 91伊人久久大香线蕉蜜芽人口 | 亚洲九九| 亚洲天天摸日日摸天天欢 | 国产福利久久 | 人人干狠狠干 | 国产日韩视频在线 | www.色com | 99久久影院 | 欧美九九九 | 中文字幕一二 | 深爱激情五月综合 | 安徽妇搡bbbb搡bbbb | 久草干| 国产日韩在线播放 | 国产品久精国精产拍 | 9草在线| 一区二区三区在线观看 | 国产在线观看黄 | 在线免费观看的av网站 | 欧美另类一二三四区 | av超碰在线 | 精产嫩模国品一二三区 | 亚洲最大激情中文字幕 | 国产日韩欧美在线观看视频 | 色偷偷网站视频 | 黄色一区二区在线观看 | www.黄色片.com | 久久精品美女 | 波多野结衣一区二区 | 欧美久久久久久 | 日日操夜夜操狠狠操 | 日韩美女免费线视频 | 久草在线手机观看 | 国产中文视 | 一二区电影 | 免费在线日韩 | 久久综合中文色婷婷 | 中文字幕字幕中文 | 干天天 | 国产亚洲欧美精品久久久久久 | 亚洲精品在线观看网站 | 成年人电影免费在线观看 | 五月婷婷六月丁香在线观看 | 日韩精品一区二区三区中文字幕 | 日日夜精品| 天天操操操操操 | 欧美午夜a| 狠狠操狠狠 | 日本在线观看黄色 | 亚洲欧美日韩国产精品一区午夜 | 亚洲精品免费播放 | 欧美在线1 | 久久经典国产 | 精品久久久999 | 五月婷婷综合激情 | 亚洲国产精彩中文乱码av | 美女精品| 久久精品视频观看 | 一本到视频在线观看 | 国产精品亚洲片夜色在线 | 久久九九影视网 | 国产精品成人一区二区三区吃奶 | 91资源在线视频 | 国产亚洲婷婷免费 | 国产精品v欧美精品 | 久久久亚洲国产精品麻豆综合天堂 | 国产不卡视频 | 色综合天天综合网国产成人网 | 97精品国产97久久久久久春色 | 美女网站在线观看 | 国产精品不卡在线观看 | 在线v | 五月开心六月伊人色婷婷 | 美女视频黄色免费 | 色com网 | 日韩a在线 | 国产精品av电影 | 亚洲人成免费网站 | wwxxxx日本| 久久优| 亚洲永久精品在线观看 | 一区二区欧美在线观看 | 一区二区三区高清不卡 | 成人av在线播放网站 | 在线播放日韩 | 国产精品在线看 | 久久久久久97三级 | 国产成人a亚洲精品 | 亚洲砖区区免费 | 夜夜操天天干 | av中文在线 | 69精品久久久 | 国产精品中文字幕在线播放 | 国产成人精品av在线 | 欧美国产日韩在线观看 | 亚洲午夜久久久久久久久 | 国产1区2区3区精品美女 | 亚洲免费成人av电影 | 日韩精品免费 | 9在线观看免费高清完整版在线观看明 | 韩国三级在线一区 | 国产精品美女999 | 欧美精品小视频 | 精品在线播放 | 正在播放 国产精品 | 久久久国产高清 | 一区二区三区中文字幕在线 | 日韩在线不卡av | 亚洲精品乱码久久久久久蜜桃91 | 久久96国产精品久久99软件 | 婷婷激情五月综合 | 色综合婷婷 | 国产视频美女 | 欧美一级欧美一级 | 色黄视频免费观看 | 日韩com| 日日干日日操 | 国产高清不卡在线 | 中文字幕高清视频 | www激情com | 中文字幕二区三区 | 在线a视频 | 又黄又爽又刺激的视频 | 日本不卡久久 | 免费v片| 97色免费视频 | 在线国产高清 | www.五月婷婷.com| 久久免费视频精品 | 亚洲网久久 | 国产999在线 | 国产日产亚洲精华av | 99精品热视频只有精品10 | 亚洲午夜大片 | 91大神免费在线观看 | 91黄在线看 | 噜噜色官网 | 国产精品第一页在线 | 久久免费视屏 | 黄a在线观看 | 日韩免费电影在线观看 | 亚洲精品网站 | 夜色资源站wwwcom | 免费成人黄色片 | 国产四虎在线 | 欧美日韩国产一区二区三区在线观看 | 999精品视频 | 久久伊人精品天天 | 69av国产 | 99在线观看视频网站 | 91超碰免费在线 | 国产在线精 | 成人精品一区二区三区电影免费 | 国产成年免费视频 | 男女啪啪免费网站 | 九九在线免费视频 | 字幕网资源站中文字幕 | 久久91网 | 亚洲精品乱码久久久久 | 久久国产二区 | 在线视频观看91 | 97超碰人人澡人人爱学生 | 曰韩在线 | 在线成人一区 | 久久久精品网站 | 亚洲国产精品久久 | 亚洲精品中文字幕在线观看 | 久久久久麻豆v国产 | 久久精品爱爱视频 | 日韩欧美亚州 | 91av美女| 99国产情侣在线播放 | 午夜在线观看一区 | 91精品日韩| 中文字幕在线播放日韩 | 亚洲三级精品 | 欧美在线观看禁18 | 久久免费观看少妇a级毛片 久久久久成人免费 | 最新av免费在线观看 | 日韩av视屏在线观看 | 国产精品理论片在线观看 | 成人国产精品免费观看 | 人人干干人人 | 国产日韩精品在线观看 | 在线观看国产永久免费视频 | 欧美日韩视频免费看 | 青草视频免费观看 | 亚洲91精品在线观看 | 中文字幕在线看片 | 天天综合网 天天综合色 | 在线国产激情视频 | 97超碰国产精品女人人人爽 | 在线之家免费在线观看电影 | 中文字幕免费国产精品 | 国产精品毛片一区二区三区 | 国产精品一区二区三区观看 | 探花视频免费观看高清视频 | 日韩在线视频不卡 | 黄色精品国产 | 久久精国产 | 在线免费观看国产黄色 | 国产一区二区三区在线免费观看 | 成人蜜桃视频 | 最近中文字幕大全中文字幕免费 | 亚洲精品中文字幕视频 | 五月婷婷在线视频观看 | 免费观看一区二区三区视频 | 日本性生活一级片 | 91成人观看| 成人超碰在线 | 免费在线观看av网站 | 国产在线探花 | 国产精品欧美一区二区三区不卡 | 国产精品嫩草影院9 | 日韩欧美精选 | 夜夜操综合网 | 中文字幕在线看视频国产 | 午夜婷婷综合 | 狠狠的干狠狠的操 | 狠狠色丁香婷婷综合久小说久 | 国产精品综合在线观看 | 国产资源中文字幕 | 久久精品毛片 | 久黄色| 97超级碰碰碰碰久久久久 | 在线国产一区 | 99视频网站| 亚洲天天在线日亚洲洲精 | 久久这里只有精品久久 | 欧美午夜久久久 | 日韩精品中文字幕在线不卡尤物 | 国产一区二区在线免费 | www视频免费在线观看 | www国产亚洲精品久久麻豆 | 在线观看麻豆av | 久久久久免费网 | 开心综合网| 欧美日韩网站 | 久久久久99999 | 久久影院亚洲 | 日一日操一操 | 日本公妇色中文字幕 | 国产欧美最新羞羞视频在线观看 | 亚洲成aⅴ人片久久青草影院 | 五月婷婷视频在线 | 日本精品久久 | 在线婷婷 | 国产精品午夜av | 国产视频第二页 | 精品国内自产拍在线观看视频 | aaa毛片视频 | 国产麻豆精品久久一二三 | 日本女人的性生活视频 | www.久久色 | 精品999久久久 | 97成人啪啪网 | 99色免费视频 | av丝袜天堂 | 91在线区 | 91精品久久久久久综合乱菊 | 色丁香婷婷 | 国产香蕉97碰碰久久人人 | av高清一区二区三区 | 97精品超碰一区二区三区 | 久久久久99999 | 99国产精品久久久久久久久久 | 999久久久精品视频 日韩高清www | 97看片网 | www.色婷婷 | 欧美最新大片在线看 | 亚洲成a人片77777kkkk1在线观看 | 午夜精品成人一区二区三区 | 91福利区一区二区三区 | 日韩av专区 | www.夜夜| 国产玖玖在线 | 日韩精品视频一二三 | 色网站在线免费观看 | 在线a视频免费观看 | 成人在线一区二区三区 | 狠狠色伊人亚洲综合网站色 | 免费久久精品视频 | av电影在线免费 | 免费中文字幕 | 国产精品色| 中文在线免费看视频 | 欧美a√大片 | 久久综合久久久久88 | 开心色插| 国产色视频网站2 | 人人超碰免费 | 一区二区三区日韩视频在线观看 | 成人免费观看电影 | 久久色视频 | av资源网在线播放 | 免费福利在线观看 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 |