日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Atlas 300V 24G昇騰AI推理卡部署YOLO完整實(shí)戰(zhàn)指南

Atlas 300V 24G昇騰AI推理卡部署YOLO完整實(shí)戰(zhàn)指南 手里同時(shí)插著A100和Atlas 300V Pro 24G的人大概都聽(tīng)過(guò)這個(gè)靈魂拷問(wèn)Atlas 300V 24G到底算不算運(yùn)算加速卡答案是算而且很能算。這塊卡雖然經(jīng)常被歸類到“視頻解析”產(chǎn)品線里但內(nèi)核是華為昇騰310P AI處理器24GB大內(nèi)存拿來(lái)跑YOLO系列模型是再常見(jiàn)不過(guò)的玩法。很多人第一次拿到它對(duì)著npu-smi里的“Video Card”字樣一臉懵以為買錯(cuò)了卡。這篇文章不繞彎子直接圍繞Atlas 300V 24G把硬件規(guī)格、CANN工具鏈、YOLO模型轉(zhuǎn)換、ACL推理以及我實(shí)際踩過(guò)的坑一條條講清楚。不管你是剛?cè)腴T的算法工程師還是要給服務(wù)器配推理卡的運(yùn)維老手看完應(yīng)該都能少走不少?gòu)澛贰?. Atlas 300V 24G到底是什么先回答“是不是運(yùn)算加速卡”1.1 一張圖看懂硬件參數(shù)與定位先給結(jié)論Atlas 300V 24G常見(jiàn)型號(hào)為Atlas 300V Pro 24GB是華為昇騰生態(tài)里的一塊AI推理加速卡核心是昇騰310P處理器不是純視頻卡。只不過(guò)它板載了DVPP視頻編解碼硬件單元能做H.264/H.265的硬件解碼所以經(jīng)常被塞進(jìn)視頻分析服務(wù)器里導(dǎo)致很多人以為它只是視頻轉(zhuǎn)碼卡。參數(shù)層面我直接說(shuō)大家最關(guān)心的幾項(xiàng)項(xiàng)目常見(jiàn)標(biāo)稱參數(shù)備注核心芯片昇騰310P系列AI推理專用板載內(nèi)存24GB LPDDR4X不是HBM但容量和帶寬都?jí)蛴眯螒B(tài)半高半長(zhǎng)PCIe卡單槽位普通服務(wù)器能插功耗典型幾十瓦級(jí)別遠(yuǎn)低于同顯存游戲卡PCIePCIe 3.0 x16部分機(jī)型x8看服務(wù)器型號(hào)視頻能力支持H.264/H.265硬件解碼和AI推理并行不沖突推理精度FP16/INT8為主YOLO這類模型主力精度這里有個(gè)容易混淆的點(diǎn)華為昇騰產(chǎn)品線里有好多帶“Atlas 300”的名字比如300I Pro、300V Pro、300V Mega等。300V系列偏視頻和視覺(jué)計(jì)算300I系列偏通用推理。但無(wú)論哪個(gè)它們的本質(zhì)都是AI加速卡核心邏輯是一樣的。所以說(shuō)“Atlas 300V 24G是運(yùn)算加速卡嗎”答案是肯定的它具備了完整的AI計(jì)算加速能力。1.2 它和“純推理卡”“游戲顯卡”有什么不一樣很多人習(xí)慣用顯卡思維看這塊卡顯存24GB那應(yīng)該能跑大模型吧這里要潑一盆冷水。Atlas 300V 24G不是通用GPGPU不能拿CUDA那套直接懟上去。它需要專門的CANN工具鏈模型要轉(zhuǎn)成昇騰的om格式才能跑。同樣跑YOLO在NVIDIA卡上是PyTorch直接調(diào)用CUDA在Atlas上是先導(dǎo)出ONNX、再做ATC離線轉(zhuǎn)換、再用ACL接口加載推理。多了一道工序但也換來(lái)了兩個(gè)好處一是轉(zhuǎn)換后的om模型是靜態(tài)編譯的推理路徑優(yōu)化得比較狠實(shí)際性價(jià)比不低二是卡本身功耗極低一臺(tái)服務(wù)器可以塞好幾塊做成高密度推理節(jié)點(diǎn)。另外要注意Atlas 300V 24G的內(nèi)存和顯存有區(qū)別。它雖然是24GB但跑的是AI算子數(shù)據(jù)不能像系統(tǒng)內(nèi)存那樣隨意讀寫也不支持CUDA里的統(tǒng)一虛擬內(nèi)存。所有輸入輸出數(shù)據(jù)都要通過(guò)ACL接口主動(dòng)搬運(yùn)到設(shè)備側(cè)或者用內(nèi)存映射方式做零拷貝這個(gè)細(xì)節(jié)后面實(shí)操部分會(huì)講。1.3 為什么那么多人搜“是不是運(yùn)算加速卡”這個(gè)問(wèn)題被反復(fù)搜索背后是有原因的。很多人從云廠商或者二手市場(chǎng)拿到這塊卡第一件事就是插到機(jī)器上看系統(tǒng)識(shí)別。結(jié)果npu-smi昇騰的顯卡信息工具顯示一堆“Processing Unit”信息但主板上沒(méi)有顯示輸出接口也沒(méi)有風(fēng)扇狂轉(zhuǎn)和印象里的“顯卡”完全不一樣。加上Atlas 300V Pro 24GB的官方定位是“智能視頻加速卡”包裝、文檔、驅(qū)動(dòng)管理界面都強(qiáng)調(diào)視頻能力這就讓不少人懷疑自己是不是買到了“視頻采集卡”。實(shí)際情況是視頻解碼只是它的一部分能力AI推理才是重頭戲。DVPP硬件解碼出來(lái)的畫面可以直接喂給AI算子省掉了從CPU繞一圈的搬運(yùn)開(kāi)銷這正是它在視頻分析場(chǎng)景里特別強(qiáng)的原因。所以不要再糾結(jié)它是不是運(yùn)算加速卡它的AI算力就是為了讓YOLO這類模型能低成本、高吞吐地跑起來(lái)。1.4 這塊卡適合誰(shuí)來(lái)用結(jié)合我自己的使用經(jīng)驗(yàn)Atlas 300V 24G特別適合三類場(chǎng)景視頻分析項(xiàng)目攝像頭流接入DVPP硬解后直接推理典型的就是人車物檢測(cè)、安全帽識(shí)別、煙火檢測(cè)這類YOLO落地場(chǎng)景。高密度推理服務(wù)器一張卡幾十瓦四卡、八卡堆在一起機(jī)箱散熱壓力小機(jī)房電費(fèi)也扛得住。國(guó)產(chǎn)化部署項(xiàng)目需要用到昇騰平臺(tái)的場(chǎng)合用這塊卡做模型落地。不太適合的人群是想“零成本遷移CUDA代碼”的開(kāi)發(fā)者。昇騰有自己的編程范式ACL也好、MindSpore Lite也好都要重新適應(yīng)。不過(guò)好消息是只要你能把模型導(dǎo)出成ONNX基本都能轉(zhuǎn)成om模型跑起來(lái)。2. 部署YOLO的整體思路從PyTorch權(quán)重到昇騰om模型2.1 昇騰推理的基本鏈路先理清楚在Atlas上跑YOLO的大流程后面才不會(huì)亂PyTorch訓(xùn)練權(quán)重 / 官方權(quán)重導(dǎo)出為ONNX用ATC工具Ascend Tensor Compiler轉(zhuǎn)為om模型編寫ACL推理程序加載om模型輸入圖像或視頻流做預(yù)處理執(zhí)行離線推理后處理解碼、NMS等輸出檢測(cè)結(jié)果這個(gè)過(guò)程里最核心的兩件事就是“模型轉(zhuǎn)換”和“推理代碼”。模型轉(zhuǎn)換決定模型能不能跑、跑得順不順推理代碼決定能不能把硬件性能吃滿。我記得第一次接觸昇騰時(shí)以為和TensorRT一樣裝好驅(qū)動(dòng)直接有個(gè)類似trtexec的工具就能測(cè)。實(shí)際用下來(lái)發(fā)現(xiàn)CANN生態(tài)里最常用的測(cè)速工具是ais_bench模型轉(zhuǎn)換和推理的性能優(yōu)化都圍繞它展開(kāi)。先把這條鏈路走通再談?wù){(diào)優(yōu)。2.2 方案選型ATC pyACL還是MindSpore Lite昇騰上跑YOLO有好幾種姿勢(shì)最主流的是ATC離線轉(zhuǎn)換 pyACLAscendCL的Python接口其次是MindSpore Lite。還有直接用MindIE、MindX SDK的但那是更上層的東西適合做完整流水線調(diào)試起來(lái)沒(méi)那么直觀。我個(gè)人建議大多數(shù)場(chǎng)景選ATC pyACL理由有三點(diǎn)ATC轉(zhuǎn)換om模型時(shí)做了大量圖優(yōu)化和算子融合模型一旦轉(zhuǎn)好運(yùn)行開(kāi)銷小。pyACL接口簡(jiǎn)單直接加載、執(zhí)行、取結(jié)果非常透明出了問(wèn)題好定位。MindSpore Lite雖然也支持轉(zhuǎn)模型但版本兼容性問(wèn)題比ATC多一些尤其是YOLO這種要用到自定義后處理的場(chǎng)景不如ACL靈活。當(dāng)然如果團(tuán)隊(duì)主技術(shù)棧就是MindSpore那就用MindSpore Lite。不過(guò)以我接觸的項(xiàng)目看大部分人的模型都是PyTorch訓(xùn)練出來(lái)的走ONNX ATC明顯最順。2.3 環(huán)境準(zhǔn)備驅(qū)動(dòng)、固件、CANN工具包部署環(huán)境這塊是最容易出問(wèn)題的照著官方文檔也可能翻車。我的建議是按順序來(lái)裝驅(qū)動(dòng)和固件Ascend HDK讓系統(tǒng)能識(shí)別到卡。裝完后用npu-smi info查看能看到卡就說(shuō)明基礎(chǔ)鏈路通了。裝CANN toolkit下載和驅(qū)動(dòng)版本配套的包安裝到/usr/local/Ascend/ascend-toolkit。source環(huán)境變量source /usr/local/Ascend/ascend-toolkit/set_env.sh驗(yàn)證編譯環(huán)境atc --version這里面最大的坑是版本配套。驅(qū)動(dòng)、固件、CANN三者的版本號(hào)得互相兼容官方每年都有配套表。我有一次直接裝了最新CANN結(jié)果驅(qū)動(dòng)還是半年前的老版本ATC轉(zhuǎn)模型時(shí)報(bào)了一堆“so文件找不到”折騰了兩天才發(fā)現(xiàn)是驅(qū)動(dòng)太老CANN里編譯生成的算子加載到設(shè)備上失敗。建議先到華為官網(wǎng)找到對(duì)應(yīng)型號(hào)的驅(qū)動(dòng)/固件包看它推薦的CANN版本范圍再按那個(gè)范圍裝工具包不要盲目追新。裝好后盡量用一個(gè)固定版本至少要把驅(qū)動(dòng)和CANN版本記錄下來(lái)方便以后排查。2.4 模型轉(zhuǎn)換前的準(zhǔn)備導(dǎo)出干凈的ONNX在轉(zhuǎn)om之前先把YOLO模型導(dǎo)出成ONNX。這一步看似簡(jiǎn)單其實(shí)決定了后面ATC能不能一次通過(guò)。以YOLOv5為例推薦用官方倉(cāng)庫(kù)自帶的導(dǎo)出腳本python export.py --weights yolov5s.pt --include onnx --opset 11幾個(gè)關(guān)鍵點(diǎn)opset版本不要太高11到13之間最穩(wěn)。我試過(guò)opset17ATC轉(zhuǎn)換時(shí)報(bào)過(guò)不少算子兼容問(wèn)題降到11直接通過(guò)。導(dǎo)出時(shí)把NMS去掉只保留主干輸出。NMS放在CPU上做或者用昇騰的融合NMS算子單獨(dú)處理混在模型里會(huì)讓轉(zhuǎn)換失敗概率大增。固定輸入尺寸。YOLOv5默認(rèn)640×640直接用即可。不要一開(kāi)始就搞動(dòng)態(tài)shape先固定尺寸跑通后面需要再改。導(dǎo)出后的ONNX可以用Netron看一下輸出節(jié)點(diǎn)確認(rèn)輸出的維度形態(tài)。YOLOv5一般是三個(gè)特征層輸出或者一個(gè)concat后的張量后續(xù)寫后處理要對(duì)著這個(gè)結(jié)構(gòu)來(lái)。有一點(diǎn)要提醒如果你的模型是YOLOv8、YOLOv9這類更晚的版本導(dǎo)出ONNX時(shí)同樣建議關(guān)掉NMS。YOLOv8的detect頭輸出結(jié)構(gòu)是 (1, 84, 8400) 這種形態(tài)后處理邏輯和YOLOv5不一樣但ATC轉(zhuǎn)換的思路完全一致。3. YOLO模型轉(zhuǎn)換實(shí)操ATC參數(shù)、AIPP與后處理策略3.1 ONNX轉(zhuǎn)OM的命令詳解環(huán)境準(zhǔn)備好、ONNX也導(dǎo)出完成之后就該用ATC把模型轉(zhuǎn)成om格式了。下面這條命令是我最常用的YOLOv5轉(zhuǎn)換命令字段逐一說(shuō)明atc --modelyolov5s.onnx \ --framework5 \ --outputyolov5s_bs4 \ --input_shapeimages:4,3,640,640 \ --soc_versionAscend310P3 \ --insert_op_confaipp.cfg \ --output_typeFP16 \ --logerror--framework55表示ONNX。這個(gè)數(shù)字別記反Caffe是0MindSpore是1TensorFlow是3ONNX就是5。--input_shape把輸入節(jié)點(diǎn)的shape固定下來(lái)。這里的images要和ONNX里的輸入名完全一致先用Netron查或者用python -c import onnx; monnx.load(yolov5s.onnx); print([i.name for i in m.graph.input])查看。--soc_version目標(biāo)芯片類型一定要和實(shí)際卡匹配。Atlas 300V Pro 24GB對(duì)應(yīng)的是Ascend310P系列具體是Ascend310P1還是Ascend310P3最好用npu-smi info查。最后一行會(huì)顯示AI芯片信息按那個(gè)填。--insert_op_confAIPP預(yù)處理配置后面詳細(xì)說(shuō)。--output_type模型輸出類型設(shè)成FP16可以減少內(nèi)存占用推理速度也有提升。但要注意后處理里如果對(duì)精度敏感需要驗(yàn)證一下。--logerror只打錯(cuò)誤日志。初次轉(zhuǎn)換建議去掉或者設(shè)成--logdebug看得更細(xì)。轉(zhuǎn)換成功的標(biāo)志是生成了.om文件并且日志里出現(xiàn)類似“Run atc successfully”的信息。如果失敗先看是不是soc_version不對(duì)這個(gè)報(bào)錯(cuò)最常見(jiàn)——不同芯片的算子庫(kù)不一樣填錯(cuò)就轉(zhuǎn)不過(guò)去。3.2 AIPP預(yù)處理配置把歸一化、減均值交給硬件AIPP是昇騰的AI預(yù)處理模塊它可以在推理前自動(dòng)完成圖像縮放、格式轉(zhuǎn)換、減均值、歸一化這些操作省去CPU或GPU上做預(yù)處理的時(shí)間。YOLOv5的歸一化是除以255對(duì)應(yīng)配置如下aipp_op { aipp_mode: static input_format: RGB888_U8 csc_switch: false mean: 0.0 0.0 0.0 min: 0.0 0.0 0.0 max: 255.0 255.0 255.0 }這個(gè)配置的意思是輸入圖像是RGB排列、8位無(wú)符號(hào)整型然后數(shù)據(jù)直接除以255min為0、max為255時(shí)計(jì)算方式是把像素值映射到[0,1]區(qū)間不做色彩空間轉(zhuǎn)換。注意幾個(gè)細(xì)節(jié)很多圖像讀出來(lái)是BGR格式OpenCV默認(rèn)如果模型訓(xùn)練時(shí)用的是RGBAIPP里要不做csc要不就是input_format: BGR888_U8然后在模型里期望RGB。搞反了會(huì)導(dǎo)致檢測(cè)結(jié)果嚴(yán)重變差邊界框亂飛但loss不高這種問(wèn)題最隱蔽。csc_switch控制是否做顏色空間轉(zhuǎn)換默認(rèn)是true。如果你的輸入已經(jīng)是目標(biāo)格式關(guān)掉它避免多一道轉(zhuǎn)換。AIPP里其實(shí)還可以做縮放但YOLO推理前通常會(huì)在CPU端做letterbox保持寬高比縮放后補(bǔ)邊不建議在AIPP里直接做仿射變換否則容易影響坐標(biāo)映射回原圖。AIPP是個(gè)好東西但它和服務(wù)端縮放邏輯是耦合的一定要讓前后處理團(tuán)隊(duì)對(duì)同一套參數(shù)。我見(jiàn)過(guò)太多項(xiàng)目因?yàn)锳IPP配置和Python預(yù)處理不一致導(dǎo)致精度下降而不自知。3.3 固定Shape還是動(dòng)態(tài)ShapeYOLO場(chǎng)景里輸入尺寸一般是固定的比如640×640所以強(qiáng)烈建議先用固定Shape。固定Shape的好處是ATC能極致優(yōu)化內(nèi)存布局和算子融合吞吐更高而且動(dòng)態(tài)Shape在昇騰上涉及動(dòng)態(tài)Batch、動(dòng)態(tài)分辨率等多套配置API調(diào)用也復(fù)雜不少。如果你確實(shí)需要?jiǎng)討B(tài)Batch可以在ATC命令里這樣寫--input_shapeimages:-1,3,640,640 --dynamic_batch_size1,2,4,8直白說(shuō)動(dòng)態(tài)Batch需要申請(qǐng)多組內(nèi)存池實(shí)際用起來(lái)要處理“當(dāng)前實(shí)際batch是多大”的問(wèn)題邏輯復(fù)雜但收益是能按業(yè)務(wù)流量隨時(shí)調(diào)整吞吐適合視頻流并發(fā)波動(dòng)大的場(chǎng)景。先跑通固定Batch1再考慮動(dòng)態(tài)。我的習(xí)慣是起步階段直接用固定Batch1部署驗(yàn)證功能上線前再測(cè)一下Batch4或Batch8的吞吐提升如果提升明顯就切到固定Batch。注意固定Batch4意味著不管實(shí)際來(lái)幾張圖都要湊夠4張才能推理視頻流場(chǎng)景可能反而增加延遲。要根據(jù)業(yè)務(wù)取舍。3.4 輸出節(jié)點(diǎn)與YOLO后處理方案YOLO模型轉(zhuǎn)om后輸出可能是幾個(gè)特征圖拿YOLOv5來(lái)說(shuō)如果不做融合會(huì)得到三個(gè)輸出維度分別是 (1, 3, 80, 80, 85)、(1, 3, 40, 40, 85)、(1, 3, 20, 20, 85)其中85是(x, y, w, h, obj_conf, cls1~cls80)。如果導(dǎo)出時(shí)把三個(gè)head concat了就是 (1, 25200, 85) 一個(gè)輸出。在Atlas上跑的時(shí)候建議按concat后的單個(gè)輸出來(lái)處理代碼簡(jiǎn)單。如果轉(zhuǎn)出來(lái)是三個(gè)獨(dú)立的輸出節(jié)點(diǎn)可以在ATC命令里用--out_nodes把它們拼一下或者直接在Python后處理里分別解析。后處理NMS建議放在CPU側(cè)執(zhí)行。具體流程是取模型輸出按閾值過(guò)濾低置信度框。將特征圖坐標(biāo)映射回原圖坐標(biāo)這一步要把letterbox的pad和scale算進(jìn)去。按類別做NMS比如用OpenCV的cv2.dnn.NMSBoxes或者手寫一個(gè)簡(jiǎn)單的NMS。有的項(xiàng)目要求極致低延遲后處理全部在C里做Python版本可以先用sklearn或torch自帶NMS頂上效果一致。我個(gè)人比較推薦把NMS放到和設(shè)備推理并行的線程里用生產(chǎn)者-消費(fèi)者模型推理完只管把原始輸出丟給后處理隊(duì)列能省下不少耗時(shí)。4. 在Atlas 300V 24G上跑通YOLO推理ACL代碼核心4.1 初始化Device與Context昇騰ACL的編程模型和CUDA很像先初始化再定設(shè)備建Context和Stream。下面是Python版本的骨架import acl import numpy as np ACL_MEM_MALLOC_NORMAL_ONLY 2 ACL_MEMCPY_HOST_TO_DEVICE 1 ACL_MEMCPY_DEVICE_TO_HOST 2 def setup_device(): ret acl.init() assert ret 0, facl.init failed: {ret} ret acl.rt.set_device(0) assert ret 0, fset_device failed: {ret} context acl.rt.create_context(0) ret acl.rt.create_stream() assert ret 0 return context這里acl.rt.set_device(0)表示使用第0張卡。如果機(jī)器上有多個(gè)卡可以通過(guò)npu-smi info查看設(shè)備編號(hào)。需要注意每次進(jìn)程結(jié)束要調(diào)用acl.finalize()否則會(huì)造成設(shè)備資源泄漏下次加載模型時(shí)可能莫名報(bào)錯(cuò)“acl.rt.malloc failed”。4.2 加載模型、準(zhǔn)備輸入輸出模型加載用acl.mdl.load_from_file返回一個(gè)model_id。之后通過(guò)描述符拿到輸入和輸出的大小再申請(qǐng)?jiān)O(shè)備側(cè)內(nèi)存model_id acl.mdl.load_from_file(yolov5s_bs4.om) input_desc acl.mdl.get_input_desc(model_id) output_desc acl.mdl.get_output_desc(model_id) # 這里要根據(jù)實(shí)際輸入shape計(jì)算假設(shè)batch4, 3, 640, 640 input_size 4 * 3 * 640 * 640 * 4 # float324字節(jié) output_size 4 * 25200 * 85 * 4 data_buf, ret acl.rt.malloc(input_size, 2) out_buf, ret acl.rt.malloc(output_size, 2)2是內(nèi)存對(duì)齊參數(shù)通常傳acl.const.MEMORY_ALIGNMENT一般就是64字節(jié)對(duì)齊。很多人在申請(qǐng)內(nèi)存時(shí)忽略對(duì)齊可能導(dǎo)致拷貝失敗或推理輸出錯(cuò)位建議統(tǒng)一用標(biāo)準(zhǔn)對(duì)齊值。準(zhǔn)備輸入數(shù)據(jù)時(shí)要把預(yù)處理好的圖像數(shù)組拷貝到設(shè)備側(cè)host_data np.ascontiguousarray(preprocessed_img).astype(np.float32) # 先取到host端的數(shù)據(jù)指針 host_data_ptr acl.util.numpy_to_ptr(host_data) ret acl.rt.memcpy(data_buf, input_size, host_data_ptr, input_size, ACL_MEMCPY_HOST_TO_DEVICE)注意輸入數(shù)據(jù)的形狀、數(shù)據(jù)類型要和ATC轉(zhuǎn)換時(shí)--input_shape以及AIPP配置匹配。比如AIPP配置里寫input_format: RGB888_U8那host_data可以是uint8三通道圖如果AIPP只做歸一化而格式由你自己控制那host_data就按你的實(shí)現(xiàn)來(lái)。4.3 執(zhí)行推理與結(jié)果回傳執(zhí)行推理就一行ret acl.mdl.execute(model_id, [data_buf], [out_buf])這個(gè)調(diào)用是同步的執(zhí)行完結(jié)果直接就在out_buf里了。如果想異步需要自己建stream并傳入相關(guān)接口或者在一個(gè)線程里交替執(zhí)行。初始階段先用同步調(diào)用跑通后再考慮異步優(yōu)化。從設(shè)備側(cè)把結(jié)果拷回hostout_host np.zeros((4 * 25200 * 85,), dtypenp.float32) out_host_ptr acl.util.numpy_to_ptr(out_host) ret acl.rt.memcpy(out_host_ptr, output_size, out_buf, output_size, ACL_MEMCPY_DEVICE_TO_HOST) outputs out_host.reshape(4, 25200, 85)到這里模型推理的部分就跑完了剩下的就是把outputs按YOLO的方式解碼、過(guò)濾、NMS。4.4 多路并發(fā)與性能優(yōu)化方向Atlas 300V 24G的算力不小單線程同步推理會(huì)浪費(fèi)硬件。我的做法是把推理拆成幾個(gè)環(huán)節(jié)并行主線程負(fù)責(zé)采集/讀取圖像做letterbox和歸一化。推理線程持有model_id循環(huán)從隊(duì)列里取批數(shù)據(jù)執(zhí)行acl.mdl.execute。后處理線程接收原始輸出做解碼和NMS。要實(shí)現(xiàn)多batch最直接的方式是攢夠batch個(gè)數(shù)再推理。比如固定batch4就攢4張圖同時(shí)塞進(jìn)去。這樣吞吐上去了但要注意延遲會(huì)跟著漲適合視頻流批量檢測(cè)場(chǎng)景。更高級(jí)的優(yōu)化是使用多個(gè)stream同時(shí)跑幾個(gè)acl.mdl.execute。但Atlas 300V 24G上的硬件隊(duì)列資源有限stream不是越多越好我一般用2~4個(gè)stream測(cè)試實(shí)際收益。如果發(fā)現(xiàn)CPU占用高、設(shè)備利用率上不去問(wèn)題多半出在數(shù)據(jù)拷貝上可以嘗試用acl.rt.mem_alloc申請(qǐng)帶device端uva的內(nèi)存實(shí)現(xiàn)零拷貝映射避免每幀都做H2D拷貝。5. 實(shí)測(cè)性能與調(diào)優(yōu)心得5.1 用ais_bench先做基準(zhǔn)測(cè)試不要一上來(lái)就寫完整工程先拿工具測(cè)模型底數(shù)。CANN自帶ais_bench用起來(lái)很簡(jiǎn)單ais_bench --modelyolov5s_bs4.om --input./input_bin --output./out --batchsize4它會(huì)把推理耗時(shí)、吞吐非常清楚打出來(lái)。得到benchmark數(shù)后再和你自己的代碼對(duì)比。如果自己的代碼比ais_bench慢很多說(shuō)明預(yù)處理或拷貝環(huán)節(jié)有瓶頸。我第一次跑YOLOv5s 640×640時(shí)ais_bench顯示單batch延遲在個(gè)位數(shù)毫秒級(jí)別批處理反而在內(nèi)存拷貝上浪費(fèi)了大量時(shí)間。后來(lái)發(fā)現(xiàn)是每次都用np.ascontiguousarray強(qiáng)制復(fù)制輸入數(shù)據(jù)格式本身就不連續(xù)。改完直接讓輸入數(shù)據(jù)從創(chuàng)建開(kāi)始就是按C-contiguous生成省掉這一次拷貝延遲立刻下來(lái)一截。5.2 影響吞吐的3個(gè)隱藏因素很多人在Atlas上跑YOLO明明模型轉(zhuǎn)換沒(méi)問(wèn)題設(shè)備也沒(méi)報(bào)錯(cuò)但吞吐就是上不去。就我的經(jīng)驗(yàn)多半是卡在這三個(gè)地方第一輸入數(shù)據(jù)排列。YOLO模型輸入是NCHW也就是batch、channel、height、width。如果從視頻幀直接resize出來(lái)是NHWCOpenCV默認(rèn)就是HWC需要做一次transpose。這個(gè)transpose如果放在host端Python里做會(huì)非常耗時(shí)建議通過(guò)AIPP配置把NHWC轉(zhuǎn)成NCHW或者在C側(cè)做更高效的內(nèi)存重排。第二內(nèi)存申請(qǐng)與釋放。Python側(cè)耗時(shí)大頭經(jīng)常是每幀都調(diào)用acl.rt.malloc和acl.rt.free。這兩個(gè)操作會(huì)觸發(fā)設(shè)備側(cè)內(nèi)存管理器開(kāi)銷不小。正確做法是程序啟動(dòng)時(shí)一次性把需要用到的內(nèi)存池申請(qǐng)好后續(xù)復(fù)用buffer。第三模型輸出量太大。YOLOv5的輸出是25200×85即使只有少量目標(biāo)也要搬回完整張量。如果數(shù)據(jù)量冗余嚴(yán)重可以在ATC轉(zhuǎn)換時(shí)修改輸出節(jié)點(diǎn)只保留需要的輸出層或者在模型導(dǎo)出時(shí)保留concat后的單輸出減少host端解析壓力。5.3 顯存/內(nèi)存優(yōu)化技巧24GB內(nèi)存對(duì)于YOLOv5這種量級(jí)的模型來(lái)說(shuō)非常寬裕但大批次并發(fā)時(shí)還是會(huì)遇到內(nèi)存碎片問(wèn)題。我建議用固定buffer池。所有輸入輸出buffer在進(jìn)程啟動(dòng)時(shí)分配一次推理循環(huán)里反復(fù)使用不做額外申請(qǐng)和釋放。batch和stream數(shù)量要做組合測(cè)試。比如batch8配stream1和batch4配stream2前者延遲高但吞吐可能持平后者響應(yīng)更均勻。根據(jù)自己的延遲要求選。如果同時(shí)跑多個(gè)模型可以給不同模型分配不同device編號(hào)避免模型加載時(shí)反復(fù)動(dòng)態(tài)申請(qǐng)?jiān)O(shè)備內(nèi)存。一個(gè)容易被忽略的點(diǎn)是Atlas 300V 24G的板載內(nèi)存雖然叫“24G”但不是全部都能當(dāng)顯存隨便用。運(yùn)行時(shí)會(huì)有一部分被驅(qū)動(dòng)、上下文、算子緩存占用。所以計(jì)算可用內(nèi)存時(shí)不要卡著24GB規(guī)劃留出15%~20%余量免得跑長(zhǎng)業(yè)務(wù)后內(nèi)存越用越少最終報(bào)“out of memory”。6. 常見(jiàn)問(wèn)題與排查實(shí)錄6.1 從報(bào)錯(cuò)看問(wèn)題我踩過(guò)的幾個(gè)典型坑先說(shuō)模型轉(zhuǎn)換階段的經(jīng)典報(bào)錯(cuò)E10016: Load model failed。這個(gè)多數(shù)是CANN環(huán)境沒(méi)配對(duì)要么驅(qū)動(dòng)太老要么set_env.sh沒(méi)source。我的排查順序是先source環(huán)境變量再跑atc --version如果版本顯示正常再查驅(qū)動(dòng)和CANN配套表。轉(zhuǎn)換報(bào)“Unsupported operator”或者“Parse onnx model failed”。這種情況十有八九是ONNX里帶了不支持的算子。我遇到過(guò)YOLOv5s用opset17導(dǎo)出后在ATC里報(bào)降到11就通過(guò)了。也有模型帶了一些后處理比如NonMaxSuppression直接在導(dǎo)出時(shí)關(guān)掉。轉(zhuǎn)換成功但推理輸出全是0或全是一個(gè)常數(shù)。這個(gè)要優(yōu)先檢查AIPP配置。常見(jiàn)原因是BGR/RGB格式寫反或者歸一化參數(shù)不對(duì)。可以用一張純色圖做端到端測(cè)試看輸出是否在期望范圍。推理階段也有幾個(gè)高頻問(wèn)題報(bào)錯(cuò)里帶“rtMalloc”字樣的除了內(nèi)存不足還可能是buffer大小計(jì)算錯(cuò)誤。比如輸入為uint8你按float32申請(qǐng)了4倍大小雖然不報(bào)錯(cuò)但拷貝的內(nèi)容錯(cuò)位。反過(guò)來(lái)如果按uint8申請(qǐng)但ATC里input_shape默認(rèn)數(shù)據(jù)類型是FP32推理時(shí)數(shù)據(jù)會(huì)被解釋錯(cuò)。用Python接口時(shí)最鬧心的是偶發(fā)段錯(cuò)誤或者進(jìn)程崩潰。這類問(wèn)題大多和numpy數(shù)組生命周期有關(guān)。你的numpy數(shù)組被垃圾回收了但設(shè)備側(cè)的data_buf還指向它再執(zhí)行時(shí)就會(huì)炸。解決方法是讓存放輸入數(shù)據(jù)的numpy數(shù)組保持引用直到推理完成或者直接用acl自帶的內(nèi)存接口管理生命周期。6.2 常見(jiàn)問(wèn)題速查表癥狀可能原因解決辦法npu-smi看不到卡驅(qū)動(dòng)沒(méi)裝好/固件不匹配重裝驅(qū)動(dòng)和固件確認(rèn)板卡供電與PCIe插槽ATC報(bào)soc版本不識(shí)別芯片類型填錯(cuò)npu-smi info查到型號(hào)按實(shí)際填寫ATC報(bào)so文件缺失環(huán)境變量沒(méi)source執(zhí)行source set_env.sh轉(zhuǎn)換失敗算子不支持ONNX版本/torch導(dǎo)出方式問(wèn)題嘗試opset11去掉NMS推理結(jié)果全0AIPP格式或數(shù)據(jù)拷貝錯(cuò)誤檢查RGB/BGR、數(shù)據(jù)shape和dtypeacl.rt.malloc失敗內(nèi)存申請(qǐng)過(guò)多/泄漏復(fù)用buffer減少動(dòng)態(tài)申請(qǐng)首幀延遲高模型加載時(shí)算子編譯項(xiàng)目啟動(dòng)預(yù)加載模型熱身推理一次6.3 獨(dú)家避坑技巧最后分享幾個(gè)常規(guī)文檔里不會(huì)寫的經(jīng)驗(yàn)都是真金白銀換來(lái)的第一模型轉(zhuǎn)換完先別急著自己寫代碼用官方ais_bench或atc自帶的檢查工具驗(yàn)證模型輸出。如果工具測(cè)出來(lái)輸出正常那你后處理邏輯寫錯(cuò)就是自己的問(wèn)題如果工具也異?;究梢枣i定是轉(zhuǎn)換環(huán)節(jié)的配置錯(cuò)誤別讓兩頭背鍋。第二YOLO在CPU上做NMS時(shí)建議用cv2.dnn.NMSBoxes它在Atlas服務(wù)器的x86/ARM架構(gòu)上都很穩(wěn)。不要一上來(lái)就上自定義nms算子雖然后續(xù)可以做融合優(yōu)化但調(diào)試成本高不少先跑通再優(yōu)化。第三調(diào)試階段把--logerror改成--logdebug并且保留完整日志文件。昇騰的報(bào)錯(cuò)非常詳細(xì)debug日志里能看到是哪個(gè)算子、哪塊內(nèi)存出了問(wèn)題。別嫌日志長(zhǎng)關(guān)鍵時(shí)刻能救命。第四電源和散熱。這塊卡功耗雖然不高但機(jī)箱里塞多卡時(shí)供電質(zhì)量直接影響穩(wěn)定性。我在一臺(tái)4卡機(jī)器上遇到過(guò)推理幾小時(shí)后偶發(fā)超時(shí)的問(wèn)題排查到最后是電源功率余量不足導(dǎo)致PCIe鏈路降速。確認(rèn)服務(wù)器電源額定功率至少比整機(jī)算出的功耗高30%。7. 寫在最后的一點(diǎn)個(gè)人經(jīng)驗(yàn)玩Atlas 300V 24G這段時(shí)間最大的體會(huì)是它的使用習(xí)慣和N卡完全不一樣不能拿“裝好驅(qū)動(dòng)直接跑PyTorch”的思路去套但一旦把CANN這條工具鏈理順后續(xù)換模型、上項(xiàng)目都很順。我強(qiáng)烈建議第一次接觸昇騰的朋友找一個(gè)晚上專門把“ONNX → ATC → ais_bench → pyACL”這條鏈路走一遍甚至不用跑YOLO隨便導(dǎo)一個(gè)ResNet試試。把流程跑通信心就有了后面再碰YOLO部署遇到問(wèn)題心里也有底。如果讓我給剛?cè)腴T的人一個(gè)最實(shí)在的建議先固定Batch1固定640×640輸入CPU端做NMS不要一上來(lái)就折騰動(dòng)態(tài)Shape、多stream、融合NMS這些高級(jí)特性。把一條簡(jiǎn)單的路走通再逐步加復(fù)雜度這是我在多個(gè)項(xiàng)目里驗(yàn)證過(guò)的最穩(wěn)路徑。Atlas 300V 24G是一塊好卡但好卡也需要對(duì)的打開(kāi)方式。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品人妻中文字幕4399| 玖玖爱伊人玖玖爱| 另类亚洲一区二区三区| 人妻少妇精品久久久久久| 密臀在线免费观看| 99综合视频一体| 秋霞一级A片黄色视频| 96国产精品| 国产精品视频在线播放| 97内射偷拍| 黄片直播三级黄片两女一男| 波多野42部激情无码喷潮| 国产白嫩精品久久| 久久久久久久伊人精品| 熟女突然公开看18禁影片| 欧美巨大性舒爽顶到了| 无码二级三级| 日本幼女18+| 美女大乳久久久久久久女人18| 国产亚洲99久久精品| 中文字幕一区二区三区高清| 可以免费看黄片的视频| 99re免费| 欧洲性爱无码区| 97这里有精品| 99re在线| www.亚洲黄色| 少妇人妻太紧太深av| 明星性猛交ⅹxxx乱大交| 欧美综合色图网| 日本国产二线女色| 91色香| 天天欧美| 在线97视频| 蜜臀久久99精品久久久久久婷婷| 中国人高清www色视频免费| 久草这里只有精品 | 99色骚| 91久久久久久久久久久| 亚洲日本韩国极品一区二区| 伊人97色天使| 色哟哟1区2区| 久久综合97| 亚洲综合20p| 美欧色综合| 97se亚洲综合自| 天堂成人网| 国产91影院| 色欲Av人妻精品一区二| 国产乱伦性爱区| 操操逼操操逼操操逼逼| 日本精品一区三区| 青青草亚洲一区 | 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 天堂中文日本在线观看| 91操操| 久久国色天香香蕉| 玖玖草久草99蜜月一区二区三区| 天天综合网91| 欧美啪啪天堂| 麻豆亚洲Av成人无码一区精品| 国产黄a三级三级三级av在线看| 欧美熟妇乱码在线一区| 天美传媒Av在线| 久肏视频字幕| 天天躁日日躁狠狠躁| 亚洲一区日韩精品中文字幕| 强奸乱伦日韩AV| 亚洲色啪| 色悠久久久av| 日韩一级二级三级免费看完整版| 日韩欧美大力操| 视频分类 国内精品| 欧美男人一区| 欧美亚洲清纯| 手机在线看片免费人成视频| 久久毛卡| 亚州伊人色综台| 日韩99神马视频片| 超碰在线日韩一区| 国产家庭乱伦表演| www99热| 97色诱| 后入人妻无码| 国产东北女人在线视频| ′ !γ}丶。。久久精品欧美一区二区三区 | 爽 好舒服 无码刺激久久| 超碰97欧美在线| 欧美人妻色| .精品人妻一区二区三| 欧亚揄拍偷拍精品视频| 亚洲激情视频| 99久久精品无码一区二区| 97天天爽| 96久久久久久久| 高跟丝袜AV专区国产| 精品国产乱码久久久久久久久1| 大香伊人在线一区| 欧美色人| 色综合久久久久| jiujiujiujingpin| 男人女人18禁片免费看网站| 激情丁香婷婷| 快播久久人人aV| 日韩性爱视频在线免费观看| 美女啊啊啊啊啊啊啊| 青青青草原| 韩三级a视频在线观看| 天欧美在线| 按摩中文字幕| 99只有精品| 日本十八禁免费看污网站| 天天肏夜夜肏| 国产第11页| 国产又黄又粗又猛大片| 国产日本熟女顶级一区二区三区视频 | 欧美裸体美女日麻屄| 日韩999| 午夜αv| 丁香啪啪| 蜜臀99久久精品久久久久| 日韩黄色一区二区三区| 欧美劲爆第一页| 91精品黄在线观看| 男女啊啊啊啊啊| 日日干夜夜干| 人妻丝袜美腿中文字幕| 欧美色图天堂网m| 白丝AV| 欧美欲色| 成年人三级黄色片视频| 爱丝福利| www.激情| 国产精品96| 国产av尤物| 日韩大香蕉| 青青爽| 狠狠久久手机视频精品| 97在线观看免费视频l| 国产精品一区午夜福利| 国产精品夜夜夜| www.色操逼| 97色在线视频| 色五月激情AV在线| 五月婷在线| a'v在线资源| 欧洲射精91| AV和黑人在线播放| 欧美色图20p| 蜜桃在线观看一区二区三区| 91热爆在线| 欧美美女视频| 97在线观视频免费观看| 婷婷五月av| 国产成人综合在线播放| 国产一区二区视频在线播放| 精品综合久久久久久五月天| 亚洲欧洲综合视频在线| 久久久久国产精品久久久| 国产少妇与亚洲av| 天天操天天射天天日| 色一区二区三区综合| 玖玖97综合| 欧美一区二区三区四区综合| 俺也射| 久久久9品一区二区三区| 逼逼逼逼操操操操操操操操操午夜剧场 | 久久久久久久久久久久欧美日| 两性综合网| 最近2018中文字幕在线高清第一页| 97bbn| 91l欧美在线| 国产蜜臀在线| 麻豆伊人网| 99超级碰免费视频| 黄色高清无码无码破解免费暗网| 天天看精品动漫视频一区| 五月丁香六月激情| 91爱| 久久久久久69国产一区二区| 亚洲日韩黑丝| 日韩欧美午夜一区二区| 天久久久噜噜噜久久国产精品爽爽 | 1769国内精品视频| 国产老太乱伦一区| 久久久啊啊啊| 欧美亚洲在线| 亚洲第一男人天堂| 综合一区二区影视| 天天草AV| 97久久国产亚洲精品超碰热| 久久久九九九九| 99久久久无码| 东京日日夜夜| 久久久久久久久久久97| oumeisetu综合| 午夜高清成人在线视频| 看大黄色大片原件| 无码人妻精品一区二区中文| a片久久久久久久久久久久| 欧美亚洲手机在线| 亚洲色图欧美| 操国产高清| 九九九九九精品| 天天欧美| 日韩熟女操逼| 国产 三级自拍| 国产在线播放成人免费| 欧美亚洲一级在线观看| 国产9 9在线 | 亚洲| 久久精品黄色| 国产高清视频无码在线| 欧美伊人久久综合网| 大JI巴好深好爽又大又粗视频| 三及片网站| 风韵犹存大大大大香蕉| 在线a亚洲视频播放在线| 放黄片放3级黄片没穿衣服| 欧美黑人熟妇精品91| 欧美色网络| 日日夜夜摸| 国产91福利小视频在线观看| 三级特黄60分钟播放| 天天草夜夜草高潮片| 无码操逼网| 亚洲av影院在线观看| 国产在线精品偷| 久久色情| 9999伦理视频| 青青草AV色| 亚洲国产综合图区中文字幕| 国产精品人妻免费精品| 在线情色电影 91大 | 久久久穴999| 九九热超碰97亚洲最新香蕉| 插入粉嫩少妇视频| 美欧色综合| 你懂的在线观看区国产| 成人av动漫在线观看| 色色婷婷五月| 亚洲永久AV无码精品秋霞| 久久久免费懂色| 台湾佬中文娱乐网久久久久久久久久com| 久久原创中文| 蜜臀无码视频在线观看| 精品国产www久久| 国产又粗又又黄又猛| 加勒比综合九九99视频在线播放| 中韩中文字幕在线观看| 日韩欧美tv一区二区在线观看| 亚洲欧洲国产综合av| 啊a一区在线| 歐美性天天| 九九九精品成人免费视频小说| 日本999精品| 天堂亚洲欧美| 亚洲人妻五月丁香婷婷| 99综合视频一体| 国产高潮AA片免费看| 久久国产热视频97电影| 红桃视频高潮| 人人操人人肉久久精品| 在线观看精品国产免费| 99啪啪视频| 九九九999久久久网站| 精品少妇人妻av久久免费| 欧美国产日韩清纯唯美| 欧美日韩97在线| 超清福利精品视频在线| 久久人人妻| 久久99干一本高清| 操逼无码一区| 久久久久久中文版| 欧美一区二区三区不卡高清视频| 精品性爱无码在线播放| 亚洲精品白丝| 中文字幕奈奈美被公侵犯| 白嫩嫩一区| 人人操人人精品影片| 日韩欧洲操屄视频| 日本东京热大香蕉a片| 色路综合| 色色操| 亚洲欧美91√| 中文字幕一二三av| 91人妻熟女| 黄色免费网页无码| 亚洲大胆人体av| 成人免费视瓶| 欧美激情片一区二区| …亚洲黄色厕厕女女在线播…| JULIA一区二区三区在线播放| 国产污视频麻豆传媒一区二区| 亚州性色| 日日夜夜天天| 国产成人无码网站在线视频| 插入综合网| 欲色综合| 欧洲一区二区| 日本岛国黄色网址| 抽插一区二区视频| 色婷网| 这里只有97精品| 婷婷久久网| 超碰99在线| 精品久久99| 校园春色亚洲色图| 色牛牛AV| 福利天堂| 国产第25页在线观看| 在线中文字幕极品av| 97频视在线| 性色av蜜臀av色欲aV| 亚州欧美总和| 日本3级一区二区免费| 超碰导航97| 97超碰国产亚洲精品资源| 丰满人妻一区二区三区免费 | 三级片大波波| 亚洲综合中文字幕有码| 天天干夜夜肏| 97干色| 亚洲色堂免费视频| 亚洲天堂一区二区久久| 97中文综合| 女优免费一区二区永久| 人人操人人舒服| 肉丝无码中文高清| 后入美女国产| 久久久无码av精| 国产91美女视频| 欧美图片偷拍| 午夜福利免费精品视频| 大奶的诱惑| 免费网站观看www在线观| 午夜电影在线观看无码专区| 91九九| 日韩一级二级三级免费看完整版国语版| 国产亚洲日本| 9999免费精彩视频| 青青草久久一区网| 精品久久久亚洲AV成人网站| 中文字幕日韩专区精品系列 | 欧美亚洲今日在线| A 天堂| 91青青草| 狠狠操狠狠爱| a一区二区三区乱码在线| 玖玖超碰熟| 蜜色网色哟哟| 国产精品熟女丝袜一区二区| 久久神马| 色欧洲| 欧美韩国你懂得在线| 久久久国产三级黄色片| 欧美人人曰人人操人人射射| 欧美 亚洲| 夜草欧美| 日韩在线人妻网站| 麻豆精品久久久久久久| 亚洲aV无码成人在线观看| 收看日本人日bb| 美女91在线观看| 美女人妻色网站| 欧美激情激情xxxx欧美专区| 人妖欧美一区二区| 狠狠爱AV| 大香网伊人久久综合网eew| 天天日日夜夜| 欧美性区| 精品国产网站| 一区二区久久天天干狠狠| 亚洲精品成人激情在线| 黄色网址在线免费观看| 草草影院最新网址| 精品人妻一区二区视频| 午夜视频久久久久一区| 午夜国产综合视频在线观看| av中亚| 91欧| AV女优男人的天堂| 一区二区视频在看| 国产美女自拍视频| 亚洲97精品| 99久在线精品99re8蜜桃| 中文字幕欧洲有码| 人人妻人人爽一区二区三区| 97日韩| 久久久久九九九| 欧美性生活免费网| 极品后入免费视频| 欧美999999| 日日摸日日碰| 日本亚欧爱爱| 999综合网| 97超碰站| 岛国片在线播放| 无码人妻精品一区二区中文| 曰本人妻人人澡人人夹| 无码聚合| 天天综合网~69| 亚洲欲色9532548967一区| 亚洲天堂东京热| 内射中出日韩在线观看视频| 国产白领连续中出在线播放| 一区二区播放| 2017亚洲天堂| 国产成人无码a| 亚洲图片欧洲图片aⅴ| 色综合尤物| 日韩pv中文| 欧美日韩国产电影| 亚洲丝袜在线观看| 久久神马| 日韩午夜精品一区二区三区电影| 综合激情五月丁香| 图色综合网| 丝袜狂射91| 啊啊啊啊啊好多水| 思思热久久成人| 91操操| 日日天天久久啊啊aaa| 午夜精品人妻二区三区| 日韩AV噜噜噜一区二区三区四区| 91狠狠综| 黑人嘿嘿嘿超爽免费视频| 色欲天天综合网| 亚洲精品一二三四区| 内射黑丝袜| 男女91| 欧美不卡在线一区二区| 国产女人91精品嗷嗷嗷嗷| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 成人激情无码在线视频| 亚州色交| 久久亚洲日韩熟女精品| 国产特级毛片AAAAAA高潮流水 | 福利五区| 手机午夜电影神马久久| 你操综合| 人人操人人肉久久精品| 色久桃花影院在线观看| 97爱免费插| 日韩欧美天堂| 欧洲一级性爱视频在线观看| 欧美久久婷婷| 少妇综合网| 综合色色婷婷| 99这里都是精品| 天欧美在线| 午夜情侣自拍网站| 天天天肏屄肏屄肏屄欧美欧美| 激情 欧美 亚洲 小说| 五月丁香影视| 天堂亚洲精品| 蜜臀无码一区二区| 日韩 欧美 视频 在线 一区| 黄网色一区二区三区四区精品| 亚洲操逼网| 狠狠干91| 西西美女视频网| 色色九区| 老司机久久| 久久人妻四季| 中国AAAAAA黄色片| 久久av网| 少妇一区二区三区精选| 97色诱| 久久超碰国产一区二区三区| 亚欧美天堂在线| 91黑人狂躁丰满熟妇| 综合熟女| 91美女网站| 九九热九九热| 国产美女在线精品免费看| 欧美第一页性| 麻豆综合一区av| 99999精品成人| 岛国1区2区3区在线观看| 91伊人影视综合| 操www| 亚洲精品 欧美精品| 五月婷婷丁香| 色天使亚洲综合在线观看| 新怡红院| 97爱综合| 久久天天躁日日躁狠狠躁| 91在线视频国产网站| 亚洲欧洲偷拍一区| 俺去啦俺来也久久综合| 麻豆成人av| 成人免费不卡在线视频| 97亚洲在线| 嗯嗯嗯嗯啊啊啊好紧好大| 精品无码欧美三级| 蜜臀无码一区二区| 青青草日韩无码| 国产91福利小视频在线观看| 在线观看视频91| 欧美特大黄一级片片免费| 啊啊啊慢点| 4141514逼喷水三级片| 狼狼色丁香久久婷婷综合五月 | 青青久草| 10000部十八禁看电影| 国产www色在线观看| 天天综合青苹果| 亚洲丝袜色图| 久久99综合| 国产亚洲深夜激情| 91色欧美| 麻豆 亚洲 97| 亚洲AV免费在线观看| 最新中文字幕精品在线| 黄片www视频免费| 久久中文字幕女同性恋一区| 亚洲伊人久久精品狠狠在线| 免费人成?大片在线播放| 神马久久久久久| 超碰视97中文| 99抽插| 婷婷色导航| 欧美日产国产在线成人第一区| 超碰色97| 91欧洲入口| 岛国人妻少妇av在线观看| 97人人草| 牛牛aV| 370p日韩欧美亚洲精品| 国产后入| 亚洲资源站| 天操天操夜操夜月月年年操操| 久久精彩视频9| 色婷网| 色婷婷九月天天综合| 在线日韩日本亚洲国产| 天天爱天天操| 这里都是精品| 国语精品av| 日韩欧美日韩| 探花精品视频| 乱伦av.com| 黑人美精品 A片| 欧美国产日韩高清在线| 丁香五月性| 亚洲色鬼| 色婷婷网| 黄色高清久久无码依人| 小少妇| 国产久久久久久久久一区二区| 日韩av不卡在线看| 亚洲精品性爱片| A级国产欧美激情在线| 久久αⅴ| 亚洲在线91| 熟人人妻少妇精品久久| 天天操天天干美女网址导航| 久久精品人妻一区二区三区| 国产精品久久久999| 久久综合中文国产| 久操操| 久久国模av| 欧美日韩亚洲五月天婷婷| 日韩情色AV| 日韩中文字幕2020| 经典丝袜一区| 色与欲影视天天看综合网| 中文字幕欧洲有码| 色逼综合| 人妻久久久久久| 97 色综合| 91内射| 在线观看一级α片刺激高潮视频| 欧美偷拍区| 精品成人亚洲午夜电影| 五月天婷精品激情| 99热自拍| 日本不卡三级网在线播放| 亚洲 欧美 小说| 91精产一区二区三区| 制服丝袜第二页| 欧美色图校园春色| 夜草网站| 自拍视频一区在线观看| 综合色色网| 97视频网站在线观看| 天天享受天天看| 九热超碰| 国产女性无套 免费观看| 色婷婷国产精品一区在线观看| 成人日韩中文字幕| 水滴偷拍| 成人无码在线超碰网| 麻豆精品天美| 高清不卡视频| 日韩大香蕉精品在线视频| 久久精品无码不卡| 欧美极品| 欧美亚洲中文字幕| 97玖玖超碰| 色九色久| 日本黄色精品专区网站| 日本女人操逼| 西西美女视频网| 中文字幕视频在线观看| 国产高清免费不卡av| 天天日夜夜爽| 精品中文日韩字幕视频| 白嫩少妇| 久久露脸国产老熟女| 欧洲射精91| 91n处女在线观看| 影音先锋新男人| 人人天天干干| 日本国产高清色www视频在线| 久草精品国产蜜臀| 欧美精品系列| 激情五月天校园春色网| 亚洲精品久久久久久久蜜桃臀| 天天操人人操狠狠插| 欧洲色色| 欧美天天在线| 国产精品视频自拍在线| 后入美女国产| 2020中文字幕在线观看| 狠狠爱夜夜| 国产精品一区二区亚洲人成毛片 | 久久av网| 欧美强奸乱| 精品国产自在在线99| 99在线精品观看视频中文 | 91天射| 超碰免费人妻在线| 亚洲人妻av| 超碰这里有精品| 精品中文字幕第一页| 青娱乐av在线| 亚洲av性爱电影| 欧美色色色| 青青草AV色| 日本www操操操| 丰满人妻一区二区中文| 人人操人人操人人操人人操人人操人人人11.CM | 欧美亚洲一级在线观看| 淫色网综合| 私人尤物在线精品不卡| 毛片17S| 日韩成人私密一级精品av| 亚洲欲色9532548967一区| 777超碰| 黑操B| 97超碰人人模人人拍人人| 青青国产精品在线| 亚洲国产精品成人久久蜜臀| 日韩一999精品| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 日韩兔费看黄片| 97干在线看| 国产视频第二页| 国产高清免费不卡av| 国产人妻精品久久久一区二区三区| 超碰偷拍| 婷婷啪啪| 欧美网站免费| 国产馆| 男人的天堂2018东京热啪啪啪| 久久久久久加勒比| 淫荡少妇免费| 精品人妻一区春色| 草b在线| 色翁荡息又大又硬又粗又爽| 国产精品激情久久久久久久| 干美女人妻| 激情五月综合网| 蜜臀久久99精品久久久久| 青青草原综合久久大伊人精品| 在线免费观看高清无码视频| 97免费视频网| 欧美日韩国内不卡| 天天综合网网欲色| 天天看高清麻豆| 日本123区操B视频| 99久久精品国产系列| AV在线资源| 国产又色又爽又舒服的三级视频| 成人性生活高清视频在线播放| 大香蕉 222| 盗摄女人妻在线| 伊人麻豆传媒| 91五月天| 欧美久久九九| 欧美另类精品xxxx| 久久春色| 另类专区加勒比| 天天插天天干| 国产绿奴视频在线观看| 欧美日韩制服| 成人熟女区| 天堂九九九九九九九九九| 九九久久久| 五月天激情网站| www.高清无码诱惑一区.com| 激情无码日韩| 88在线一区二区三区| 国产suv精品一区二区四区999| 免费在线黄片视频| 粉嫩av在线| 国产中午字一暮区| 欧美激情一区二区| 吻戏激情性巴克| 日韩 欧美 另类 人妻| 欧美超碰在线| 97精品一区二区视频在线观看| 和协无码影院| 超碰精品在线| 97超碰磁| 亚洲一区二区三区久久 亚洲一区二区| 91快色色色色色| 少妇无码太爽| 激情小说图片亚洲首页| 少妇天堂| 91免费看中出视频| 国产熟女一区二区| 艹精品| 亚洲欧美精品一区天堂久久 | 国产精品视频自拍在线| 射综合网| 亚洲中文字幕av | 久久久久亚洲Aⅴ无码| 97超碰超碰| 欧美日韩久久精品爱爱| 亚洲精品97p| 欧美在线 亚洲| 亚洲情色在线| 激情亚洲天堂| 磁力99AV| 日韩AV熟女乱伦| 四虎884a| 成人久久久| 日韩内射视频| 国产成久久综合片| 激情小说在线视频| 啊啊啊好想要| 亚洲色图综合| 国产强奸乱伦第1页| 综合色好色| 欧美三四五区| 91大香蕉伊人| 日本高清一区二区在线| 污污汅18禁网站在线永久免费观看| 久久亚洲不卡一区二区三区| 91人妻Pr| 丁香五月性| 中亚av| 色999人与兽| 日韩精品高清资源在线| 97精品久久久久久久| 亚洲第一二区另类图| 欧美综合在线91| 色综合超碰超| 欧美瑟综合| 五十路熟女人妻一区二区在线观看| 人人妻人人澡人人爽人人精品浪潮| 日本不卡在线二区三区| 极品销魂美女一区二区| 色综合国产在线观看| 操操逼视频| 欧美另类综合久久| 日韩av乱伦| 97精品国产97久久久久久| 四虎 精品 WWW| 日韩三级在线观看mp4| 2017天天透天天通天天擦| 懂色av中文字幕| 久夜视频| 淫荡熟女乱伦网| 丁香婷婷啪啪| 极品内射| 午夜福利 成人 91| 一起草三级AV电影在线观看| 久久精品日韩| 99精品在线观看| 伦理第一页| www久久久| 国产黄色在线播放观看| 强免费黄色网址| 一区二区三区免费岛国片| 欧美黑人熟妇精品91| 人妻一区视频| 亚洲 自拍偷拍 欧美| 一级A啪啪啪啪| 欧美综合色站| 乱操9999| 蜜乳视频网站| 91久久久久久| 欧美韩国你懂得在线 | 亚洲精品视频在线播放| 大香蕉 222| 夜夜黄| 高清一区AV无码| 少妇一线天久久久久久| 午夜AV污污污| 久久亚洲国产成人| 日韩性爱高清免费视频| 欧美精品91| 精品一区二区三区麻豆| 亚洲一欧洲中文字幕在线 | 九久9精品| 欧美,日韩综合久久| 99热综合在线| 久久久久国色αv免费观看| 国产日韩在线播放av| 91丨国产丨白浆| 久久久久久人| 久草网站免费在线观看| 精产国品一区二三产品| 97视频免费在线观看| 97国产成人精品免费视频| 91草草草| 久久久亚洲Av| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 久久久工口| 97超碰巨乳| 成人线上超碰| 东京日日夜夜| 综合亚洲网| 大色综合网| 老女人碰碰在线碰碰视频| AV乱伦国产| 久久久九97| 精品无码少妇| 色婷婷丁香五月| 91欧美情色| 去干网最新版| 中文字幕一二三av| 亚洲精品美女久久久久久久久| 精品妇操一区二区三区| 人妻精品综合中文字幕在线 | 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 无遮挡一级毛片视频免费的| 日韩99999色| 黑人娇小av在线播放| 97九色人妻| 97在线视频观看| 蜜桃臀 后入 一区 二区 三区 在线| 日本506070| 欧美综合骚| 综合久久久久久久久91| 神马午夜久久久| 日韩av不卡在线看| 少妇内射www在线观看视频| 国产AV精久久| 我想要啊 啊 啊| 国产精品久久久久av| 78精品在线| 精品人妻1237| 免费观看性欧美一级| 骚女高跟AV在线| 日本精品成人无码| 91观看 国产白丝| 丰满人妻一区二区三区四| 1769成人国产精品视频| 青草香蕉网| 秋霞曰韩R级| 欧美九九九九九| 日日干夜夜操视频h| 操逼操逼视频操逼| 男人的天堂久久| 人人色人人射人人妻| 国产精品人妻熟女aⅴ| 久草老司机| 97中文天堂| 中国一级操逼视频| 男人的天堂99| 97色欧州| 日韩成人网址| 久久av无码| 久久精品操| 丰满少妇人妻久久久久久| 国产人伦a片信息免费片| 一卡二卡三卡| 国产偷仑| 久久,精品一二三| 欧美综合娱乐久久| 亚洲欧美伦综合| 18禁久极品美女久久哦哟呀!| 一区二区娱乐网站| 岛国1区2区3区在线观看| 日韩丨制服丨中文|在线| 黄色网址久久精品欧美喷水| 人人贴人人摸| www亚洲欧美| 少妇第一页| 超碰爽人妻熟女Av| 乱老女人一区二区视频| 秋霞一集毛片观看| 99热一区二区三区四区| 熟女一区二区三区| 国产剧情一区在线观看| 久热香蕉精品在线视频| 欧美欧美啪啪视频| 精品人妻久久久| 国产和美国毛片| 亚洲天堂另类小说男人| 五月丁香狠狠爱| 日本操逼视频导航| 免费成人在线观看91| 黄色工厂这里只有精品| 日本一久是| 亚洲、日韩、综合、另类| 亚洲二区精品在线观看| 日韩欧美午夜一区二区| 亚州欧美色图| 一本大道青青| 久9久9久9久9久9久9 | 岛国片在线播放| 91青青草| 亚洲欧美黄| 蜜臀99久久精品久久久久久| av东京热男人的天堂| 男人天堂站| 男人的天堂在线有码| www色婷婷| 日韩女模中文造逼| 日本性爱网址| 国产69精品久久久久99尤物| 中文字幕一区二区三区字幕| 人人弄人人摸| 国产精品免费久久久久久久久久| 亚洲欧美97| 亚洲熟妇A V黑人| 久久一区二区三区入口| 操我无码| 一牛一区二区三区久久| 久久av成人无码免费| 性爱Av免费| AAAAAAAAA黄片| 青青操少妇| 无码直播久久久| 最新av在线| 午夜毛片高清免费不卡| 97超碰色屌| 久久久久久中文版| 欧美色图成人网一区二区 | 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 性在久久久久久| 成人麻豆av电影网站| 亚洲一级性爱视频免费看| av日韩国产一区二区| av在线免费一区二区| 亚洲成a人在线观看久| 人人操,操人人| 国产精品99久久久www| 久99视频| 精精夜夜| 久久一二三四不卡 | 国产午夜精品在线观看| 中文字幕精品免费一区二区| 操操操五月天婷婷丁香影院| 秋霞成人一级在线观看| 日韩成人精品视频自拍| 99re久久| 91男女啊啊啊| 午夜精品久久久久久久99热影院 | 肉嘟嘟www视频在线观看高清| 欧美亚洲日本激情在线| 五月婷婷深深爱| 精品人妻一区二区三区-国产精品| 欧美熟妇操操视频| 激情情色五月天| 91亚洲综合在线| 翔田千里A片一区二区| 亚洲三区视频| 四色永久成人网站| 国产性感在线观看| 东京热大香焦| 欧亚日韩中文在线| 国产精品亚洲无码| 国内毛片无码一级毛片| 嗯~啊~快点 死我视频| 91丝袜在线视频| 无码精品啪啪啪一区二区三区三州| 亚洲一区二区麻豆影院| 97AV在线免费观看| 夜夜国产一区| 播播亚洲小说亚洲| 少妇六月天| 欧美黑人与女人91| 日韩一级特黄av毛片| 日韩无码a片| 五月天色图| 久久久久久裸体| 综合色好色| 人妻人人做人人澡人人爽欧美一区| 乱伦日本色图AⅤ| 亚洲。日韩。欧美| 香蕉色网| 国内偷拍精品一区二区| 日韩乱伦影音先锋| 天天日老熟妇| 中出人妻中文字幕91在线| 国产毛片片精品天天看视频| 操逼逼无码| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 97欧美超碰| 综合欧美日本三级| 久久綜合很很很| 亚洲在线欧美| 最新国产精品久久精品| 啊啊啊啊啊好大好舒服想要| 欧美色图第一页| 97国产成人精品免费视频| 午夜欧美神马久久久久| 欧美性天天| 99色在线视频| 舔人妻中文免费视频| 亚洲av综合色区图片亚洲| 大稥蕉免费视频这里只有精品| 国产少妇内射| 日韩在线一区二区| 欧美亚洲丝袜美女电影| 久久精品无码专区| 欧美很很操视频| 夜夜免费视频| 国产理论视频在线播放| 欧美色66| 操逼视频国产无套| 中文字幕一区二区三区蜜臀| 中文字幕激情小说| 亚洲欧美经典一区二区| 肉丝中文无码高清| 亚洲欧美在线观看免费| 精品网站99999| 亚洲精品久久久久久久久豆丁网| 成人无码在线超碰网| 欧美熟女妇同| 少妇啪啪自拍| 新视频sss国产| 人妻精品一区二区| 熟妇乱伦一区二区| 欧美综合自拍成人自拍第二十页| 天天综合站| 在线人人人人人人精品超| 日韩av情韩国爱禁区av一区二区| 午夜激情成人在线观看| 亚洲情色在线| 亚欧成人综合影院| 久久一本大香蕉| 97精品熟女少妇一区 | 欧美亚洲特P| av九九| 五月天伊人网| 色穴精品| 国模无码人体一区二区三| 99在线观看无大码| 久久精品国产亚洲AV无码做| 99国内熟女露脸视频| 秋霞曰韩R级| 日韩一级二级三级| 久都青青视频| 成人97人人超碰人人| 好屌色综合| 欧美一区二区三区日韩| 九九九999久久久网站| 99色悠悠| 三级AV入口| 免费亚洲国产精品久久一区| 色欲久久综合| 99色综合| 天天激色| 中文字幕1区2区| 国内精品久9| 91婷婷| 又粗又长又大国产不卡| 日han少妇无码| 亚洲成人无码影院| 久久久亚洲熟妇资源| 天天综合精品| 中文字幕丝袜国产第一页不卡| 欧美日韩97在线| 日韩亚洲美女一区久久| 亚洲最大成人a毛毛片| 四虎av在线| 97人人爱人人做人人乐| 国产精品无码av在线| 上床啊啊啊| 97人人爱人人做人人乐| 天天操天天舔| 欧美精品69性爱| 久久 久久国内精品亚洲| 少妇超碰在线| 久久国产免费激情视频| 色噜噜日韩精品| 97 国产一区| 91操人视频| 国产成年女人免费视频播放a| 变态另类专区| 久干网| 色五月婷婷麻豆在| 国产精品麻豆视频网站| 中文字幕99999| 好爽要喷了| 日本一二三高清| 天天插天天操| 午夜AV人气不卡| 91操熟女| 免看60秒涩涩视频| 97亚洲资源| 97久久精品亚洲| 国产黄色av大片网站| 狠狠婷婷亚洲中文综合久久| 亚洲精品蜜桃久久久| 白丝少妇一区二区| 欧美在线官网| 国产亚洲在线观看| 精品在线观看视频在线| 99re免费视频精品全部| 中文字幕三四五区| 骚熟女AV网| 国产第11页| 97干天天| 人妻精品4K4K4K4K4| 人妻少妇久久久| 国产精品久久久三级无码| 久久美女国产| 五十路六十路素人熟女| 欧美色狠| 超碰97人妻在线| 91亚洲欧洲| 欧美综合色图网| 999久久久久久久久| 国产精品色约约| 国产热av| 天天日美女的B| 色哟哟1区2区| 天天操熟妇| 婷婷丁香五月综合| 亚洲 欧美 色图| 97视频网站在线观看| 嗯嗯不要视频| 亚洲综合五月天| 久久双插| 亚洲色图片区| 97超碰精品成| 欧洲大香蕉| 青青草国产一区二区三区| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 99久久综合| 亚洲高清无码免费观看视频| 欧美,日韩,亚洲视频| 看日韩操逼| 色色色色网站| 超碰AV在线| 色综合天天| A V少妇特黄三级| 亚洲精品久久久久久久久豆丁网| www四虎| 欧美性暴力猛交XXXX| 黑人与人妻| 日韩无码服务区|