精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

從「根」上找出模型的瓶頸!從第一原理出發剖析深度學習

人工智能 新聞
了解事物的底層邏輯才能更好地解決問題。康奈爾大學AI聯合創始人最近發了一篇文章,從第一原理出發,深度剖析深度學習性能瓶頸的三座大山:計算、內存和開銷。

如果想提升模型的性能,你的第一直覺是問搜索引擎嗎?

通常情況下你得到的建議只能是一些技巧性的操作,比如使用in-place operation,把梯度設置為None,或者是把PyTorch版本從1.10.1退回到穩定版1.10.0等等。

這些臨時找到的騷操作雖然可以一時地解決當下問題,但要是用了以后性能還沒提升到滿意的程度,那可能就有點「抓瞎」了。

雖然深度學習本身就是一個積木類的黑盒模型,但這種調試方法仿佛深度學習真的變成了煉丹術,而非科學。

比如你的模型在訓練集上的loss遠遠低于測試時的loss,說明模型已經「過擬合」了,如果這個時候再盲目增大模型的參數量,那就純粹是浪費時間了。再比如模型的訓練loss和驗證loss一樣的時候,如果再對模型加入正則化,那也是浪費時間。

所以為了讓AI從業者在遇到問題之后,能從根上解決,最近康奈爾大學人工智能(CUAI)的一位聯合創始人Horace He發表了一篇博客,把深度學習模型的時間損耗拆分成三部分:計算、內存和其他開銷overhead,從「第一原理」出發來了解和改進深度學習模型。

其中計算(Compute)指的是GPU在計算浮點操作時所消耗的時間,也就是FLOPS;內存(Memory)指的是把tensors寫到GPU里消耗的時間。

如果模型把大部分的時間都花在了內存傳輸上,那么增加GPU的FLOPS是沒有用的。又或者如果你把所有的時間都花在執行大塊的數學運算上,那么把你的模型邏輯改寫成C++來減少開銷也沒有用。

了解你所處的狀態可以讓你縮小優化的范圍,節省下來的時間就可以愉快地摸魚了。

計算

通常深度學習模型運算速度不夠快的原因都是顯卡性能不夠,加卡解千愁啊!

但現實很骨感,越強的卡,價格也更美麗。所以為了錢花的更值,需要盡可能地提升顯卡的運行效率,不斷地讓顯卡進行矩陣運行。

并且計算比內存帶寬更重要的原因還有一個,就是模型訓練過程中所需的計算量不管通過何種手段,基本都不會降低,所以最大限度提升計算能力才能提升效率。

但計算量如果增長速度過快,也會加劇最大化計算利用率的難度。就拿這個關于CPU FLOPS翻倍時間與內存帶寬翻倍時間的表格來說。

一種思考計算的方式是把CPU當作一個工廠。用戶向工廠發送指令(開銷)和原材料(內存帶寬),所有這些都是為了保持工廠高效運行(計算)。

如果工廠提高效率的速度超過了為其提供原材料的速度,那么工廠就更難達到其峰值效率。即使工廠的規模(FLOPS)增加了一倍,如果帶寬不能同步提升,那性能也不會增加一倍。

關于FLOPS還有一個補充。現代機器學習加速硬件都有專門用于矩陣乘法的硬件,比如Nvidia的Tensor Cores。

也就是說,如果你不做矩陣乘法,你就只能獲得19.5 teraflops,而非宣傳的312。并且這并非是GPU所獨有的缺陷,TPU甚至比GPU更不通用。

事實上,GPU在所有非矩陣乘法的操作上都很慢,乍一看可能影響很大,但實際上神經網絡模型里基本都是矩陣乘法。

在一篇關于BERT模型的flop研究中可以發現,BERT中99.8%都是矩陣乘法(Tensor Contraction)操作,所以雖然非矩陣乘法的速度要慢15倍,但也無傷大雅。

但在這種情況下,歸一化和點式運算實際上比矩陣乘法運算少了250倍的FLOPS和700倍的FLOPS。

至于為什么非矩陣乘法的理論性能和現實相差這么多,研究人員給出的答案是:內存帶寬(memory bandwidth)。

內存

帶寬成本本質上是將數據從一個地方移動到另一個地方所支付的成本,包括將數據從CPU轉移到GPU,從一個節點轉移到另一個節點,二者通常稱為「數據傳輸成本」和「網絡成本」。

深度學習模型優化關注的帶寬成本主要是從CUDA全局內存轉移到CUDA共享內存。

回到工廠那個例子,雖然工廠可以完成一些計算任務,但它并不是一個適合存儲大量數據的地方。典型的做法是利用更便宜的硬件來建立一個數據倉庫(DRAM),然后在倉庫和工廠之間運送物資,也就是內存帶寬。

GPU的DRAM大小可以通過nvidia-smi命令獲得,倉庫容量不夠也是導致CUDA Out of Memory錯誤的主要原因。

需要注意的是,每次執行GPU內核時,都需要將數據從GPU的DRAM移出和移回。

現在我們就知道執行torch.cos這樣的單個操作時,幾乎每做一次這樣的簡單運算,數據都需要從內存運到GPU里,運送成本比計算成本要高很多,所以時間幾乎都花在內存上了,這種情況也稱為memory-bound operation。

錯誤的做法就是每次都把數據送到GPU計算后返回結果,再把結果送給GPU再次計算,可以看到,大量的時間都耗費在數據傳輸上了。

稍作調整之后,當預先把指令都放入計算時,內存的傳輸降為一次即可完成相同的任務。

如果換成pyTorch的代碼就是把兩行代碼轉為一行x.cos().cos(),效率能夠提升兩倍。

不過這種優化措施并不是在所有場景下都適用。因為GPU預先需要知道所有執行的指令,并生成CUDA代碼,所以無法在eager-mode下使用。而且并非所有的運算符融合都像pointwise操作符這么簡單。

如果你曾經寫過CUDA內核代碼的話,就可以知道任何兩個PyTorch都有機會進行融合來節省全局內存的讀寫成本。現有的編譯器如NVFuser和XLA通常只能進行一些簡單的融合,肯定比不上AI工程師的設計。如果你想嘗試自己編寫一些定制的CUDA內核,Triton就比較適合新手入門。

運算符融合的效果就是更多的操作,時間成本相同,這也是為什么激活函數的計算成本幾乎都是一樣的,盡管gelu顯然比relu多了很多操作。

當需要推理你的操作是否有內存帶寬限制時,calculator可以發揮很大的作用。

對于簡單的算子來說,可以直接推理內存帶寬。例如,A100有1.5T字節/秒的全局內存帶寬,可以進行19.5T FLOPS的計算。因此,如果你使用32位浮點(即4個字節),GPU可以執行20萬億次操作的相同時間內加載4000億個數字。此外,為了執行一個簡單的單項運算(如把一個tensor乘2),實際上需要將tensor寫回全局內存。所以將單項運算做了大約一百次以后,才能夠等到內存數據送進來。

在像NVFuser這樣的融合編譯器的幫助下,實際上可以很容易地測量成本。

以一個PyTorch函數為例,并用融合編譯器對其進行基準測試,然后就可以計算出不同的重復值所達到的FLOPS和內存帶寬。

增加重復次數是在不增加內存訪問的情況下增加計算量的一個簡單方法,這也被稱為增加計算強度。

因為tensor的大小為N,需要將執行2*N次內存訪問,以及N*repeat FLOP。因此,實現的內存帶寬將是byte_per_elem * 2 * N / itrs_per_second,而實現的FLOPS將是N * repeat / itrs_per_second。

把運行時間、flops和實現的內存帶寬取對數后繪制出來的結果可以看到,執行64次乘法之前,運行時間并沒有明顯的增加。這也意味著,在這之前,內存帶寬是有限的,計算大部分是閑置的。

因此,一開始只實現了0.2 teraflops。當我們把計算強度提高一倍時,這個數字就會線性增長,直到我們接近9.75 teraflops的峰值,也就是「計算極限」。

內存帶寬開始時接近峰值,隨著計算強度的增加,開始下降。這也符合預期,因為實際上更多的時間花在了實際的計算上,而非訪問內存。

在這種情況下可以很容易看到什么時候是計算約束,什么時候是內存約束。

對于重復次數小于32次時,內存帶寬已經飽和,而計算能力卻沒有得到充分利用。相反,一旦重復大于64次,會發現計算量已經飽和(即達到接近峰值FLOPS),而內存帶寬利用率開始下降。

對于更大的系統,通常很難說是計算約束還是內存帶寬約束,因為可能同時包含了計算約束和內存約束。

衡量計算約束程度的一個常見方法是,將你實現的FLOPS作為峰值FLOPS的一個百分比作為指標。如果實現了峰值FLOPS的80%,那就說明計算資源利用的比較充分,其余的時間可能是花在內存帶寬上了。

其他開銷

代碼中沒有花在傳輸或計算tensor的時間都稱為開銷(overhead),比如花在Python解釋器上的時間,花在PyTorch框架上的時間,花在啟動CUDA內核(但不執行)的時間都是開銷。

開銷之所以成為一個問題,主要原因是現代GPU的速度非常快。一個A100可以每秒進行312萬億次的浮點運算(312 TeraFLOPS)。相比之下,Python的運行速度就相當慢了,一秒鐘內只能進行3200萬次加法運算。

這也意味著,在Python可以執行一個FLOP的時間里,A100可以運行975萬FLOPS。

像PyTorch這樣的框架在進入實際內核之前也有很多層調度。如果你用PyTorch做同樣的實驗,每秒只能得到28萬次操作。當然,執行小tensor并不是建立PyTorch的目的,但是如果確實在科學計算中使用小tensor,你就會發現PyTorch與C++相比慢得驚人。

一個更直觀的圖可以看到,PyTorch執行一個加法時產生的配置文件,除了一個小方塊外,其余所有的都是純開銷。

現代深度學習模型通常都在進行大規模的計算操作,并且像PyTorch這樣的框架是異步執行的。也就是說,當PyTorch正在運行一個CUDA內核時,它可以繼續運行并在后面排起更多的CUDA內核。因此,只要PyTorch能夠「提前」運行CUDA內核,大部分的框架開銷就會被完全隱藏起來

由于開銷通常不隨問題的大小而變化(計算和內存則成比例增加),一個簡單的判斷方法是你的batch size規模增加一倍,但運行時間只增加了10%(預期是增加一倍的運行時間),那么就很可能是開銷過大了。

另一種方法是使用PyTorch profiler。粉色線條顯示了CPU內核與GPU內核的匹配情況。當GPU在等待CPU的開銷時,就有很多空隙。

CPU比GPU運行得更快時空隙就少很多。

nvidia-smi中的GPU-Util就是在測量實際運行GPU內核的百分比,這也是一種衡量開銷的好方法。

開銷大部分都來自PyTorch等框架的靈活性,需要花費大量時間來「弄清該做什么」

比如當執行a+b時,需要三個步驟:

1. Python 需要查找 __add__ 在 a 上派發的內容

2. PyTorch需要確定張量的許多屬性(如dtype、device以及是否需要Augrad)以確定調用哪個內核

3. PyTorch需要實際啟動內核

每步都需要靈活性來支持不同操作,解決靈活性的一個方法是追蹤,比如用jit.tract, FX或jax.jit,或者用CUDA Graphs在更低的層次實現。

提升模型效率,最重要的就是了解模型的性能瓶頸。

當然了,編寫一個神經網絡模型還需要考慮這么多開銷問題,也可以說是這些系統、框架設計上的失敗,因為這些本來應該是對用戶透明的。

但懂得這些基本原理肯定是有意義的,可以幫助你從「根」上解決性能瓶頸。

責任編輯:張燕妮 來源: 新智元
相關推薦

2010-06-10 15:30:54

路由協議

2011-04-28 16:36:17

投影機

2024-10-05 15:00:00

模型訓練

2025-09-10 09:12:00

2024-04-12 14:04:17

機器學習DNN

2021-05-06 09:05:11

深度學習

2025-07-15 09:27:29

2021-07-20 10:26:53

源碼底層ArrayList

2017-07-11 10:19:24

淺層模型機器學習優化算法

2020-07-29 10:10:37

HTTP緩存前端

2020-04-10 15:05:09

深度學習人工智能蒸餾

2022-05-04 10:38:58

React閉包組件

2022-05-05 08:31:48

useRefuseEffecthook

2013-11-04 14:02:24

AMD

2021-04-15 09:07:52

hotspotJavaC++

2017-06-06 10:14:55

KerasTensorFlow深度學習

2017-09-25 11:59:47

Azure知識產權物聯網

2023-10-11 13:09:09

OpenAI模型GPT-4

2017-04-14 08:58:55

深度學習感知機深度網絡

2009-06-30 09:56:00

ADSL設備撥號故障
點贊
收藏

51CTO技術棧公眾號

欧美高清中文字幕| 国产在线不卡精品| 懂色av粉嫩av蜜乳av| 欧美电影免费观看网站| 中文乱码免费一区二区| av成人免费观看| 久久精品视频1| 999国产精品999久久久久久| 日韩精品中文字幕在线一区| 漂亮人妻被中出中文字幕| 免费黄网站在线播放| 成人性生交大片免费看中文 | 日韩三区在线| 亚洲人成亚洲人成在线观看图片| 精品国产乱码一区二区三区四区 | 亚洲精品大尺度| 性猛交ⅹ×××乱大交| av成人影院在线| 国产精品白丝在线| 久久精品日产第一区二区三区乱码| 中文字字幕在线中文乱码| 雨宫琴音一区二区在线| 中文字幕久精品免费视频| 久久久久亚洲无码| 色综合视频一区二区三区日韩 | 久久久久久免费看| 97电影在线观看| 91欧美一区二区| 电影午夜精品一区二区三区| 中文字幕永久在线观看| 999亚洲国产精| 色与欲影视天天看综合网| 微拍福利一区二区| 欧美日韩一区二区三区不卡视频| 日韩欧美高清一区| 亚洲一区二区在线视频观看| 欧美色999| 狠狠躁夜夜躁久久躁别揉| 日韩视频在线观看视频| a√在线中文网新版址在线| 99re热视频精品| 国产精品一区二| 午夜精品久久久久久久91蜜桃| 奇米精品一区二区三区在线观看| 欧美与黑人午夜性猛交久久久| 麻豆一区产品精品蜜桃的特点| 欧美成人精品一区二区三区在线看| 国产视频精品xxxx| 久久久老熟女一区二区三区91| 精品一区二区三区视频在线播放| 欧美人体做爰大胆视频| 国产视频手机在线播放| 希岛爱理一区二区三区av高清| 欧美视频不卡中文| 成年人午夜免费视频| 国内在线免费视频| 一级精品视频在线观看宜春院 | 亚洲一二三精品| 免费精品国产的网站免费观看| 日韩高清av在线| 一区二区视频观看| 性欧美lx╳lx╳| 亚洲美女在线看| 一区二区三区伦理片| 国内精品久久久久久久久电影网| 亚洲日本成人网| 国产中年熟女高潮大集合| 九九视频精品全部免费播放| 亚洲精品天天看| 微拍福利一区二区| 99精品在线观看| 久久成人人人人精品欧| 久久久久久久久久久久久久久久久| 91精品国产乱码久久久久久 | 亚洲免费久久| 成年人在线观看网站| 国产精品美女久久久久久久网站| 天天综合中文字幕| 羞羞的网站在线观看| 亚洲成av人片一区二区三区| 自慰无码一区二区三区| 欧美精品日日操| 欧美日韩五月天| 国产亚洲色婷婷久久| 国产精品色呦| 亚洲午夜av电影| 性生交大片免费全黄| 国模 一区 二区 三区| 2019日本中文字幕| 中文字幕在线日亚洲9| 国产suv精品一区二区883| 久久久神马电影| 麻豆电影在线播放| 亚洲福利一二三区| 午夜肉伦伦影院| 老司机精品视频网| 亚洲国产精品热久久| 阿v天堂2014| 狠狠综合久久av一区二区老牛| 欧美一区二粉嫩精品国产一线天| 中文字幕在线观看欧美| 成人深夜在线观看| 日韩在线观看电影完整版高清免费| 国产原创在线观看| 日韩欧美中文字幕在线观看| 国产又粗又长又爽又黄的视频| 精品亚洲自拍| 久久精品成人一区二区三区| 中文字幕视频网| 国产乱码字幕精品高清av| 精品中文字幕人| 二区在线播放| 日本韩国一区二区| 97人妻精品一区二区三区免费| 欧美残忍xxxx极端| 91成人精品网站| 精品国产亚洲av麻豆| 国产欧美精品一区| 成人av一级片| japanese色系久久精品| 日韩网站在线观看| 日本免费在线观看视频| 福利一区二区在线| 中文字幕日韩一区二区三区不卡| 亚洲一区资源| 亚洲第一天堂av| 欧产日产国产v| 美女视频免费一区| 欧美日本韩国在线| 国产ktv在线视频| 欧美一二三四区在线| 国产极品视频在线观看| 欧美亚洲免费| 精品在线一区| 新版的欧美在线视频| 精品成a人在线观看| 青娱乐国产在线视频| 久久99久久久久久久久久久| 日本在线成人一区二区| 黄色成人免费网| 日韩精品一区二区三区第95| 日韩精品成人一区| 成人妖精视频yjsp地址| 屁屁影院ccyy国产第一页| 国产一区二区三区视频在线| 日韩在线观看免费av| 亚洲视频在线观看一区二区| 中文字幕av一区二区三区免费看| 日本黄网站免费| 国产成人精品一区二区免费看京| 91综合网人人| av中文字幕在线观看| 中文字幕视频免费观看| 少妇视频在线播放| 很黄的网站在线观看| 欧美私人免费视频| 一区二区伦理片| 久色成人在线| 日韩av高清| 国产福利一区二区三区在线播放| 亚洲最新中文字幕| 中文字幕激情视频| 国产精品美女久久久久av爽李琼| 日韩精品视频一二三| 99精品美女| 91视频网页| 2001个疯子在线观看| 日韩激情视频在线播放| 天堂网视频在线| 国产精品欧美精品| 天天操精品视频| 极品av少妇一区二区| 免费在线一区二区| xxxxx.日韩| 欧美成人亚洲成人日韩成人| 天堂成人在线视频| 欧洲一区二区三区在线| 国产视频精品免费| 成人免费va视频| 欧美日韩在线中文| 久久福利影院| 国产成人女人毛片视频在线| 超级碰碰久久| 久久韩国免费视频| 色婷婷av一区二区三| 欧美在线不卡一区| 免费在线观看一级片| 91美女蜜桃在线| 中文字幕第38页| 亚洲人妖在线| 亚洲欧美日韩国产成人综合一二三区| 国产精品一站二站| 国产91精品久久久久久久| 国产精品秘入口| 欧美www视频| 国产99免费视频| 亚洲主播在线播放| 成人免费毛片糖心| 国产精品911| 国产性生交xxxxx免费| 欧美有码视频| 四虎永久在线精品免费一区二区| 免费精品一区| 国产精品成人一区| 国产理论电影在线| 日韩在线视频网| 四虎成人免费在线| 日韩一级视频免费观看在线| 波多野结衣av无码| 亚洲国产cao| 91制片厂在线| 久久久av毛片精品| 亚洲精品乱码久久久久久蜜桃图片| 日本伊人午夜精品| 六月婷婷在线视频| 综合色一区二区| 午夜久久资源| 图片婷婷一区| 国产精品日韩二区| 亚洲日日夜夜| 国产精品美女网站| 久草在线资源站手机版| 欧美成aaa人片免费看| eeuss影院在线观看| 精品视频偷偷看在线观看| 亚洲成人第一区| 91精品国产黑色紧身裤美女| 中文字幕精品一区二| 欧美视频在线观看免费网址| 国产无码精品视频| 亚洲欧美视频一区| 99热6这里只有精品| 国产丝袜在线精品| 国产在线观看无码免费视频| 成人禁用看黄a在线| www日本在线观看| 国产美女视频91| 亚洲 国产 图片| 久草热8精品视频在线观看| 国产三级日本三级在线播放| 亚洲综合精品| 日本wwww视频| 久久国产日本精品| 黄色动漫网站入口| 国产日韩欧美在线播放不卡| 免费看日本毛片| 国产亚洲激情| 国产精品免费观看久久| 亚洲中午字幕| aⅴ在线免费观看| 久久亚洲视频| 99热手机在线| 青青草成人在线观看| 好男人www社区| 麻豆国产91在线播放| 粉色视频免费看| 国产乱码一区二区三区| 亚洲精品鲁一鲁一区二区三区| 国产69精品久久777的优势| 国产精品一区二区在线免费观看| 成人妖精视频yjsp地址| av网站免费在线播放| 久久久亚洲精品一区二区三区| 色婷婷av777| 国产精品欧美综合在线| 亚洲一二三四五六区| 一区二区三区在线视频观看58 | 伊人成综合网伊人222| 欧美一进一出视频| 日韩在线看片| 免费网站永久免费观看| 国产亚洲在线| 亚洲天堂2018av| 国产不卡在线播放| 国产三级国产精品| 国产精品久久久久一区二区三区共| 国产尤物在线播放| 亚洲成a人v欧美综合天堂| 神马久久久久久久| 欧美精品久久久久久久多人混战| 国产丰满美女做爰| 精品夜色国产国偷在线| 男人和女人做事情在线视频网站免费观看| 欧美超级免费视 在线| 女人让男人操自己视频在线观看| 国产经典一区二区| 奇米一区二区| 欧美日韩一区二区视频在线观看| 成人羞羞网站入口免费| av在线com| 蜜乳av一区二区| 妖精视频一区二区| 国产精品美女久久久久高潮| 九九九国产视频| 欧美午夜不卡在线观看免费| 亚洲精品第五页| 国产亚洲精品久久久久动| 蜜桃成人365av| 国产精品久久久久久久久久久不卡 | 日韩久久精品| 人妻av中文系列| 国模无码大尺度一区二区三区| 无码人妻精品一区二区三区温州| 亚洲色图在线播放| 一级片在线观看免费| 日韩女优制服丝袜电影| 国产资源在线播放| 国语自产在线不卡| 日日狠狠久久| 五月天亚洲综合小说网| 亚洲激情另类| 欧美一级片在线免费观看| 一区在线播放视频| 欧美成人一区二区视频| 亚洲国产成人精品女人久久久 | 久久久久亚洲av无码专区桃色| 亚洲欧美日韩电影| 91porny九色| 日韩精品免费在线播放| 色婷婷av在线| 国产在线观看精品一区二区三区| 神马电影久久| 国产成人无码a区在线观看视频| 国产成人在线视频播放| 熟女av一区二区| 欧美日韩中文字幕一区二区| 日韩黄色影片| 国产91精品不卡视频| 红杏视频成人| 97超碰在线人人| 国产成人自拍在线| 欧产日产国产v| 欧美大胆人体bbbb| www在线免费观看视频| 91网站在线看| 91精品一区国产高清在线gif| 伊人国产在线视频| 欧美经典一区二区| 姑娘第5集在线观看免费好剧| 亚洲欧美成人网| 一区一区三区| 欧美一二三四五区| 久久精品女人天堂| 天天躁日日躁aaaxxⅹ| 色网站国产精品| 加勒比一区二区三区在线| 日韩av日韩在线观看| 国产欧美日韩免费观看| 黄色片在线免费| 国产精品网站在线播放| 91成品人影院| 另类专区欧美制服同性| 日韩一区二区三区精品| 妞干网在线播放| 99这里都是精品| 男人天堂av在线播放| 在线播放日韩av| 伊人久久大香线蕉综合影院首页| 丰满女人性猛交| 国产成+人+日韩+欧美+亚洲| 自拍偷拍欧美亚洲| 亚洲欧美www| 国产福利亚洲| 中国一级大黄大黄大色毛片| 国产精品资源在线观看| www.天天色| 亚洲午夜未满十八勿入免费观看全集| 成人av集中营| 日韩精品一区二区免费| 92精品国产成人观看免费| 亚洲av无码不卡| 日韩性xxxx爱| 国产精品丝袜在线播放| 99蜜桃臀久久久欧美精品网站| 国产农村妇女毛片精品久久麻豆| 97人妻精品一区二区三区软件| 欧美日韩成人在线播放| 午夜欧洲一区| 成人av毛片在线观看| 亚洲国产成人高清精品| 黄色小视频在线观看| 国产欧美一区二区三区久久| 国精品一区二区| 一级特黄曰皮片视频| 日韩欧美成人一区二区| gay欧美网站| 亚洲高潮无码久久| 26uuu亚洲婷婷狠狠天堂| 一女二男一黄一片| 97人人做人人爱| 99久久激情| 亚洲精品乱码久久久久久不卡| 欧美性大战久久久久久久蜜臀 | 国产精品久久久一区| 欧美人成网站| 色噜噜噜噜噜噜| 亚洲国产日韩精品在线| 玖玖精品在线| 午夜精品久久久内射近拍高清| 亚洲欧美一区二区不卡|