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

歡迎訪問 生活随笔!

生活随笔

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

python

just函数python_提升 Python 性能 Numba 与 Cython

發布時間:2024/9/19 python 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 just函数python_提升 Python 性能 Numba 与 Cython 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
??“Python貓” ,一個值得加星標的公眾號花下貓語:最近,讀者微信群里又頻繁聊到了 Python 的性能問題,這真是老生常談了。我想起自己曾收藏過幾篇關于如何提升性能的文章,似乎挺有幫助的,便去聯系了下作者,現在已經取得轉載授權啦。今天分享其中一篇,后續還會有其它相關分享,希望對讀者們也有所幫助。作者:CeruleanW

原文:https://zhuanlan.zhihu.com/p/60992622

圖 | 《側耳傾聽》劇照

背景

這篇文章的背景是在最近的工作中涉及到了一些計算密集型任務,這些計算密集型任務或多或少觸發了一些之前幾乎沒有關心過的Python性能問題,所以寫下這篇文章分析Python的性能問題,并調研了一些對應的改善方案(Numba、Cython)。

坦白地說,在過往用Objective-C寫iOS應用的經歷中,除了一些面試和工作中常見的關于一些UI組件渲染的性能問題外,幾乎沒有關心過代碼執行的效率(性能)問題。這次也正好是一個契機使我有機會復習一些本科學過的知識。

二維數組求和

首先讓我們看一段簡單的Python代碼,這段代碼定義了一個函數,其功能是對一個np.ndarray類型的二維數組求和,并返回結果:

def?arr_sum(src_arr):
????res?=?0
????shape?=?src_arr.shape
????for?r?in?range(0,?shape[0]):
????????for?c?in?range(0,?shape[1]):
????????????res?+=?src_arr[r][c]
????return?res

這段代碼沒什么特別的,如果我們的src_arr.shape是128x128,上面這個代碼片段執行1000次,在我的機器上(i7 6700K、32G),大概需要3.7857s,同樣的,沒有對比就沒有傷害,同樣的代碼,如果我們用C++重寫一下,大概會是這個樣子:

double?sum(double?arr[][128],?int?row)?{
????double?res?=?0;
????for?(int?i?=?0;?i?????????for?(int?j?=?0;?j?128;?++j)?{
????????????res?+=?arr[i][j];
????????}
????}
????return?res;
}

這段代碼的執行時間將會是0.035s,即大約35ms,可以看出,在這個場景下(當然,在實際的項目或者研究中,根據問題規模的不同,某個代碼片段的實現也會不盡相同),還是可以有一個粗糙的結論:大概Python比C++慢了100倍。

雖然這個結論不是非常嚴謹,例如,我們出于某種面向對象的考慮,希望這段代碼不是非常的膠水,可能會用std::vector或者某些容器替換一個C風格的二維數組:

template<typename?T>
T?sum(vector<vector>&?arr,?int?row,?int?col)?{
????T?res?=?0;
????for?(int?i?=?0;?i?????????for?(int?j?=?0;?j?????????????res?+=?arr[row][col];
????????}
????}
????return?res;
}

而上面這段粗糙的實現對應的執行時間將會是0.060s,即60ms,但是仍然要比Python快出兩個數量級,依然沒有問題。

甚至如果你不幸將:

T?sum(vector<vector>&?arr,?int?row,?int?col)

寫成了:

T?sum(vector<vector>?arr,?int?row,?int?col)

而導致函數調用時復制整個二維數組,也只需要4.3s,而對比Python的3.75s,反而會感覺還沒慢多少。

為什么Python慢?

那么為什么Python會顯得慢呢?首先,Python通常被稱作解釋型語言,是相對于像C++這樣的編譯型語言來說的。

事實上py文件也會被編譯,但是并不像C++,或者是其他靜態強類型編譯型語言那樣,通過預處理、編譯、匯編、鏈接這樣的過程最終得到機器碼。py文件,即Python的源代碼通常會在運行時被解釋器先解釋為字節碼,然后交由虛擬機將字節碼翻譯成機器碼執行,而這一步就很尬了。

事實上,也正是因為這樣,我們往往才因此獲得Python在運行時一些非常強大的特性,例如generator,利用generator我們可以做一些非常神奇的事情,例如協程等。

但是另一方面,Python的解釋器和虛擬機翻譯并執行字節碼的過程帶來了很大的性能開銷,一個直覺的解釋是:由于沒有原生的編譯時類型檢查,所有的類型的檢查都被移交給了運行時,執行一行Python代碼很可能需要做不只一行的類型檢查、邊界檢查等等。

這里其實并不打算詳細探究Python字節碼的編譯與執行,只是簡單的通過一個例子大致說明一行Python代碼是如何被解釋和執行的,

考慮源文件test.py,他們的實現很簡單,其中test.py的實現大概是這樣的:

def?add(x,?y):
????res?=?x?+?y
????print('Res:?'?+?res)

如你所見的,計算兩個值的和,然后將結果打印到標準輸出。

我們通過dis模塊將test.py翻譯成可讀的字節碼指令,將會是這樣:

Disassembly?of?add:
??2???????????0?LOAD_FAST????????????????0?(x)
??????????????3?LOAD_FAST????????????????1?(y)
??????????????6?BINARY_ADD
??????????????7?STORE_FAST???????????????2?(res)
??3??????????10?LOAD_GLOBAL??????????????0?(print)
?????????????13?LOAD_CONST???????????????1?('Res:?')
?????????????16?LOAD_FAST????????????????2?(res)
?????????????19?BINARY_ADD
?????????????20?CALL_FUNCTION????????????1?(1?positional,?0?keyword?pair)
?????????????23?POP_TOP
?????????????24?LOAD_CONST???????????????0?(None)
?????????????27?RETURN_VALUE

即,首先Python的源代碼py文件將會被解釋器翻譯成上類似上面的東西,但是具體可能會更加復雜一點,但是我想到這一步應該已經能說明一些問題了,然后這個字節碼會被Python虛擬機嘗試執行,而在執行時則會有很多運行時的檢查,然后才是轉化為真正的機器碼交由CPU執行。

而C++就不同了,因為他沒有這一步。

其實,字節碼也不是每次都是從磁盤讀py文件在運行時編譯的,事實上,每個在運行時被編譯的py文件將會產生PyCodeObject對象,這一步操作是在解釋import語句時執行的,PyCodeObject對象創建后,一方面將會根據需要被虛擬機繼續轉化為PyFrameObject對象進行后續的機器碼翻譯和執行工作,另一方面會帶著一個“最后修改日期”的字段被緩存在磁盤上,通常,這個位置是在源代碼同級目錄下__pycache__文件夾中,這些被緩存的PyCodeObject對象將與源文件同名,只是擴展名為pyc,以便下次運行時直接讀取緩存,從而節約編譯字節碼的時間。

所以,一個粗糙的結論可能是這樣的,Python由于要在運行時編譯和解釋執行字節碼,而且這個過程中參與了很多類似運行時類型檢查的操作等一系列其他操作,從而產生了很多額外開銷,降低了性能。

如何提速?

那么如何提速?在本文我們調研了兩種方案,分別是Numba和Cython,接下來我們將分別簡述它們的加速原理,并給出一些示例代碼,并做一些簡單的性能對比實驗。

Numba

首先我們介紹Numba,先引一段官網文檔的介紹:

Numba is a just-in-time compiler for Python that works best on code that uses NumPy arrays and functions, and loops. The most common way to use Numba is through its collection of decorators that can be applied to your functions to instruct Numba to compile them. When a call is made to a Numba decorated function it is compiled to machine code “just-in-time” for execution and all or part of your code can subsequently run at native machine code speed!

其中有兩句話比較重要:

Numba is a just-in-time compiler for Python that works best on code that uses NumPy arrays and functions, and loops.

Numba是一個JIT編譯器,它和Numpy的數組和函數以及循環一起用時,效果最佳。

另一句是:

When a call is made to a Numba decorated function it is compiled to machine code “just-in-time” for execution and all or part of your code can subsequently run at native machine code speed!

如果一個調用被Numba裝飾器修飾,那么它將被JIT機制編譯成機器碼執行,性能堪比本地機器碼的速度。

同樣,它的原理簡介也能在官網文檔中找到:

Numba reads the Python bytecode for a decorated function and combines this with information about the types of the input arguments to the function. It analyzes and optimizes your code, and finally uses the LLVM compiler library to generate a machine code version of your function, tailored to your CPU capabilities. This compiled version is then used every time your function is called.

簡要的概括即是,Numba通過一個裝飾器讀某些調用的字節碼,并為它們的參數等添加類型信息,嘗試優化代碼后,通過LLVM編譯器直接生成對應的機器碼。

思想其實很明確,一方面是在字節碼被執行前添加類型信息,然后省去原始調用的字節碼被執行的過程,通過LLVM直接編譯機器碼,從而節省了性能開銷,事實也確實如此。

通過引入numba模塊,原始的Python代碼將會被改寫成這樣:

import?numba?as?nb

@nb.njit()
def?arr_sum(src_arr):
????res?=?0
????shape?=?src_arr.shape
????for?r?in?range(0,?shape[0]):
????????for?c?in?range(0,?shape[1]):
????????????res?+=?src_arr[r][c]
????return?res

可以發現其實沒什么變化,除了加了一個@nb.njit()的裝飾器外,沒有對原函數做任何改動,這其實也是numba的方便之處(與后續的Cython方案對比),事實上@nb.njit()會盡其所能去尋找能被numba的JIT機制添加類型信息并翻譯成機器碼的對象,如果失敗了,運行起來的效果甚至會比原始的Python代碼還慢。

在它的文檔的開頭也就提到,它和Numpy的數組和函數以及循環一起用時,效果最佳,同時文檔也給出了一個暫時不支持pandas類型的例子。

詳細的numba實現原理已經超出了本文做簡單調研的范圍,可能我們會有后續幾篇文章討論這個問題。

一個快速的入門文檔可以參見:

https://numba.pydata.org/numba-doc/latest/user/5minguide.html

最后,添加numba裝飾器后,代碼片段對大小為128x128的二維數組求和,運行1000次時間為0.017122s,即17ms,比CXX還要快。

而JIT首次嘗試編譯求和函數代碼的約為0.151606s,即150ms,所以,一個粗糙的結論是,如果這段代碼確實性能開銷較大,且被調用頻率相對較高,那么一個短暫的編譯時間還是可以被接受的。

Cython

接下來我們介紹Cython,

Cython是在Python中實現C-Extensions的一種方案,簡單的理解是,Python提供了一些與CXX的Lib相互調用的機制,而能通過import作為模塊來進行調用的C或者C++的Lib,就是C-Extensions,有很多方案可以用來實現C-Extensions,例如Swig等,而Cython就是其中一種。

同樣引一段官方文檔中關于Cython的介紹:

Cython is an optimising static compiler for both the Python programming language and the extended Cython programming language (based on Pyrex). It makes writing C extensions for Python as easy as Python itself.

它的核心精神是,Cython將Cython語言(一種基于Python的擴展語言)寫的pyx文件直接編譯成C extensions,從而獲得近乎于寫CXX語言的性能。

我們直接看一個Cython改寫的二維數組求和代碼片段,這個代碼片段的文件名將會是func.pyx,可以注意到到與*.py結尾的文件不同,Cython的代碼將是以pyx結尾。

cimport?cython
@cython.boundscheck(False)
@cython.wraparound(False)

def?arr_sum(double[:,?:]?src_arr):

????cdef?double?res?=?0
????cdef?Py_ssize_t[:]?shape?=?src_arr.shape

????cdef?Py_ssize_t?r?=?0
????cdef?Py_ssize_t?c?=?0

????for?r?in?range(0,?shape[0]):
????????for?c?in?range(0,?shape[1]):
????????????res?+=?src_arr[r][c]
????return?res

我們用了一些cdef關鍵字,來在定義變量時指明它們的類型,同時,我們使用了形如double[:, :]這樣的關鍵字,它代表了Python中的MemoryView,即內存視圖。簡而言之,內存視圖可以快速索引值,通過內存視圖,我們可以避開繁瑣的Python對象引用流程,直接訪問一個二維數組某個下標值,如果不經轉置,它在內存上應該是連續的,永遠是通過一個基地址加上一個偏移量。

Cython文檔在Typed Memory Views一節詳細的介紹了這個機制,這里就不在贅述了。

https://cython.readthedocs.io/en/latest/src/userguide/memoryviews.html

看上去我們在寫帶類型標識符的Python,實際上這些代碼都會被Cython先解釋稱CXX,然后編譯成.so(Linux),通過編寫對應的setup.py:

from?distutils.core?import?setup
from?Cython.Build?import?cythonize

setup(
????ext_modules=cythonize(["playground/cyfunc/func.pyx"],?annotate=True)
)

打開annotate=True,Cython會替我們生成一份源碼分析,如下圖,詳細的展示了pyx文件是如何生成CXX代碼的,同時,黃色對應的行說明這行有Python調用,可能會影響能:

img

通過這種方式,代碼片段對大小為128x128的二維數組求和,運行1000次時間為0.0181s,約18ms。

性能對比

最后我們給出了四組實驗的結果,代碼片段對大小為128x128的二維數組求和,運行1000次時間如下:

Total?cost?time?for?func:?py_func,?call?1000?times:?3.803216s.
Total?cost?time?for?func:?np_func,?call?1000?times:?0.343562s.
Total?cost?time?for?func:?nb_func,?call?1000?times:?0.017122s.
Total?cost?time?for?func:?cy_func,?call?1000?times:?0.018159s.

它們分別代表了原始Python、Numpy、Numba、Cython對應的性能。

需要注意的是,numba的編譯時間約為150ms:

Time?cost?for?numba?first?call:?0.151606s.

希望在之后的幾篇文章中,討論Numba與Cython的實現細節。

Python提升之路,推薦閱讀

1

深度辨析 Python 的 eval() 與 exec()

2

Python進階:設計模式之迭代器模式

3

Python進階:全面解讀高級特性之切片!

4

Python 工匠:讓函數返回結果的技巧


文章分享完了,最后是隨機薦書環節。我會根據文章內容,提出一個關鍵詞(這篇是“高性能”)來搜索,隨機選擇一兩本技術書推薦給大家,如果你感興趣的話,可以點擊鏈接進行了解。希望能給大家帶來不經意的收獲~~

告訴朋友們,我在看

總結

以上是生活随笔為你收集整理的just函数python_提升 Python 性能 Numba 与 Cython的全部內容,希望文章能夠幫你解決所遇到的問題。

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

久久av影视 | 999久久a精品合区久久久 | 日韩欧美国产视频 | 亚洲欧美日韩中文在线 | 在线视频欧美日韩 | 99精品国产亚洲 | 最新国产在线视频 | 在线日韩中文字幕 | 国产精品成人a免费观看 | 国产一区二区精品在线 | 天天做天天射 | 中文字幕av最新更新 | 国产91在线免费视频 | 久久久久久久久免费视频 | 日韩免费网站 | 人人爽网站| 麻豆成人精品 | 国产精品v欧美精品v日韩 | 久久色在线观看 | 亚洲黄色免费网站 | 日韩精品一区在线播放 | 久久九九久久九九 | 四虎影院在线观看av | 国产成人av免费在线观看 | 久久久久久99精品 | 日韩一级片大全 | 免费又黄又爽的视频 | www毛片com| 国产精品99精品久久免费 | 一区二区三区在线免费观看 | 日p视频在线观看 | 国产一区二区精品久久91 | 久久久福利 | 亚洲午夜久久久久久久久 | 亚洲五月激情 | 成人黄色中文字幕 | 国产香蕉97碰碰久久人人 | 久久久九九 | 免费福利在线观看 | 麻豆精品视频在线观看免费 | 久久神马影院 | 婷婷国产v亚洲v欧美久久 | 亚洲天堂网站 | 国产 字幕 制服 中文 在线 | 国产一区二区三区免费在线观看 | 伊人狠狠色丁香婷婷综合 | 亚洲精品国产高清 | 日韩免费播放 | 国产午夜在线 | 涩涩资源网| 国产精品在线看 | 国产精品一级视频 | 欧美综合久久 | 日韩在线视频不卡 | 女女av在线| 国产综合在线观看视频 | 色综合久久久久久久久五月 | 中文国产成人精品久久一 | 国产99久久久国产精品成人免费 | 亚洲高清国产视频 | 日躁夜躁狠狠躁2001 | 在线国产一区二区 | 国产精品国产三级国产不产一地 | 日韩视频免费看 | 人人操日日干 | 伊人狠狠色丁香婷婷综合 | 国产精品久久久久久高潮 | 在线观看亚洲成人 | 国产一区二区三区高清播放 | 天天鲁天天干天天射 | 天天色影院 | 麻花传媒mv免费观看 | 一区二区电影在线观看 | 狠狠操狠狠操 | 亚洲有 在线 | a天堂最新版中文在线地址 久久99久久精品国产 | 四虎在线免费视频 | 99久久夜色精品国产亚洲 | 亚洲天天 | 日日夜夜人人精品 | 97人人模人人爽人人喊中文字 | 国产视频2区| av观看网站 | 欧美日韩国产一区二区在线观看 | 色噜噜噜噜 | 日韩mv欧美mv国产精品 | 超碰97在线资源站 | 久久久精品免费看 | 三上悠亚一区二区在线观看 | 天天综合天天做天天综合 | 国产精品色| 国产精品久久久久久久久久免费 | 精品国产一区二区三区男人吃奶 | 99爱视频在线观看 | 精品久久美女 | 国产剧情av在线播放 | 亚洲精品xxxx| 天天插天天狠 | 最近在线中文字幕 | 人人爽人人澡 | 天天射综合网视频 | 国产中文字幕久久 | 国精产品999国精产品岳 | 视频一区二区视频 | 天天操天天能 | 天天曰天天曰 | 久久久久久久久久久久久久av | 中文字幕免费 | 中文字幕av免费在线观看 | 久久国产精品99久久久久久老狼 | 狠狠色综合网站久久久久久久 | 处女av在线| 中国一级片在线观看 | 中文字幕永久免费 | 国产一区二区免费看 | 国产 亚洲 欧美 在线 | 久久五月激情 | 99情趣网视频 | 国产精品免费视频一区二区 | 免费福利片2019潦草影视午夜 | 美女视频国产 | 国产午夜激情视频 | 日韩专区在线 | 成人在线观看你懂的 | 午夜精品福利影院 | 亚洲女人天堂成人av在线 | 2021久久 | 久久女同性恋中文字幕 | 日韩区在线观看 | 99久久电影| av成年人电影 | 丁香婷婷电影 | 午夜精品福利一区二区 | 亚洲黄色一级电影 | 欧美男男激情videos | 国产黄影院色大全免费 | 成人免费视频播放 | 久草青青在线观看 | 日韩精品一区二区不卡 | 99精品国产高清在线观看 | 中文字幕精品一区二区三区电影 | 四虎影视精品 | 欧美亚洲国产一卡 | 97色婷婷人人爽人人 | 欧洲精品亚洲精品 | 91av中文 | 国产成人a亚洲精品v | 91精品国产欧美一区二区 | 美女激情影院 | 中文字幕免费成人 | 97人人模人人爽人人喊网 | 手机成人免费视频 | 91福利视频免费观看 | 最近中文字幕完整高清 | 国产又粗又猛又爽又黄的视频先 | 夜夜干夜夜 | 久保带人| 久久精品成人欧美大片古装 | 久久精品亚洲国产 | 久久九九国产视频 | 国产国语在线 | 午夜精品福利一区二区三区蜜桃 | 成人av日韩 | 天天透天天插 | 天天躁日日躁狠狠躁av中文 | 精品久久久久久亚洲综合网 | 最新日韩中文字幕 | 97网在线观看 | 激情婷婷 | 91人人爽人人爽人人精88v | 国产福利精品一区二区 | 蜜臀久久99精品久久久久久网站 | 在线视频第一页 | 亚洲在线精品 | 亚洲一区不卡视频 | 亚洲人成人在线 | 国产福利在线免费观看 | 久久理论电影网 | 最新国产中文字幕 | 在线韩国电影免费观影完整版 | 少妇性aaaaaaaaa视频 | 国产一性一爱一乱一交 | 国产一级免费片 | 久草视频在线新免费 | 92精品国产成人观看免费 | 天天操天天摸天天射 | 国产一区二区精品久久 | 99视频在线精品国自产拍免费观看 | 欧美成人一二区 | 国产日本在线 | 91喷水| 国产激情久久久 | 欧美日韩国产高清视频 | 久久精品人人做人人综合老师 | 九热精品 | 国产三级在线播放 | 久久久久久久久国产 | www.狠狠 | 丁香花在线视频观看免费 | 久久麻豆视频 | 国产第一页在线观看 | 亚洲日日射 | 国产一二区免费视频 | 国产视频欧美视频 | 久久a久久 | 精品国产色 | 91综合在线| 国产精品黄色在线观看 | 久久精品这里都是精品 | 天天操狠狠操夜夜操 | 欧美精品久久久久a | 日本公妇在线观看高清 | 欧美网址在线观看 | 最新中文字幕在线观看视频 | 99国产在线 | 国产资源免费在线观看 | 亚洲资源在线 | www·22com天天操| 亚洲精品1区2区3区 超碰成人网 | 中文字幕在线影院 | 久久er99热精品一区二区 | 在线电影日韩 | 视频一区久久 | 在线v片免费观看视频 | 亚洲精品久久视频 | 国产69精品久久久久99 | 在线观看蜜桃视频 | 免费在线观看av不卡 | 成人午夜剧场在线观看 | 国产成人一区二区精品非洲 | 在线亚洲成人 | 亚洲精品乱码久久久久久久久久 | 亚洲激情 | 黄色软件视频网站 | 精品福利在线 | www.eeuss影院av撸| 日日夜夜网| 精品国产一区二区三区久久影院 | a黄色 | 日韩欧美在线观看一区二区 | 字幕网av| 色婷婷色| 亚洲国产精品推荐 | 91丨九色丨国产女 | 欧女人精69xxxxxx | 91原创在线观看 | 五月婷婷色播 | 久久精品99国产精品酒店日本 | 国产日韩精品一区二区在线观看播放 | 97爱| 五月天综合网站 | 色播五月激情综合网 | 欧美激情奇米色 | 不卡av免费在线观看 | 99福利影院| 国产一区二区网址 | 欧美性生活免费看 | 91视频 - v11av | 国产色视频一区二区三区qq号 | 丁香婷婷久久久综合精品国产 | 人人爽人人片 | 中文av影院 | 17videosex性欧美| 麻豆高清免费国产一区 | 国产高清在线免费观看 | 亚洲 成人 一区 | 少妇性色午夜淫片aaaze | 在线观看爱爱视频 | 日韩精品中文字幕在线 | 欧美日韩破处 | 六月丁香综合 | 欧美美女激情18p | 久久怡红院 | 激情大尺度视频 | 国产永久免费观看 | 国内精品久久久久久久97牛牛 | 在线视频欧美亚洲 | 丰满少妇高潮在线观看 | 亚洲性视频 | 91中文字幕视频 | 国产中年夫妇高潮精品视频 | av高清一区二区三区 | 成人av一区二区兰花在线播放 | 欧美久久久久久久久久久 | 亚洲香蕉视频 | 黄色电影网站在线观看 | 黄在线免费观看 | 久久免费视频这里只有精品 | 国产美女被啪进深处喷白浆视频 | 国产精品18久久久久久不卡孕妇 | 亚洲一二区精品 | 最近最新最好看中文视频 | 韩国av电影在线观看 | 天天干天天弄 | 国产成人三级在线播放 | 欧美色婷婷 | 又黄又爽的免费高潮视频 | 伊人狠狠色丁香婷婷综合 | 亚洲欧美日韩精品一区二区 | 久久9精品 | 在线观看中文字幕 | 99精品热视频 | 中文字幕av全部资源www中文字幕在线观看 | 91亚色免费视频 | 国产一区精品在线观看 | 婷婷5月色 | 丁香亚洲| 亚洲电影图片小说 | 天天躁天天躁天天躁婷 | 日韩欧美视频在线播放 | 午夜免费久久看 | 99久久久久免费精品国产 | 中文av在线免费观看 | 国产精品午夜在线观看 | 成人午夜剧场在线观看 | 国产 欧美 在线 | 国产高清专区 | 丰满少妇一级片 | 一本一本久久a久久精品综合 | 九九日韩 | h视频在线看 | 亚洲国产合集 | 人人添人人澡人人澡人人人爽 | 国产精品99久久久久久久久久久久 | 久久 在线| 久久久久久高潮国产精品视 | 黄色资源网站 | 九九精品视频在线看 | 色婷婷一区 | 九九热视频在线 | 五月婷婷六月丁香在线观看 | 国产91丝袜在线播放动漫 | 天天做天天爽 | 在线观看你懂的网址 | 国产美女精品人人做人人爽 | 中文字幕xxxx | 国产日韩中文在线 | 五月天开心 | 91网站免费观看 | 99在线精品免费视频九九视 | 国产精品一区二区久久精品 | 国产99久久久国产 | 草久在线播放 | 香蕉视频18| 亚洲成人资源 | 91av在线视频免费观看 | 色av资源网 | 日日婷婷夜日日天干 | 欧美国产高清 | 69国产盗摄一区二区三区五区 | 亚洲香蕉在线观看 | 婷婷六月综合网 | www.色五月.com | 免费网站看v片在线a | 91视频 - 88av| 婷婷丁香自拍 | 中文字幕色站 | 日日干 天天干 | 国产精品一码二码三码在线 | 亚洲精品动漫成人3d无尽在线 | 久久一二三四 | 黄色av一级 | 国产一级黄色av | 久久精品视频18 | 日韩一区二区免费播放 | 中文字幕视频在线播放 | 五月婷婷丁香激情 | 精品久久久久久电影 | 免费高清国产 | 亚洲黄色精品 | 一区视频在线 | 丁香五月缴情综合网 | 久久久久久国产精品亚洲78 | 亚洲综合激情 | 成人av片在线观看 | avav99| 国产中文字幕三区 | 亚洲黄在线观看 | 国产成年人av | 99综合影院在线 | 免费看色的网站 | 国模一二三区 | 99亚洲精品视频 | 久草在线视频在线观看 | 国产你懂的在线 | 国产一级黄色免费看 | 91大神dom调教在线观看 | 久久久婷 | 中文字幕乱视频 | 黄色成年片 | 欧美日在线观看 | 最近中文字幕视频网 | 麻豆成人在线观看 | 免费观看十分钟 | 国产123区在线观看 国产精品麻豆91 | 婷婷色 亚洲 | 精品国产乱码一区二区三区在线 | 成人av影院在线观看 | av电影在线免费观看 | 九色福利视频 | 国产精品扒开做爽爽的视频 | 国产视频首页 | 亚洲婷婷综合色高清在线 | 精品国产一区在线观看 | 国产粉嫩在线观看 | 午夜 在线 | 在线小视频你懂的 | www.国产毛片| 人人澡人人爽欧一区 | 国产成人一区三区 | 国产aaa毛片 | 狠狠干狠狠久久 | 日韩a级免费视频 | 毛片视频网址 | 麻豆一精品传二传媒短视频 | 久久五月婷婷综合 | 五月婷丁香网 | 国产精品久久免费看 | 天天干,天天操 | 天天操操操操操 | 日韩中文字幕91 | 五月婷婷丁香综合 | 中文字幕亚洲欧美 | 国产在线观看 | 99久热在线精品视频观看 | 中文字幕视频网 | 男女啪啪网站 | 天天插狠狠插 | 日本三级久久久 | 日韩精品久久一区二区三区 | 国产成人资源 | 午夜精品一区二区三区在线视频 | 91九色视频国产 | 日韩免费视频 | 日韩亚洲在线观看 | 亚洲精品三级 | 97超碰人| 久久久久久国产精品久久 | 精品字幕 | 最近最新mv字幕免费观看 | 在线激情影院一区 | 国产中文字幕91 | 欧美一级电影免费观看 | 视频国产区 | 国产又粗又猛又爽又黄的视频先 | 51久久夜色精品国产麻豆 | 国内精品久久久久影院优 | 日韩夜夜爽 | 麻豆影视网 | 狠狠干电影 | 综合激情网 | 91在线小视频 | 五月色丁香 | 国产精品视频久久 | 成人在线观看资源 | 99久热在线精品视频观看 | 久久久久久久久电影 | 国产三级av在线 | 丝袜美女视频网站 | 久久久久久国产精品免费 | 久久麻豆精品 | 97超级碰碰碰碰久久久久 | 91传媒激情理伦片 | 免费av网站在线 | 久久与婷婷 | 天天操夜夜爱 | 字幕网资源站中文字幕 | 免费日韩视频 | 五月开心婷婷 | 国产96在线 | 久草精品网 | 婷婷亚洲五月色综合 | av免费电影在线观看 | 国产美女网站视频 | freejavvideo日本免费 | 亚洲精品免费在线观看 | 在线观看视频亚洲 | 在线天堂日本 | 日韩国产欧美在线视频 | av观看网站 | 国产手机在线观看视频 | 国产又黄又爽又猛视频日本 | 久99久视频| 亚洲国产网站 | 亚洲综合五月 | 中文字幕成人在线观看 | 久久艹欧美 | 色视频在线免费观看 | 正在播放 久久 | 久久99精品波多结衣一区 | 国产精品久久久久久久久大全 | 欧美亚洲免费在线一区 | 日本性生活一级片 | www黄在线 | 国产成人一区二区三区在线观看 | 激情视频久久 | 欧美日韩一区二区免费在线观看 | 最近中文字幕完整视频高清1 | 国内免费久久久久久久久久久 | 久久精品中文字幕一区二区三区 | 视频国产区 | 国产精品久久久久免费 | 一区国产精品 | 日韩视频免费 | 天天天在线综合网 | 韩国一区二区av | 激情在线网址 | 久久天天躁夜夜躁狠狠85麻豆 | 国产一区在线免费观看视频 | 草莓视频在线观看免费观看 | 在线视频免费观看 | av免费播放 | 免费在线黄色av | 久久久久久久久久久久影院 | 99精品视频在线播放观看 | 色婷婷伊人 | 91在线porny国产在线看 | 少妇自拍av | 97精品国产 | 日韩激情综合 | 在线观看av国产 | 欧美精品乱码99久久影院 | 伊人天天狠天天添日日拍 | 久草免费在线观看 | 国产在线精 | 久久99热这里只有精品国产 | 99精品在线看| 亚洲精品字幕 | 久二影院| 成人资源在线 | av成人免费在线观看 | 国产精品久久久久久久久婷婷 | 99精品成人 | 综合色久 | 国产在线不卡 | 又黄又爽的免费高潮视频 | 亚洲精品一区二区网址 | 97超碰人人澡人人 | 亚洲精品大片www | 天天干天天操 | 色噜噜噜噜 | 日日夜夜天天干 | 国产99精品 | 免费观看一级 | 欧洲在线免费视频 | 亚洲精品人人 | 成人超碰在线 | 久久激情综合 | 91亚洲精品久久久 | 九九热免费观看 | 欧美午夜性生活 | 国产理论片在线观看 | 粉嫩一区二区三区粉嫩91 | 在线 视频 亚洲 | 黄色一区二区在线观看 | av无限看 | 亚洲成av人影片在线观看 | 久久成人综合视频 | 久草在线免费播放 | 又黄又爽又无遮挡的视频 | 久久综合九色99 | 51精品国自产在线 | 在线看黄色的网站 | 2019中文字幕第一页 | 日韩欧美在线高清 | 天堂麻豆 | 久久观看最新视频 | 国产一区二区在线免费视频 | 国产黄色片一级 | 五月婷婷激情 | 中文字幕国产亚洲 | 国产三级国产精品国产专区50 | 免费在线观看一级片 | 国产精品久久久久久久久久久杏吧 | 中文字幕亚洲高清 | 日韩欧美一区二区在线 | 在线观看91精品视频 | 国产精品男女啪啪 | 日韩,精品电影 | 久久午夜免费观看 | 中国黄色一级大片 | 国产视频一区二区三区在线 | 视频 天天草 | 亚洲精品午夜一区人人爽 | 91超碰免费在线 | 久久久久97国产 | 欧美巨乳波霸 | 日韩在线精品一区 | 国产亲近乱来精品 | 丁香视频免费观看 | 免费看亚洲毛片 | 九九热在线视频免费观看 | 久久九九国产精品 | 国产理论影院 | 亚洲伦理精品 | 亚洲区另类春色综合小说 | 中文字幕日韩国产 | 久久精品99国产精品 | 欧美极品少妇xbxb性爽爽视频 | 91资源在线免费观看 | 天天操综合| 亚洲 综合 精品 | av成人在线网站 | 免费日韩电影 | 97在线视频观看 | 啪啪免费视频网站 | 亚洲国产日韩欧美在线 | 日韩69av| 久久久久久综合网天天 | 欧美成亚洲 | 国产欧美精品一区二区三区 | 欧美美女激情18p | 国产午夜三级一区二区三 | 天天曰天天干 | 一区二区三区韩国免费中文网站 | jizzjizzjizz亚洲| 日韩精品不卡在线 | 天天摸天天舔天天操 | 黄色a视频 | av福利在线 | 一区二区三区免费在线 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 17videosex性欧美| 国产淫片 | 亚洲精区二区三区四区麻豆 | 天干啦夜天干天干在线线 | 成人国产综合 | 精品国产欧美一区二区三区不卡 | 免费成人短视频 | 成人综合婷婷国产精品久久免费 | 成人久久18免费网站图片 | 国产一区自拍视频 | 99精品福利| 亚洲手机天堂 | 久久99精品久久久久久秒播蜜臀 | 最近免费中文字幕大全高清10 | 最近高清中文在线字幕在线观看 | 日韩精品2区 | 在线免费观看国产视频 | 2019精品手机国产品在线 | 久久久国产精品视频 | 网站在线观看日韩 | 综合在线观看 | 在线免费性生活片 | 国产色一区 | 黄色片软件网站 | 国产精品久久久久久久久久久久午夜 | 精品视频国产 | 久久综合久久久 | 久久久久久久久久久久久9999 | 久久只精品99品免费久23小说 | 激情五月婷婷综合 | 日日干网址 | 国偷自产中文字幕亚洲手机在线 | 日韩簧片在线观看 | 久久久www成人免费毛片 | 东方av免费在线观看 | 久久久久久高潮国产精品视 | 91桃色在线免费观看 | 国产99久久久国产精品免费看 | 99热免费在线| 97超碰人人澡 | 国产原创91 | 麻豆综合网 | 99热这里只有精品久久 | 亚洲国产三级 | www国产在线 | 国产色拍拍拍拍在线精品 | 永久免费毛片 | 日韩在线免费小视频 | 久久手机免费视频 | 国产男女无遮挡猛进猛出在线观看 | 精品一区二三区 | 色激情在线| 欧美a级成人淫片免费看 | 97超碰色偷偷| 996久久国产精品线观看 | 欧美精品中文字幕亚洲专区 | 91精品欧美一区二区三区 | 国产五月天婷婷 | 国产午夜精品一区二区三区欧美 | 久久人人爽人人 | 超碰97.com| 在线日韩一区 | 中文字幕久久亚洲 | 国产精品va在线观看入 | 成人三级av | 色欧美视频 | 91亚洲精品久久久久图片蜜桃 | 久草资源免费 | 亚洲人成网站精品片在线观看 | 色综合天天射 | 在线欧美中文字幕 | 国产精品美女久久久久久免费 | 婷婷去俺也去六月色 | 亚洲精品观看 | 又污又黄的网站 | 久久久久亚洲精品国产 | 国产在线播放一区二区 | 免费看v片网站 | 国产视频在线观看一区 | 99免费视频 | av电影在线观看完整版一区二区 | 国产视频在线免费 | 在线免费观看成人 | 国产精品久久电影网 | 国产亚洲欧美精品久久久久久 | 久久精品国产精品亚洲精品 | 欧美日韩xx | 久久伊人免费视频 | 久久久久久免费网 | 国产成人一区二 | 久久精选视频 | 欧美久久久久久久久中文字幕 | 国产精品一区二区在线免费观看 | 精品不卡视频 | 99在线精品免费视频九九视 | 国产精品久久久久久久久免费看 | 久久视频在线看 | 久草综合视频 | 天天干,夜夜爽 | 97视频在线观看播放 | 24小时日本在线www免费的 | 久久影院亚洲 | 国产综合香蕉五月婷在线 | 国产福利av在线 | 丰满少妇在线观看资源站 | 国产综合久久 | 国产成人三级三级三级97 | 俺要去色综合狠狠 | 天天摸日日操 | 91桃色视频 | 国产麻豆精品在线观看 | 成人在线一区二区三区 | 97在线观看免费观看高清 | www.黄色在线 | 日韩久久影院 | 欧美日韩中文视频 | 日韩 精品 一区 国产 麻豆 | 欧美日韩国产在线 | 久久影视一区二区 | 99人久久精品视频最新地址 | www看片网站| 国产精品久久久精品 | 一区二区三区视频 | 婷婷综合伊人 | 精品国产伦一区二区三区观看体验 | 国产成人精品久久亚洲高清不卡 | 特级免费毛片 | 国产又粗又猛又爽又黄的视频先 | 国产99一区视频免费 | 91热精品视频 | 久久久久久看片 | 九色视频网站 | a成人v在线 | 国产日韩欧美在线免费观看 | 在线免费观看国产黄色 | 国产精品一区二区久久精品爱涩 | 亚洲第一色 | 狠狠天天 | 国产96在线| 综合色中文 | 成年人免费av网站 | 91精品久久久久久久久 | 狠狠操狠狠 | 国产成人亚洲在线电影 | 色射色 | 精品久久久免费视频 | 久久美女高清视频 | 欧美巨乳波霸 | 在线婷婷| 91精品999| 999色视频| 婷婷丁香在线观看 | 亚洲精品乱码白浆高清久久久久久 | 美女精品在线 | 免费av网站在线看 | 亚洲国产视频a | 亚洲国产中文字幕在线观看 | 欧美日韩国产一区二 | 久久综合狠狠综合久久狠狠色综合 | 婷婷六月丁香激情 | 婷婷在线免费视频 | 亚洲区视频在线 | 国产亚洲精品久久久久久网站 | 九9热这里真品2 | 久久精品视频在线免费观看 | 国产一级片不卡 | 91亚洲永久精品 | 激情欧美xxxx| 精品国产一区二区三区久久久蜜月 | 福利区在线观看 | 成人国产精品久久久久久亚洲 | 91精品一区二区三区蜜臀 | 91重口视频 | 日韩中文字幕免费视频 | 制服丝袜成人在线 | 午夜精品一区二区三区在线播放 | av在线com| 欧美日韩精品久久久 | 一级电影免费在线观看 | 国产高清永久免费 | 国产精品久久久久免费 | 亚洲综合色丁香婷婷六月图片 | 国产精品久久久久久久久搜平片 | 婷婷黄色片 | 一区二区视频播放 | 国产黄色在线 | 欧美一级看片 | 欧美激情精品久久久久久免费 | 亚洲日本va在线观看 | 国产午夜视频在线观看 | 色国产精品 | 久久深夜福利免费观看 | 国产精品免费在线 | 国产精品视频免费 | 日韩欧美一区二区三区在线 | 在线视频精品 | 婷婷综合在线 | 久久综合免费视频影院 | 91精品导航| 中文字幕精品视频 | 欧美va天堂在线电影 | 黄色av观看| 天天操操 | 欧美日韩视频在线观看一区二区 | 国产不卡一二三区 | 香蕉视频最新网址 | 亚洲精品麻豆 | 亚洲国产高清视频 | 国产最顶级的黄色片在线免费观看 | 樱空桃av| 夜色资源网 | 99在线观看免费视频精品观看 | 97在线免费视频 | 亚州精品天堂中文字幕 | 国产成人av免费在线观看 | 激情文学综合丁香 | 日韩在线欧美在线 | 国产专区在线播放 | 美女免费视频网站 | 黄色电影网站在线观看 | 国产成人精品午夜在线播放 | 青青看片| 综合色综合色 | 97av在线视频| 欧美天天综合网 | 午夜久久久久 | 精品久久久久国产免费第一页 | 蜜桃视频在线视频 | 成年人av在线播放 | 欧美一级在线看 | 在线涩涩| 国产二区免费视频 | 美女网站在线播放 | 国产免费小视频 | 五月婷香| 婷婷去俺也去六月色 | 精品国产伦一区二区三区观看方式 | 久青草视频在线观看 | 亚洲视频在线免费看 | 久久在线看 | 久久综合九色综合久久久精品综合 | 日韩在线观看免费 | 亚洲精品资源在线 | 亚洲经典视频在线观看 | 奇米影音四色 | 亚洲 欧美 国产 va在线影院 | 日韩精品一区二区三区在线视频 | 中文成人字幕 | 97理论电影 | 九色视频网站 | 日韩特黄av | 91亚洲精品乱码久久久久久蜜桃 | 成人福利在线观看 | 国产精品久久久久一区二区 | 九九九九色 | 亚洲一区视频免费观看 | 欧美性春潮 | 超碰在线观看97 | 九九精品视频在线看 | 在线国产一区二区 | 久久久综合色 | 99久久精品免费看国产一区二区三区 | 国产特级毛片aaaaaa高清 | 人人插人人舔 | 九九99| 在线观看黄色免费视频 | 天天色天天射天天综合网 | 亚洲成人精品久久久 | 国产精品免费大片视频 | 欧美性色19p | 亚洲男模gay裸体gay | 亚洲免费成人 | 一级特黄av | 免费网址在线播放 | 欧美a级成人淫片免费看 | 国产中文字幕亚洲 | 亚洲国产精品va在线 | 三级av片| 欧美精品在线观看免费 | 国产高清不卡一区二区三区 | 欧美性色19p | 国产精品网红直播 | 日韩免费视频 | 免费福利片2019潦草影视午夜 | 草久电影 | 天天操天 | 国产国语在线 | 免费国产一区二区视频 | 亚洲精品女 | 狠狠干夜夜 | 成人va在线观看 | 国产精品福利在线观看 | 亚洲 综合 国产 精品 | 91免费网站在线观看 | 欧美最猛性xxxxx亚洲精品 | 中文字幕一区二区三区在线播放 | 久久手机免费观看 | 不卡电影一区二区三区 | 欧美一级视频一区 | 97超碰在线资源 | 丰满少妇麻豆av | 国产h在线播放 | 日本不卡视频 | 国产高清不卡av | 日本精品视频免费观看 | 精品美女久久久久 | 中文字幕一区av | 国产精品小视频网站 | 欧洲一区二区三区精品 | 国产91av视频在线观看 | 欧美一级裸体视频 | 99久久婷婷国产 | 国内精品在线观看视频 | 天天爱天天操天天射 | 日日夜夜精品免费观看 | 美女视频a美女大全免费下载蜜臀 | 国产精品一区二区三区在线播放 | 国产一区成人 | 天天人人综合 | 美女视频久久黄 | 国产日本在线 | 亚洲天堂网视频在线观看 | 天天干天天操天天操 | 天天射天天 | 久久久久亚洲国产 | 在线亚洲小视频 | 精品亚洲成人 | 欧美成人精品在线 | 欧美日本不卡视频 | 国产精品毛片久久久 | 国产成人免费 | 午夜精品福利一区二区三区蜜桃 | 亚洲区精品视频 | 国产精品18久久久久久久久久久久 | 国产91aaa | 激情久久久 | 亚洲一级国产 | 91高清视频 | 国内精品久久久久久久久久久 | 成人av影院在线观看 | 最近中文字幕国语免费高清6 | 亚洲黄色大片 | 色88久久| 天天摸天天操天天舔 | 亚洲欧洲视频 | 免费看搞黄视频网站 | 欧美福利网站 | 在线午夜电影神马影院 | 欧美精品xx | 蜜桃视频日本 | 美女视频黄免费的 | 免费观看一区二区三区视频 | 中文字幕一区二区三区久久蜜桃 | 欧美日韩一区二区在线观看 | 国产不卡精品 | 91精品久久久久久久91蜜桃 | 91成人精品观看 | 99精品视频一区 | 中文字幕免费观看视频 | 午夜视频在线观看一区二区三区 | 国产欧美精品在线观看 | av成人免费观看 | 激情丁香| 亚洲国产精品影院 | 婷婷色婷婷| 美女网站色 | 国产真实精品久久二三区 | 国产精品成人品 | 欧美日bb| 久久国产一区 | 99精品在线视频播放 | 4438全国亚洲精品观看视频 | 999电影免费在线观看 | 国产成人不卡 | 91麻豆精品国产91久久久久久 | 精品一区欧美 |