国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

大模型推理優(yōu)化:Prefill 與 Decode 兩階段瓶頸及調(diào)優(yōu)實(shí)踐

大模型推理優(yōu)化:Prefill 與 Decode 兩階段瓶頸及調(diào)優(yōu)實(shí)踐 你大概見過這種曲線服務(wù)剛上線時(shí)首 token 延遲兩百毫秒上下看著挺體面并發(fā)一上來這個(gè)數(shù)字開始抖抖到兩秒、五秒可每 token 的輸出延遲卻穩(wěn)得很四五十毫秒沒怎么變。運(yùn)維查了網(wǎng)卡、查了顯存占用、查了卡上的利用率指標(biāo)都不難看但用戶就是在反饋卡。遇到這種情況我一般先不碰硬件也不急著換推理框架而是把一次請(qǐng)求拆成兩個(gè)性質(zhì)完全不同的階段來看——**Prefill預(yù)填充**和Decode解碼。這兩個(gè)詞在大模型推理里出現(xiàn)的頻率極高但真正搞清楚它們?cè)谟?jì)算上差在哪、為什么要用兩套策略去伺候的人并不多。Prefill 是一次性把整段 prompt 塞進(jìn)網(wǎng)絡(luò)一次前向算完所有 token 并行過模型Decode 是每步只吐一個(gè) token一步一循環(huán)直到遇到結(jié)束符。前者是典型的算力密集型后者是典型的訪存密集型兩者的瓶頸、優(yōu)化手段、調(diào)參方向幾乎是相反的。你把它們當(dāng)成一件事來調(diào)用同一套批處理策略、同一個(gè)顯存預(yù)算、同一種量化方案結(jié)果必然是兩頭不討好。這篇內(nèi)容就是把這層窗戶紙捅破從矩陣乘的形態(tài)講到顯存帶寬的賬從 KV Cache 怎么長出來講到分塊預(yù)填充和 PD 分離怎么落地中間插一些我自己踩過的坑和可以直接抄的壓測(cè)腳本。不需要你先懂 CUDA 算子只要你會(huì)寫幾行 Python、跑過模型服務(wù)就能順著往下讀如果你已經(jīng)在做推理部署第 4、5 部分應(yīng)該能直接對(duì)上你監(jiān)控里的那些異常曲線。1. 把兩個(gè)階段掰開看一次請(qǐng)求到底發(fā)生了什么1.1 從輸入到第一個(gè) tokenPrefill 到底干了什么用戶發(fā)來一句話比如三百個(gè) token推理引擎收到的是一整個(gè) token 序列而不是一個(gè)一個(gè)喂進(jìn)去。Prefill 做的事情就是把這個(gè)長度 300 的序列當(dāng)成一個(gè)整體走一遍完整的前向embedding 查表得到 300 個(gè)向量每一層做自注意力、做前饋網(wǎng)絡(luò)一路往上最后只取最后一個(gè)位置的輸出去算下一個(gè) token 的概率分布。注意這里的關(guān)鍵——300 個(gè)位置全部參與了計(jì)算但它們之間不是獨(dú)立的自注意力里的每個(gè)位置都要看到它前面所有位置的信息所以這一層的計(jì)算量隨序列長度是平方級(jí)增長的。用生活化的說法Prefill 像是一次性把一整篇文章讀進(jìn)去理解讀的時(shí)候前后文互相對(duì)照讀完整篇才寫出第一個(gè)字。這個(gè)過程里模型權(quán)重只需要被讀取一遍但是要參與大量的乘加運(yùn)算所以它對(duì)算力的胃口極大對(duì)顯存帶寬反而不那么敏感。這也是為什么在 Prefill 階段你會(huì)看到加速卡的算力利用率SM 占用、Tensor Core 活躍度能跑到比較高的水位而顯存控制器沒那么忙。還有一點(diǎn)容易被忽略Prefill 階段要一次性寫入全量 KV Cache。300 個(gè) token每一層都要存下它們的 Key 和 Value這些數(shù)據(jù)后面 Decode 階段要反復(fù)讀取所以 Prefill 不只是算還是一次大規(guī)模的顯存寫操作。這個(gè)寫的量級(jí)我在 2.4 節(jié)會(huì)算給你看先記住這個(gè)動(dòng)作的存在。1.2 從第二個(gè) token 開始Decode 為什么是一個(gè)繞不開的循環(huán)第一個(gè) token 吐出來之后流程就變了。第二步的輸入只有一個(gè) token上一步生成的那個(gè)但它要跟前面 300 個(gè) token 的 KV 拼在一起做注意力。這里就體現(xiàn)出 KV Cache 的價(jià)值了前面 300 個(gè) token 的 K 和 V 在 Prefill 階段已經(jīng)算好存下來了Decode 每一步只需要算當(dāng)前這一個(gè) token 的 Q、K、V然后把新 K、V 追加到緩存尾部再用當(dāng)前 Q 去跟全部 301 個(gè)位置做注意力。如果沒有 KV Cache每一步都要把全部歷史重新算一遍代價(jià)會(huì)大到?jīng)]法用。關(guān)鍵是這個(gè)動(dòng)作要重復(fù)幾百上千次。每生成一個(gè) token你就要把整個(gè)模型的權(quán)重從頭到尾讀一遍但在當(dāng)前這一步里真正參與計(jì)算的新 token 只有一個(gè)。權(quán)重讀了幾十 GB算的卻只是一次矩陣乘向量這就是 Decode 階段的根本矛盾——算力大量閑置帶寬被榨干。你可以把它想象成每次只為了查一個(gè)字就把整本字典從頭翻一遍。字典的內(nèi)容權(quán)重沒有變翻的動(dòng)作顯存讀取卻是實(shí)打?qū)嵉某杀尽?.3 兩個(gè)階段的本質(zhì)差異用一張表說清楚把上面的描述收斂成對(duì)照表后面所有的優(yōu)化手段幾乎都能從這張表里推出來維度Prefill預(yù)填充Decode解碼輸入形態(tài)長度 T 的完整序列單 token每步計(jì)算量與 T 成正比線性層 與 T2 成正比注意力每步固定與歷史長度成正比注意力部分權(quán)重讀取一次前向讀一遍每生成一個(gè) token 讀一遍核心瓶頸算力compute-bound顯存帶寬memory-bound矩陣形態(tài)大 GEMM瘦高矩陣乘胖矩陣GEMV 退化矩陣乘向量KV Cache批量寫入逐步追加、全量讀取批處理收益中等主要攤薄權(quán)重讀取極高權(quán)重讀取被 batch 攤薄優(yōu)化重點(diǎn)提高算力利用率、減少無效計(jì)算提高帶寬利用率、增大有效 batch量化敏感度中注意激活值精度高權(quán)重位寬直接決定速度這張表建議你貼在工位上。后面遇到任何優(yōu)化方案先問一句它作用在哪一列答案清楚了方案值不值得試也就清楚了。比如有人跟你說把權(quán)重量化到 4bit 能提速一倍你心里應(yīng)該有數(shù)這是沖著右列去的對(duì) Prefill 的收益非常有限甚至可能因?yàn)榉戳炕_銷反而變慢。2. 算力賬本為什么 Prefill 吃算力、Decode 吃帶寬2.1 算術(shù)強(qiáng)度一個(gè)能解釋大部分現(xiàn)象的比值要判斷一段計(jì)算是吃算力還是吃帶寬標(biāo)準(zhǔn)工具是算術(shù)強(qiáng)度Arithmetic Intensity定義很簡單每從顯存里搬一個(gè)字節(jié)的數(shù)據(jù)能順帶做多少次浮點(diǎn)運(yùn)算。單位是 FLOP/Byte。拿它去和硬件的脊點(diǎn)Ridge Point比脊點(diǎn)等于硬件峰值算力除以峰值帶寬超過脊點(diǎn)的計(jì)算就是算力受限低于脊點(diǎn)的就是帶寬受限。拿一塊常見的數(shù)據(jù)中心加速卡舉例FP16 稠密算力按 300 TFLOPS 估顯存帶寬按 2000 GB/s 估脊點(diǎn)大約是 150 FLOP/Byte。意思是每搬 1 個(gè)字節(jié)的數(shù)據(jù)你得做夠 150 次浮點(diǎn)運(yùn)算才算沒浪費(fèi)這塊卡的算力?,F(xiàn)在看 Prefill。假設(shè) 7B 參數(shù)模型輸入 2048 個(gè) tokenFP16。權(quán)重總量約 13.4 GB只讀一遍計(jì)算量按經(jīng)驗(yàn)公式 2 × 參數(shù)量 × token 數(shù)估2 × 6.7e9 × 2048 ≈ 2.74e13 FLOPs也就是 27.4 TFLOP。算術(shù)強(qiáng)度 2.74e13 / 1.34e10 ≈ 2045 FLOP/Byte。遠(yuǎn)遠(yuǎn)高于 150妥妥的算力受限。所以 Prefill 該做的事是把算力榨干而不是省顯存讀取。再看 Decodebatch 1。每生成一個(gè) token權(quán)重還是讀 13.4 GB計(jì)算量只有 2 × 6.7e9 ≈ 1.34e10 FLOPs。算術(shù)強(qiáng)度 1.34e10 / 1.34e10 1 FLOP/Byte。連脊點(diǎn)的百分之一都不到。這就是為什么單請(qǐng)求跑 Decode 的時(shí)候你看顯卡的算力利用率會(huì)低得離譜而顯存帶寬可能已經(jīng)跑滿。這組數(shù)字帶來的直覺是Decode 階段要提升吞吐唯一的出路是把 batch 做大讓同一份權(quán)重讀取服務(wù)多個(gè)請(qǐng)求把算術(shù)強(qiáng)度拉回來。batch 16 時(shí)算術(shù)強(qiáng)度能到 16雖然離脊點(diǎn)還遠(yuǎn)但吞吐已經(jīng)是 batch 1 的十幾倍了。2.2 Prefill 的 FLOPs 拆解線性層和注意力各占多少很多人以為 Prefill 的耗時(shí)大頭永遠(yuǎn)是注意力這個(gè)認(rèn)知在短上下文下是錯(cuò)的在長上下文下才對(duì)。我們把 2.74 TFLOP 拆開看。線性層部分QKV 投影、輸出投影、FFN 的兩層總共接近 2 × 參數(shù)量 × T就是上面算的 27.4 TFLOP 里的大頭。注意力部分單獨(dú)算QK^T 的乘加是 2 × T2 × d加權(quán)求和 AV 也是 2 × T2 × d兩層注意力矩陣乘加起來 4 × T2 × d再乘層數(shù) L。代入 T 2048、d 4096、L 324 × 20482 × 4096 × 32 ≈ 2.2e12也就是 2.2 TFLOP。占比約 8%。但注意力是平方增長的線性層是線性增長的。把 T 拉到 8192注意力部分乘 16 變成 35 TFLOP線性層只乘 4 變成 110 TFLOP注意力占比升到 24%。再拉到 32768注意力變成 560 TFLOP線性層 440 TFLOP注意力占比過半。這份賬解釋了為什么同一個(gè)服務(wù)短 prompt 場(chǎng)景跑得好好的一接長文檔場(chǎng)景就崩。不是你的框架不行是計(jì)算結(jié)構(gòu)變了原來可以忽略的那一項(xiàng)變成主項(xiàng)了。對(duì)應(yīng)的優(yōu)化手段也就不一樣短上下文該優(yōu)化 GEMM 的分塊和融合長上下文得先想辦法把注意力的平方項(xiàng)壓下去。2.3 Decode 的訪存賬本單卡吞吐的理論上限D(zhuǎn)ecode 每一步要讀什么權(quán)重 13.4 GB加上當(dāng)前上下文的 KV Cache。上下文 2048 時(shí)KV Cache 大小在 1 GB 量級(jí)算法見下節(jié)總計(jì)約 14.4 GB。顯存帶寬 2000 GB/s理論耗時(shí) 14.4 / 2000 ≈ 7.2 毫秒換算成單請(qǐng)求速度約 139 token/s。這是理論天花板實(shí)際因?yàn)榱魉€氣泡、kernel 啟動(dòng)開銷、帶寬利用率達(dá)不到 100%通常是這個(gè)數(shù)字的三分之一到二分之一也就是 40 到 70 token/s。你線上看到的單請(qǐng)求解碼速度基本就在這個(gè)區(qū)間。再看 batch 16。權(quán)重還是讀 13.4 GB但 KV 變成 16 × 1 GB 16 GB總計(jì) 29.4 GB耗時(shí) 14.7 毫秒。注意這 14.7 毫秒里16 個(gè)請(qǐng)求各自都推進(jìn)了一個(gè) token所以吞吐是 16 / 0.0147 ≈ 1088 token/s是單請(qǐng)求的 7.8 倍。這就是連續(xù)批處理的價(jià)值所在。順便說個(gè)反直覺的現(xiàn)象batch 增大時(shí)單個(gè)請(qǐng)求的 TPOT每 token 延遲實(shí)際上是變差的。batch 1 時(shí) 7.2 msbatch 16 時(shí)每個(gè)請(qǐng)求還是要等 14.7 ms 才拿到自己的那個(gè) token。吞吐和延遲在 Decode 階段是明確的 trade-off不是雙贏。這一點(diǎn)在 4.1 節(jié)還要展開。2.4 KV Cache 的顯存賬被大多數(shù)人低估的那部分KV Cache 到底多大公式是每 token 每層存一對(duì) K 和 V每個(gè)張量的元素?cái)?shù)是 n_kv_heads × head_dim數(shù)據(jù)類型 FP16 占 2 字節(jié)。所以每 token 大小 2K 和 V× n_kv_heads × head_dim × 2 字節(jié) × 層數(shù)以 32 層、32 個(gè) KV 頭、head_dim 128 的模型為例2 × 32 × 128 × 2 × 32 524288 字節(jié)正好 512 KB/token。2048 個(gè) token 就是 1 GB8192 個(gè) token 就是 4 GB32768 token 就是 16 GB已經(jīng)超過模型權(quán)重本身了。如果模型用了分組查詢注意力GQA把 KV 頭從 32 組減到 8 組每 token 直接降到 128 KB同樣的顯存能撐四倍上下文。這是現(xiàn)在主流模型幾乎都上 GQA 的核心原因省的不是算力是 KV Cache。做容量規(guī)劃時(shí)可以這樣估一塊 80 GB 顯存的卡模型權(quán)重 13.4 GB留給 KV 的按 60 GB 算還要留激活值和臨時(shí)緩沖區(qū)如果每 token 128 KB能裝下約 46 萬個(gè) token 的總量。這個(gè)總量是所有并發(fā)請(qǐng)求共享的8 個(gè)并發(fā)各 8192 上下文就用掉 65 萬個(gè) token直接爆。這就是為什么長上下文并發(fā)一高就 OOM而單純把 batch 調(diào)小只是把問題往后推。3. 算子視角從 GEMM 到 GEMV 的性能落差3.1 Prefill 階段是大矩陣乘的堆疊Prefill 里最主要的計(jì)算形態(tài)是 GEMM通用矩陣乘。以 FFN 層為例輸入是一個(gè) [T, d] 的矩陣權(quán)重是 [d, 4d] 的矩陣輸出 [T, 4d]。T 動(dòng)輒幾百上千兩個(gè)維度都足夠大GPU 的 Tensor Core 可以做很好的分塊數(shù)據(jù)復(fù)用率高算力能跑到峰值的相當(dāng)比例。QKV 投影同理輸入 [T, d] 乘權(quán)重 [d, 3d]也是大 GEMM。這類計(jì)算的優(yōu)化方向很成熟算子融合把 QKV 三個(gè)投影合成一個(gè)、分塊大小調(diào)優(yōu)、用更寬的累加精度。你去看推理框架的日志Prefill 階段耗時(shí)基本都花在少數(shù)幾個(gè)大 kernel 上每個(gè) kernel 的耗時(shí)是可以預(yù)測(cè)的優(yōu)化空間主要在于減少 kernel 數(shù)量和減少中間結(jié)果的顯存往返。3.2 Decode 階段退化成矩陣乘向量Decode 的輸入只有一個(gè) token也就是 [1, d] 的向量去乘 [d, 4d] 的權(quán)重矩陣。這在形態(tài)上叫 GEMV矩陣乘向量。問題是 GEMV 的訪存模式極不友好權(quán)重的每一行只用一次沒有任何復(fù)用相當(dāng)于純粹把權(quán)重從顯存搬到計(jì)算單元搬完就扔。這在 GPU 上是最浪費(fèi)的場(chǎng)景之一。這也是為什么很多框架在 Decode 階段會(huì)做批量化 GEMV把 batch 個(gè)請(qǐng)求的向量拼成 [B, d]退化成一個(gè)小 GEMM。B 越大越接近 GEMM 的效率。但 B 受限于顯存和延遲要求實(shí)際很難做大通常在 8 到 64 之間徘徊。還有一個(gè)經(jīng)常被忽視的成本kernel 啟動(dòng)開銷。Decode 每生成一個(gè) token都要走完全部層幾十個(gè) kernel 挨個(gè)啟動(dòng)。如果每個(gè) kernel 只有幾十微秒啟動(dòng)開銷和調(diào)度開銷的占比就很可觀了。所以 Decode 階段特別吃算子融合和CUDA Graph 捕獲這類手段把整段前向固化成一張圖一次性提交能省掉大量 CPU 側(cè)的調(diào)度開銷。這一點(diǎn)在 batch 小的時(shí)候尤其明顯我自己實(shí)測(cè)過只加圖捕獲這一項(xiàng)小 batch 場(chǎng)景的 TPOT 能降一到兩成。3.3 注意力部分兩種截然不同的數(shù)據(jù)流動(dòng)Prefill 的注意力是一整塊下三角的因果掩碼矩陣。T 個(gè) query 對(duì) T 個(gè) key 做注意力掩碼保證每個(gè)位置只能看到自己和前面。這個(gè)形態(tài)適合做分塊計(jì)算把一個(gè) T×T 的大矩陣切成小塊只算下三角部分跳過被掩碼的上三角。分塊注意力的核心思路就是避免把整個(gè) T×T 的注意力分?jǐn)?shù)矩陣物化到顯存里——那個(gè)矩陣在 T 8192 時(shí)是 81922 × 2 字節(jié) ≈ 128 MB 每頭每層物化出來直接爆。Decode 的注意力則簡單得多當(dāng)前這一個(gè) query對(duì)長度為 L 的全部 key 做注意力。分?jǐn)?shù)向量長度是 L不涉及平方項(xiàng)。但它是純讀取操作——要把 KV Cache 里 L 個(gè)位置的數(shù)據(jù)全讀一遍。上下文 2048 時(shí)讀 1 GB耗時(shí) 0.5 ms看著不多上下文 32768 時(shí)讀 16 GB耗時(shí) 8 ms已經(jīng)超過讀權(quán)重的 6.7 ms 了。這時(shí)候 Decode 的瓶頸從權(quán)重帶寬變成了KV 帶寬。這就是長上下文解碼慢的底層原因不是模型變復(fù)雜了是每步要搬的數(shù)據(jù)變多了。對(duì)應(yīng)的手段有 GQA直接減少 KV 體積、KV 量化FP16 降到 INT8體積減半、稀疏注意力只讀部分 KV、以及滑動(dòng)窗口限制窗口大小老 KV 直接丟棄。每一樣都是在拿精度或能力換速度沒有免費(fèi)的午餐。3.4 分頁式 KV 管理與前綴復(fù)用傳統(tǒng)做法是給每個(gè)請(qǐng)求預(yù)分配一塊連續(xù)的顯存放 KV長度按最大可能值留實(shí)際用不完也不給別人。這會(huì)造成嚴(yán)重的內(nèi)部碎片——一個(gè)請(qǐng)求只要 200 token你按 8192 預(yù)留剩下 7992 的空位全浪費(fèi)了。當(dāng)并發(fā)上來顯存被一堆半空的塊占滿明明還有余量卻接不了新請(qǐng)求。分頁式管理借鑒了操作系統(tǒng)的虛擬內(nèi)存思路把 KV Cache 切成固定大小的塊比如每塊存 16 個(gè) token 的 KV按需分配不要求物理連續(xù)用一張映射表記錄邏輯位置到物理塊的對(duì)應(yīng)關(guān)系。好處有三個(gè)碎片幾乎消失顯存利用率能到 90% 以上請(qǐng)求長度可以動(dòng)態(tài)增長不用預(yù)留最重要的是塊可以共享。塊共享這點(diǎn)衍生出一個(gè)非常實(shí)用的功能前綴緩存。很多線上場(chǎng)景的 prompt 有大量相同前綴比如固定的系統(tǒng)提示詞、固定的知識(shí)庫文檔頭。這些前綴算出來的 KV 完全一樣沒必要每個(gè)請(qǐng)求都重算一遍。分頁管理下只要把相同前綴的塊標(biāo)成共享后續(xù)請(qǐng)求直接跳過這部分 Prefill只算新增的部分。我在一個(gè)客服類場(chǎng)景里試過系統(tǒng)提示詞加固定說明有 1500 token命中前綴緩存后首 token 延遲從 600 ms 降到 180 ms效果立竿見影。注意前綴緩存的前提是前綴逐 token 完全一致差一個(gè)字符都會(huì)失效。實(shí)際落地時(shí)要把動(dòng)態(tài)內(nèi)容時(shí)間戳、用戶名挪到 prompt 末尾否則命中率會(huì)低得讓你懷疑人生。4. 工程實(shí)踐把兩階段調(diào)順手的幾個(gè)關(guān)鍵動(dòng)作4.1 首 token 延遲與單 token 延遲的取舍衡量推理服務(wù)質(zhì)量兩個(gè)核心指標(biāo)必須分開看TTFTTime To First Token首 token 延遲主要由 Prefill 決定加上排隊(duì)時(shí)間TPOTTime Per Output Token每 token 延遲主要由 Decode 決定加上調(diào)度間隔。用戶體感上TTFT 決定點(diǎn)完之后多久有反應(yīng)TPOT 決定吐字流不流暢。這兩個(gè)指標(biāo)是互相打架的。你真要壓低 TTFT就得讓 Prefill 優(yōu)先跑把 Decode 請(qǐng)求掛起等著Preill 一跑就是幾十上百毫秒這期間所有正在解碼的請(qǐng)求全都停頓用戶看到的就是打字機(jī)卡住。反過來你為了保證 TPOT 平穩(wěn)就得限制 Prefill 的頻率和批量TTFT 自然上去。我的經(jīng)驗(yàn)是做分檔交互式場(chǎng)景聊天、助手優(yōu)先保 TPOT把 Prefill 切碎混進(jìn) Decode 的批里TTFT 允許 300 到 800 ms批處理場(chǎng)景文檔摘要、批量翻譯優(yōu)先保吞吐Prefill 可以大批量跑滿TTFT 到幾秒也無所謂。這兩類流量最好在入口就做好路由別混在一個(gè)池子里否則兩邊的指標(biāo)都會(huì)難看。4.2 分塊預(yù)填充讓長 prompt 不再堵車分塊預(yù)填充Chunked Prefill是我認(rèn)為性價(jià)比最高的一個(gè)改動(dòng)。做法很簡單把一個(gè)長 prompt 的 Prefill 拆成若干塊比如每塊 512 個(gè) token然后每一輪調(diào)度時(shí)把一塊 Prefill 和當(dāng)前所有 Decode 請(qǐng)求拼成一個(gè)混合批一起跑一次前向。這樣做的效果是把原來一次獨(dú)占式的大 Prefill變成多次小塊 Prefill代價(jià)是 TTFT 稍微變長因?yàn)榉至藥纵喪找媸?Decode 請(qǐng)求幾乎感受不到停頓TPOT 曲線會(huì)變得平滑。對(duì)于那些既要處理長文檔又要同時(shí)服務(wù)多個(gè)短對(duì)話的服務(wù)這個(gè)改動(dòng)能直接把尾延遲壓下去一大截。參數(shù)選擇上有講究塊太小調(diào)度次數(shù)變多每次的固定開銷占比上升整體吞吐下降塊太大Decode 被擠占的時(shí)間變長TPOT 抖動(dòng)回來了。我的經(jīng)驗(yàn)是從 512 開始試觀察 TPOT 的 P99 和整體吞吐如果 P99 抖得厲害就往下調(diào)到 256如果吞吐掉得多就往上調(diào)到 1024。這個(gè)值和硬件、模型大小強(qiáng)相關(guān)沒有一個(gè)通用最優(yōu)解。4.3 連續(xù)批處理與顯存水位控制連續(xù)批處理Continuous Batching解決的是一個(gè)批里最快的請(qǐng)求要等最慢的這個(gè)浪費(fèi)問題。傳統(tǒng)靜態(tài)批處理一批里 8 個(gè)請(qǐng)求7 個(gè)已經(jīng)生成完了在等第 8 個(gè)這 7 個(gè)占著顯存不干活。連續(xù)批處理的做法是每生成一步就檢查一次誰結(jié)束了立刻踢出去空出來的位置馬上塞新請(qǐng)求進(jìn)來。這個(gè)機(jī)制對(duì) Decode 階段意義巨大因?yàn)?Decode 的每一步是一個(gè)天然的調(diào)度點(diǎn)。但要注意一個(gè)細(xì)節(jié)新請(qǐng)求進(jìn)來通常先要跑 Prefill如果它一進(jìn)來就獨(dú)占正在解碼的請(qǐng)求又要停。所以連續(xù)批處理必須和分塊預(yù)填充配合使用否則等于把堵車點(diǎn)從入口挪到了中途。顯存水位控制是配套的另一個(gè)動(dòng)作。引擎一般會(huì)設(shè)一個(gè)閾值比如顯存占用的 90%超過就拒絕新請(qǐng)求或者排隊(duì)。這個(gè)閾值不能設(shè)太滿因?yàn)?Prefill 的激活值峰值比 Decode 高很多——處理一個(gè) 8192 token 的 Prefill中間激活值可能要吃幾 GB如果你按 Decode 的用量把顯存占到 95%一個(gè)長 prompt 進(jìn)來直接 OOM。我一般留 10% 到 15% 的余量并且對(duì)超過某個(gè)長度的 prompt 單獨(dú)做限流。4.4 量化與推測(cè)解碼分別作用在哪一段量化怎么影響這兩個(gè)階段值得單獨(dú)說因?yàn)楹芏嗳肆炕臧l(fā)現(xiàn)沒提速以為是量化沒用其實(shí)是作用錯(cuò)了地方。權(quán)重量化比如 4bit、8bit 只量化權(quán)重激活值還是 FP16主要收益在 Decode。因?yàn)?Decode 是帶寬受限權(quán)重從 16bit 降到 8bit讀取量直接減半速度理論上接近翻倍實(shí)測(cè)常見 1.4 到 1.8 倍。而 Prefill 是算力受限權(quán)重量化省下的帶寬它用不上反而要額外做反量化可能還慢一點(diǎn)。權(quán)重加激活全量化W8A8才有可能同時(shí)惠及 Prefill因?yàn)榧せ钜沧兂傻途群缶仃嚦丝梢杂玫途鹊?Tensor Core算力翻倍。但這條路對(duì)精度的影響要仔細(xì)評(píng)估特別是激活值的離群點(diǎn)問題很多模型直接上 W8A8 會(huì)掉點(diǎn)得厲害需要配合平滑或裁剪手段。推測(cè)解碼Speculative Decoding是另一個(gè)思路用一個(gè)小模型快速草擬幾個(gè) token再用大模型一次性并行驗(yàn)證。它本質(zhì)上是把 Decode 的多個(gè)串行步驟轉(zhuǎn)化成一次 Prefill 形態(tài)的并行驗(yàn)證——因?yàn)轵?yàn)證階段可以把 k 個(gè)候選 token 當(dāng)成一個(gè)長度為 k 的序列一次性過模型這正好是 Prefill 的形態(tài)。所以推測(cè)解碼特別適合 Decode 帶寬打滿、算力閑置的場(chǎng)景能把閑置的算力利用起來。代價(jià)是要多一份小模型的權(quán)重顯存并且在草稿命中率低的時(shí)候收益歸零。4.5 一套可復(fù)現(xiàn)的壓測(cè)方法調(diào)參不能靠感覺得有一套能量化 TTFT 和 TPOT 的壓測(cè)。下面這段是我常用的骨架思路是流式接收、記錄首塊到達(dá)時(shí)間和總耗時(shí)然后取中位數(shù)和 P99 看穩(wěn)定性import time import statistics def bench_one(client, prompt, max_new_tokens128): t0 time.perf_counter() ttft None n_tokens 0 for chunk in client.stream(prompt, max_tokensmax_new_tokens): now time.perf_counter() if ttft is None: ttft now - t0 # 首塊到達(dá) n_tokens 1 total time.perf_counter() - t0 # 減去 TTFT 得到純解碼耗時(shí)再除以生成的 token 數(shù) tpot (total - ttft) / max(n_tokens - 1, 1) return ttft, tpot def bench(client, prompt, runs30): ttfts, tpots [], [] for _ in range(runs): a, b bench_one(client, prompt) ttfts.append(a) tpots.append(b) ttfts.sort(); tpots.sort() p99 lambda xs: xs[int(len(xs) * 0.99) - 1] return { ttft_median: statistics.median(ttfts), ttft_p99: p99(ttfts), tpot_median: statistics.median(tpots), tpot_p99: p99(tpots), }壓測(cè)時(shí)有幾個(gè)細(xì)節(jié)必須控制住否則數(shù)據(jù)沒有可比性。第一固定輸入長度和輸出長度別讓模型自由發(fā)揮不然每次生成的 token 數(shù)不同TPOT 沒法比。第二并發(fā)梯度測(cè)試從 1 并發(fā)測(cè)到目標(biāo)并發(fā)每一檔都記錄你會(huì)看到一條清晰的曲線并發(fā)上升吞吐先漲后平TTFT 和 TPOT 單調(diào)上升拐點(diǎn)就是這套配置的合理水位。第三區(qū)分冷啟動(dòng)和熱態(tài)第一次請(qǐng)求要加載權(quán)重、要編譯圖數(shù)據(jù)不能用。還有一點(diǎn)壓測(cè)客戶端本身別成為瓶頸。Python 的同步 HTTP 客戶端在高并發(fā)下會(huì)被 GIL 和連接管理拖垮測(cè)出來的延遲里有一大半是客戶端自己的開銷。并發(fā)超過幾十就要用異步客戶端或者多進(jìn)程壓我吃過這個(gè)虧一度以為服務(wù)端有問題查了兩天才發(fā)現(xiàn)是壓測(cè)腳本自己在排隊(duì)。5. 問題排查實(shí)錄那些監(jiān)控看不出原因的卡頓5.1 癥狀速查表線上一旦出現(xiàn)延遲異常先對(duì)照這張表定位能省掉大量瞎猜的時(shí)間癥狀大概率原因優(yōu)先檢查項(xiàng)TTFT 高但 TPOT 正常Prefill 排隊(duì)、批太大、前綴緩存沒命中排隊(duì)深度、Prefill 批大小、緩存命中率TTFT 正常但 TPOT 抖動(dòng)Prefill 搶占、塊大小設(shè)置不當(dāng)分塊預(yù)填充是否開啟、塊大小TTFT 和 TPOT 同時(shí)劣化顯存接近上限、觸發(fā)換頁或拒絕顯存水位、KV 塊分配失敗率長 prompt 直接超時(shí)激活值峰值 OOM、單請(qǐng)求限流最大輸入長度限制、顯存余量并發(fā)上不去但顯存沒滿KV 碎片、塊分配器配置過小塊大小、可用塊數(shù)量量化后吞吐沒變化量化只作用在權(quán)重瓶頸在算力側(cè)是 Prefill 還是 Decode 慢單請(qǐng)求快、多請(qǐng)求慢批處理未生效或 batch 上限太低連續(xù)批處理開關(guān)、最大批大小首字很快但中途卡住KV 緩存被回收、請(qǐng)求被搶占重算搶占策略、優(yōu)先級(jí)配置這張表不是窮舉但覆蓋了我遇到過的大部分情況。用法是從左列找最像的然后按右列逐項(xiàng)排除通常兩三輪就能定位。5.2 幾個(gè)反直覺的坑第一個(gè)坑加大 batch 不一定提升吞吐。很多人看到吞吐不夠就把最大批大小往大了調(diào)結(jié)果發(fā)現(xiàn)吞吐反而降了。原因是 batch 大到一定程度后KV Cache 的讀取量超過了權(quán)重讀取量邊際收益遞減更糟的是顯存接近上限塊分配失敗率上升觸發(fā)請(qǐng)求搶占和重算實(shí)際干了雙份活。我一般的做法是找到那條吞吐曲線的平臺(tái)段停在平臺(tái)的 80% 位置留出余量應(yīng)對(duì)突發(fā)。第二個(gè)坑Prefill 的耗時(shí)不是線性的。有人按每 token 均攤?cè)ス浪阌X得 4096 token 的 prompt 應(yīng)該是 2048 的兩倍耗時(shí)。實(shí)際不是因?yàn)樽⒁饬Φ钠椒巾?xiàng)在長上下文下占比上升4096 的 Prefill 耗時(shí)可能是 2048 的兩倍半甚至三倍。做容量規(guī)劃時(shí)一定要按實(shí)際長度壓測(cè)別用線性外推。第三個(gè)坑流式輸出的第一個(gè)塊不一定是真首 token。有些客戶端或網(wǎng)關(guān)會(huì)先發(fā)一個(gè)空的心跳塊或者角色聲明塊你在客戶端計(jì)時(shí)會(huì)把這段時(shí)間算進(jìn) TTFT測(cè)出來的數(shù)字比服務(wù)端真實(shí)值高出一截。排查時(shí)要在服務(wù)端也埋一份計(jì)時(shí)兩邊對(duì)不上就說明中間有額外緩沖。這個(gè)問題很隱蔽因?yàn)榍€看起來只是TTFT 偏高你會(huì)一直往服務(wù)端查。第四個(gè)坑KV Cache 量化之后長上下文的精度下降比短上下文明顯得多。因?yàn)?KV 量化誤差會(huì)隨著讀取的位置數(shù)量累積上下文越長注意力加權(quán)時(shí)引入的偏差越大。短問答場(chǎng)景測(cè)不出問題一上長文檔就發(fā)現(xiàn)模型開始記不住前面的內(nèi)容。要做 KV 量化必須用長上下文任務(wù)做驗(yàn)證不能只跑短 prompt 的評(píng)測(cè)集。第五個(gè)坑多卡張量并行的通信開銷在 Decode 階段占比極高。張量并行把每一層的矩陣乘切到多卡上每層要做兩次全歸約。Prefill 階段計(jì)算量大通信能被掩蓋Decode 階段每層的計(jì)算只有幾十微秒通信延遲直接暴露出來。所以你會(huì)看到 4 卡部署的 Prefill 快了 3 倍多Decode 只快了 1.5 倍。小模型做 Decode 尤其不劃算寧可單卡多實(shí)例。最后分享一個(gè)我覺得最實(shí)用的觀察方式把 TTFT 和 TPOT 畫成兩條隨時(shí)間變化的曲線疊上并發(fā)數(shù)。正常情況下三條線的形狀應(yīng)該是同步的——并發(fā)漲、兩條延遲漲、并發(fā)落、延遲落。如果是 TTFT 跟著并發(fā)漲但 TPOT 是平的問題在入口調(diào)度如果 TPOT 出現(xiàn)周期性尖峰而并發(fā)沒變多半是分塊預(yù)填充的塊太大或者在跑定期任務(wù)如果兩條線一起抖且幅度很大去看顯存水位十有八九是塊分配器在掙扎。這套看圖方法比翻日志快得多尤其是在你沒時(shí)間深挖的時(shí)候能讓你在幾分鐘內(nèi)把范圍縮到一兩個(gè)模塊。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天搞在线综合网| 亚洲丝袜少妇在线| 国产最火爆久久国产网站网站| 91粉嫩萝控精品福利网站_精品影音先锋国 | 人妻献身系列第54部| 国产 日韩 欧美 人妻 熟女 中文 69人妻精品一区二区绯色 | 亚洲国产精品无码AV久久久| 麻豆亚洲Av成人无码一区精品| 天天干夜夜操一区二区| 日本网色| 欧美人妻一区二区| 久草大| 好屌色综合| 成人26uuu| 日本有码影片下载 | 麻豆天美制片厂网站视频| 啊啊啊啊啊啊好多水| 加勒比大香蕉视频在线| 啊啊啊啊啊啊在线| 2010男人的天堂| 97精品一区二区视频在线观看| 亚洲欧洲国产综合av| 超碰在97| 性做久久久久久久| 日韩综合第八区国产精品| 午夜120视频在线观看| 欧美一二三区四五区| 精品黄色电影| 综合日韩激情另类图片| 久久精品人人做人人看| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 99re免费| 嫩草 人人网精品| 天天干天天燥| 青青青草伊人精品| 婷婷爱五月| 欧美人妖内射| 中文字幕乱碼在线| 911粉嫩人妻| 久久久青青草| 日韩精品人妻中文字幕久久久| 黄片色区软件| 久九九九九九九九热| 婷婷五月天在线观看| 大学生美女口爆| 日韩在线人妻网站| 精品伊人久久久大香线蕉小说| 97欧美久久久久久久| 色婷婷网| 东亚亚洲无码高清| 精品一区二区三区国产 | 亚州九九九精品视频| 91亚州欧美| 欧美日韩大陆黑人少妇99| av亚洲天堂资源网站| 91成人亚洲色图| 91午夜无码| 91站街按摩店老熟女熟女| 日韩性爱1级片视频| 日本最新1区2区3区| 无码 有码 国产18p| 欧色网址| 久久久久久久六六| 少妇无码av专区线| 日本中文字幕高跟| 色五月婷婷网| 欧美不在线| 97超碰色屌| 极品色www影院| 色欧美亚洲| 久噜噜| 五月天婷婷综合网| 美国人人操人人操| 日韩熟女精一区二区三区不卡| 老女人日韩美91| 老司机射| 丁香五六月啪啪| 蜜桃臀一区二区aV| 亚洲欧美色综合| a久久| 日韩人成网站在线播放| 亚洲欧美日韩制服另类| 猛猛干| 超碰碰小说97| 骚女高跟AV在线| 人人综合| 婷婷五月天久久精品视频一区二区三区 | 大奶的诱惑| 香蕉大久久久| 欧美色一二三| 97超碰天天爱天天爱| 激情五月综合| 99热网站| 一二三四日本视频高清| 久色网| 国产品精品自在在线午夜免费 | 国产成人久久久精品免费AV| 免费a v| 久久999久| 欧美性性性| 91黑丝在线| 日韩一级欧美一级国产一级台湾| 日韩欧美字幕亚洲一区二区| 久久久久ab| 区一在线观看| 激情AV| 天天澡天天爽日日AV| 中文字幕av色| 亚洲人妻中文在线视频| 久久精品—区二区三区内射| 天美传媒AV在线| 精品国产乱码久久| 亚洲一区日韩精品中文字幕| 370p日韩欧美亚洲精品| 国产区性爱在线视频秋霞豆| 日韩操人| 九九精品美女高溯喷水| 欧美亚洲AN| 97亚洲色图| av黄图片在线观看| 色呦呦呦在线观看视频| 俺去也婷婷| 国产精品乱人伊人网| 国产精品久久久久久久久久久久久久久 | 精品一区二区综合熟妇| 日本99久久| 歐美一級亂黃99在綫精品| 中文字幕在线第二页| 97在线视频免费| 日韩国产在线观看av| 嗯嗯嗯啊啊啊在线免费观看| 国产精品久久久久久久免牛肉蒲团 | 精品一区二区2| 99久久精品国产系列| 欧美性巨大╳╳╳╳╳高跟鞋| 激情综合五月天| 伊人在线大香蕉视频久久| 伊人精品久久网站| 懂色中文一区二区三区| 五月花婷婷| 爱媛媛久久国产福利| 在线视频日韩欧美国产| 麻豆人妻精品一区二区| 在线国产福利网址导航| 懂色中文一区二区三区| 热久日综合| 91精品国产高清久久久久久,亚洲成人| 久久超碰com| 特级特黄一级毛片免费| 丁香五月影院| 婷婷av在线中文字幕| 91久久青青草原精品| 超碰国产在线| 99爱久久视频频| 6080yy午夜理论三级一区二区三区无码| 激情五月婷婷| 神马久久久久久久久久| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 亚洲天堂,男人| 91久精品| 中文字幕二区| 日本熟妇浓毛hdsex| 亚洲国产激情国产av| 日韩免费人妻色情网站| 午夜毛片高清免费不卡| 青草地一本线一区二区三区| 精品欧美老熟女一二区| 亚洲黄网在哪免费看| 美女尤物福利视频| 亚洲欧美综合网站| 立川理惠被中出无码| 亚洲情色中文字幕一区| 国产又黄又猛又粗又爽的网站| 干B| 2019天天干| 日日操丁香五月天| 大香蕉综合| 97超碰站| 青青爽| 97在线视频免费| 婷婷五月天成人网| 国产熟妇 码视频户外直播| 一区二区三区机械有限公司| 久久97视频| 大香蕉免费乱伦视频| 无码一区二区三区四区五区六区七区八区九区十区视频 | 1人人看人人摸人人操| 精品熟女一区=区三区| 97香蕉网| 国产免费久久精品99re韩国| 操屄不卡视频| 美女久久久久久久久久久| 狠狠穞A片一區二區三區| 91色欧美| 久操操| 国产精品国产自产高清AV| 久久久久久人| 大香蕉中文aV在线| 中文操嬖片。| 久久精品国产亚洲AV清纯| 天天干天天日天天射黄色大片| 久久久久久久伊人精品| 少妇人妻在线| 日韩A优精品在线观看| 91精品国产长腿丝袜美女| 在线 亚洲 网爆 自拍| 蜜乳性色无码专日粉嫩骚逼AV| 久久亚洲日韩国产欧| 一色网男人的天堂| 超碰97人妻自拍| 强奸乱伦αv片| 久久久久亚洲?V片无码V| 国产又粗又长视频| 午夜久久久| 久久久草成人网站久久久草成人久久久草久久久 | 欧美亚洲中文字幕| 乱伦熟妇一区二区| 999精品女人| 东京热精品97综合网| 国产欧美一区二区| 国产福利精品最新在线| www.黄色在线| 国产美女口爆吞精视频| 欧美亚洲激情| 亚州,欧美在线| 国产成人资源| 国产成人免费观看在线视频 | 激情抓乳插进去啪啪啪日韩| 竹菊一区二区三区AV线| 亚洲综合射| 99热这里| 久久九九99| 狠狠中文字幕| 综合av社区| 欧美日韩中文视频播放| 精品人妻一区春色| 中文字幕人妻丝袜| 国产成久久综合片| 久久国产成人精品国产成人亚洲| 国产91专区| 欧美在线视频99| 国产精品免费日韩| 国产精品无码av| 九九色逼| 五月丁香色色网| 欧美一级久久久久久久大片动画| 乱性AV| 一区二区乱码福利| 99999精品| 97中文热色| 国产又大又粗又长视频| 夜夜夜爽www精品视频| 神马久久啊啊| 亚洲久草AV色图| 精彩久久中文| 无码人妻丰满熟妇区毛片| 久久人人爽av亚洲精品天堂桃色 | 热热色青青草| 久久精品操| 无人区高清电影免费观看一区二区三 www.qmcai2.com | www.丁香五月| 成人在线视频二区| 免费99精品国产自在在线| 亚洲激情色片| 俞拍久久国应视频| 岛国1区2区3区在线观看| 欧 美 自 拍 偷 拍| 999狠狠综合| 中文字幕精品乱码| 天堂亚洲精品久久老牛| 天天色怡春院| 国产一区二区成人av在线播放| 国产无码久久高清| 黄污污污污| 啊啊啊啊二区好大| 天天色天天干天天射| 九九综合| 一区二区三区麻豆| 嗯啊抽插大香蕉网页| 嗯嗯嗯啊啊啊在线免费观看| 亚洲自拍欧美色综合| 日婷婷| 日韩精品中文字幕二区| 精品美女人人干| 亚州综合色| 抽插无码高清一区| 色哟哟av| 超碰成人免费| 日韩丨制服丨中文|在线| 91AV入口| 六九九九| 91综合站| 探花激情视频| 亚洲欧美首页| 狠狠操狠狠爱| 91亚洲电影| 自拍偷拍 日韩无码| 九九国产热| 午夜成人爽爽爽爽A片李冰冰| 亚洲性综合9| 九色 蝌蚪 熟女自| 思思热在线| 人妻大香蕉| 欧美精品日韩一区二区| 啊啊啊啊视频免费| 色网站导航大全| 婷婷丁香六月| 校园春色 亚洲| 99色综合| 色欲久久99国产精品久久久久久| 久9久| 亚洲色图综合| 嗯嗯啊啊视频一区二区三区| 欧美一级久久久丰满| 金典av| 午夜a成v人电影| 久偷拍欧美日韩三区| 欧美在线永久天堂| 97精选久久| 九九综合久久| 五月婷亚洲精品天堂| 67914亚洲精品| 2018天天日天天日| 美美91成人国产精品欧美精品久久久久久久| 久综合国内精品自在自线| 自拍盗摄一区| 爱我干综合| 蜜臀AV一区二区三区| 一本一道人妻久久一区二区三区| 免费国产电影一区二区| 国产女主播视频在线观看| 久久‘黄片视频| 色五月AV| 91撸色网 玖玖网 欧美| 六月丁香啪啪| 超碰久草| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 欧美天天影院| 久久久久久性爱片| 老司机射| 亚洲91网| 99热线麻豆 | 亚洲精品久久久久久久久豆丁网| 国产粉嫩蜜臀av一区二区三区| 91欧美综合在线| 久久一区二区三区入口| 三级精品三级在线观看| 99国产精品自在自在| 加勒比大香蕉视频在线| 国产精品久久久久中文字幕| 日韩啊V| 91久久久老司机| 99只有精品| 2019久久久久久久久福利| 国产精品伦理| 欧美一区二区三区黄色影视| 久7色| 日本三级日本三级99| 久久性爱视频99| 深夜视频| 91欧美性| 日韩av色图综合| 色五月婷婷色| 色官网在线| 亚洲在线网站| 家庭乱伦麻豆| 美女91av| 九一国产精品| 日韩熟女视频二区| 大香蕉 222| 色欧美天天| 美女极品一区二区三区| 日本不卡高清视频| 国产精品人妻无码久久久老鸭窝| 人人妻人人玩人人澡人人爽| 夜夜无码| 狠狠爱大香蕉| 99操| 偷拍在线观看视频| 精品一区二区三区四区外站| av麻豆啪啪| 精品无吗久久| 精品久久在线区一区| 一区二区日韩欧美久久| 97色碰| 六月丁香久久| 亚洲色综合| 香蕉久久国产AV一区二区| 丁香六月东京热| 风流老熟女一区二区三区l| 人妻色偷色噜| 丁香九月 婷婷| 一起草欧美| 夜夜草天天| 岛国黄片网站| 日韩性爱小视频| 免费看黄片现成| 日韩无码一级黄色av片| 五月婷婷六月丁香网址| 午夜福利在线合集| renqi久久久久久久久久久久| 不卡免费av在线播放| AV综合中文字幕干| 99精品在线| 蜜臀av中字字幕网站| 欧美97日韩精品| AV丝袜少妇| 插B在线观看| 国产91丝袜 在线播放| 99re免费| 搞中出久久| www.av在线观看| 人人考人人摸人人干| 色久综合| 九草在线大香蕉| 67914在线兔费成人视频| 久久噜| 国产精品96久久久久久| 中文字幕人成乱码熟女香港| 亚洲码专区| 人人摸人人干| 97在线青| 97操| 操逼1区| 小少妇| 日本裸体久久色噜噜| 9999九九九久久久| 91 综合网| 操人人| 青娱乐久久艹| 丰满人妻一区二区三区在线| 欧天美中出| 伊人超碰97| 无码精品久久| 久久久久久亚洲精品不卡人乳| 福利风月五月天影院| 一区二区不卡免费| 国产精品96| 大色综合网| 狠狠狠狠狠干| 97草草| 日本不卡一区二区| 97人人射| 吉川爱美亚洲二区在线 | 欧美色色色| 九九热免费国产视频婷婷伊人五月| 久久久久9999精品九九九| 国产91 丝袜在线播放 | 人妻在线中出视频| 农村妇女精品一二区| 国产9 9在线 | 亚洲| 色999五月色| 殴美性色a级欧美| 欧美在线干| 色吧5亚洲| 婷婷五月色| 97爱b| 国产精品亚洲无码| 级品肉射| 人妻铁牛TV| 色婷婷成人| 超碰综合97在线| 91久久免费视频互動交流| 亚洲中文字幕噜噜噜久久久| 国产搭汕a级片| 美女自卫慰黄网站免费| 久久婷婷苹果| 国产精品久久久久久久久AV大片| 欧美一级专区免费大片| 边做饭边操逼逼| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 国产亚洲精品美女久久久m| 日韩/97| 熟女探花啪啪| 日本丝袜美腿人妻九九| 超碰精品日韩欧美国产| 澳门成人网站久国产日韩| 男女国产精品| 99热精品在线| 一级乱伦网站| 啊视频在线| 五月天伊人网| 亚洲色图 欧美热图 清纯唯美 另类自拍| 91丰满| 蜜桃成人1区2区3区| 一本大道青青| 天天综合网~69| 青青操日韩| 亚洲欧美成人在线| 熟妇乱伦一区二区| 夜夜騷av、一區二區| 午夜无遮挡男女啪啪视频| 久久久久久久久九九久孕交| 交换娇妻呻吟声不停中文字幕| 久草在| 久久美女国产| 神马午夜久久| 亚洲1区| 成人午夜高潮av猛片| 色天堂综合| 午夜120视频在线观看| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 91在线丝袜视频| 一级日本牲交大片好爽在线看| 少妇 综合| 最新日本中文字幕| 乱码人妻一区二区三区| 亚洲五月婷| 综合色好色| 狠狠夜色午夜久久综合在线| 亚洲制服欧美另类内射| 亚洲色图欧美色图在线播放| 一级免费啪啪片| 九九九九国产| 呻吟 欧美 日本 中出| 麻豆天美国美国产| 人妻少妇被猛烈进入中| 熟妇熟女一区二区三区| 闷骚老熟女15P| 热九九精品| 欧美日韩亚洲一区二区在线观看| 中韩中文字幕在线观看| 久久熟女久| 综合久久婷婷| 秋霞一级视频在线观看免费| 久久这里只精品| 2017大香蕉国产精品久久| 激情一区二区三区在线观看| 天天日天天搞天天干| 少妇精品久久| 97就爱干| 最新av在线| 嗯嗯啊啊操死我| 深夜激情无码| 岛国视频一二三区| 久久少妇| 九九九九AV| AV男人天堂网| 亚洲色9| 人妻夜夜爽天天爽麻豆三区网站 | 天天日天天射天天干| www.久久最新地址| 日韩av免费一级电影| 青青在线视频日韩欧美| 久久精品操| 综合情欲网| 亚洲天堂第一页| 国产精品熟女AV中文字幕在线播放| 久久人妻精品| 国产一区二区三区影片| 日韩av不卡在线观看| 特级特黄一级毛片免费| 欧美日韩国产另类综合| 强奸国产精品视频| 91欧洲国产成人久久精品网站| 少妇熟女一区二区三区| 国产中午字一暮区| 亚洲激情欧美色图| 久久久亚洲熟妇资源| 国产精品久久久久久夜夜夜夜| 白丝少妇一区二区| 中文字幕视频一区视频二区| av操操不卡| 9热9热综合网| 麻豆天美制片厂网站视频| 欧美内射少妇| 殴美日韩m| 1204av韩国| 青草影院内射高潮| 西西美女视频网| 亚洲男人天堂2013| 91高跟美女在线播放| 亚洲视频二区| 97视频免费在线| 日韩专区久久久| 91色人| 色眯眯av| 亚洲人妻日日日| 日本一区二区中文字幕久久| 亚洲中文字幕精品一区| 最新三级网址| 国产无吗在线播放| 性色av蜜臀av色欲aV| 日本三级一区二区 在线| 精品无码久久久久久国产浪潮| Av手机版天堂网| 伦伦成年午夜免费视频| 在线人人人人人人精品超| 亚洲成av人片色午夜乱码| 91neishe| 91热情品| 国产又粗又长又大的视频| 久久久久白虎| 草莓精品视频在线免费观看| 成人在线视频网| 2020视频1区2区3区| 美腿丝袜偷拍亚洲欧美| 91青青在线视频| 97视频在线看| 国产尤物AV尤物在线观看不卡| 欧美一级黄片免费播放| 午夜欧美J进J出白浆流出久久久 | 天天草天天日| 一区三区啪啪| 97色冈| 久久久久婷婷精品av电影| 久久久青青草| 一本一道波多野毛片中文在线| 99视频精品| 91九九九逼| 啊啊啊啊免费视频| 欧美日韩日产免费网站看| 久久精品人体| 视频在线97| 亚洲国产丝袜熟女av| 99久久精品无码一区二区| 亚洲欧美大香蕉| 色婷婷一区二区三区久久午夜| 中日韩免费看男女操逼大全| 黄色av一区二区在线| 欧美日韩大陆黑人少妇99| 久久精品无码熟妇一区二区三区视频导航 | 91天天爽| 亚洲欧美在线观看免费| 美中韩AV综合网| 99热线麻豆 | 91在线免费精品视频| 国产精品熟女丝袜一区二区| 国产无马av| 欧洲精品区| 久久久久久久伊人精品| 嗯嗯嗯啊啊啊在线免费观看| 99操逼| 爱做久久久久久| 97香蕉人人乳| 波多野结衣AV无码一区| 嗯嗯嗯好爽| 天天干夜夜鈤| 色婷网| 蜜桃臀久久| 欧美黑人精品在线播放| 欧美激情超碰777| 色哟哟 日韩精品| 精品国产嫩穴视频| 美女好片色日本| www超碰| 欧美日韩中文字幕不卡| 国产亚洲色婷婷久久99精品91葵花宝典| 婷婷综合五月天| 欧美性高潮| 狠狠操狠狠插| 91n处女在线观看| 人妻av在线| 欧美姓爱综合网| 国产成人无码久久精品| 97中文字幕一区| 天堂九九九九九九九九九| 亚洲欧美校园| 免費黃色視頻觀看一| 熟妇一区,二区,三区。| 国产精品久久久久久片| 欧美色道啊| 国产高清精品福利| 一区二区亚州激情久婷婷欧美| 中文字幕一区二区韩| 日韩精品第3页| 国产日韩区| 亚洲精品国产熟女久久久| 高清国产av无码| 色网亚洲人| 啊啊啊啊啊啊在线看| 久久国产在线一区二区| 日韩三级在线观看mp4| 最新三级网址| 亚洲日韩97| 精品国产乱码久久久久久影片| 1769成人国产精品视频| 97在线欧洲| 国产浮力影院第1页| 天美传媒Av在线| 91精品丝袜在线观看| 九色黄站| 久久偷拍人| 国内精品伊人久久久久影院会| 91亚洲情色| 九九九九九九亚洲| 精品人妻av在线播放| 嗯嗯,好大,好爽,好骚 | 色天堂在线观看| 簧片免费看视频| 中文字幕精品探花视频| 在线中文AV| 九九综合| 亚乱色| 一起草视频在线| 青娱乐大香蕉| 午夜一区| 日韩性爱毛片操骚逼| 天天干夜夜| 久久中文色图| 丁香六月天| 国产真乱mangent| 992大香蕉| 久久伦理视频久久大香蕉视频| 99热只有这里有精品| a男人的天堂久久一级A毛片| 四季av一区二区凹凸精品小说| 啊啊啊不要好疼视频| 男女激情黄色网址| 在线观看亚洲成人精品| 久久9久久| 偷拍色图| 插欧洲美女欧美精品| 国产成人91一区二区三区| 欧美在线第五页| 日韩精彩免费| 日本人体九九九九九九| 日本护士高潮| 国产精品盗摄 偷窥盗摄| 色妺妺AⅤ| 黄站在线免费观看| 射欧美综合| 精品国产一区二区久久| 国产精品一二三区福利| 欧美人妻精品一区二区| 操逼逼一区视频| 亚洲天堂精品日韩电影| 亚洲色诱惑| 欧美91在线+|+欧美| 97人人操人人摸人人爱| 91亚洲综合在线| 打av高清| 国产极品粉嫩馒头一线天av| 99热在线播放| 蜜桃精品视频一区| 殴美综合色88| 人人乐大香蕉| 五月天激情婷婷| 91精品久久久久久77777| 日韩一级性爱无码| 明星性猛交ⅹxxx乱大交| 国产熟女精品一区二区| 久操电影网| 夜夜嗨一区二区三区三州加勒比| 丰满人妻一区| 少妇三P| 久久仑合| 精品久久久不卡一区二区| 亚洲综合有玛| 成人五月天色网| 综合网欧| 67194无码不卡| 欧洲乱码视频| 婷婷15月天青娱乐| 操B久久| 亚洲精品一区二区免费在线观看| 91偷拍欧美亚洲| 国精品一区二区三| av亚洲天堂资源网站| 欧美少妇高潮久久91| 综合天天网| 大香蕉之青青草原| 大白逼三四级| 91高清日| 又大又大又大又粗爽高潮观看| 大香蕉一级黄色片久久| 日本在线观看网址| 国产一区二区三区视频在线看| 午夜精品五区| 亚洲黄网在哪免费看| 小少妇| 国产有码一区| 九九九九97| 国产精品夜夜夜| 天天综合网91| 不卡av在线中文字幕| 3P乱轮视频| 午夜精品一区二区三区三上悠亚| AV一二区| 久草草一二三四区久久| 偷偷人人精品女女久久| 狠狠爱综合网| 中文日本免费高清| 啊视频在线| 亚熟在线| 欧美影音在线| 热99re69精品8在线播放| 熟女激情综合网| 国产伦精品一区二区三区在线观| 亚洲一区二区麻豆影院| 偷拍色图| 国产偷拍网站| 久久久久久久国产视频| 91色艳| 久久久少妇诱惑精品视频| 欧美亚洲特P| 一区二区三区黄片免费观看| 欧美综合站| 大香蕉欧美国产日韩高潮| 人人妻人人澡人人爽久久av| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 户外裸露刺激视频第一区| 91亚州欧美| 91精品国| 欧美国产精品| 日韩欧美视频青青| 欧美在线第五页| 91啦人妻| 色噜噜婷婷| 91久久久久久久| 五月丁香六月综合缴清无码| 插欧洲美女欧美精品| 国产欧美一区二区| 亚洲Av诱惑| 国产三级日产三级韩国三级| 天天日日日射| 老女人综合网| 91丨九色丨东北熟女| 国产丰满熟夫69mpp| av三级电影在线播放| 91色婷婷综合久久中文字幕二区| 欧美无圣光在线| 亚洲色人| 亚洲最大91网| 人妻少妇精品视频一区二区三区| 又大又长又粗又爽又黄| 91美女丝袜诱惑视频| 9久久久久久| 国产超碰人人操| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 精品无码久久久久久久杏吧| 欧美刺激色黄片免费看| 国产情色第一第二页在线观看| 91色人妻| 亚洲av国产av综合av卡| 97人人超| 欧美色道啊| 午夜理论片在线观看免费| 天天弄欧美| 久久久久久性爱免费视频| 五月丁香网站| 国产深喉视频一区二区| 日本午夜精品理论片A级APP发布| 亚洲欧美精品久| 超碰成人公开| 日韩久草| 婷婷五月天激情网| 久久久九| 91 刺激在线| 久久亚洲一区女同性恋中文字幕| 亚洲av强奸乱伦| 一本色道综合久久欧美日韩精品| 日本在线一二| 暴力av在线| 亚洲激情在线| 三上悠亚在线毛片91| 91粉芽高清在线一区二区| 天美传媒AV在线| 999久久久九| 78久久| 亚洲色五月| 亚洲国产美女久久久久| 国产精品网站www| 岛国大片国产| 果冻传媒一区二区三区| 九九热最新| 蜜臀一二三区| 又大又白奶子| 人妻少妇被猛烈进入中| 熟妇高潮二区三区| 亚洲婷婷五月天| 麻豆综合一区av| 97欧美色综合| 久久这里只精品免费福利| 日韩资源网| 99综合| 国产精品99精品视频网站| 成人黄页| 激情五月激情综合网| 欧美中文字幕日韩在线| 熟女熟妇伦久久影院毛片一区二区| 久久久精品视频免费观看| 玖玖久久久| 欧美色图成人网一区二区 | 无码国产精品午夜不卡(| 欲香欲色| 天天插夜夜爽| 国产精品一二三区福利| 伊人精品久久网站| 九九国产| 97视频观看| 国产精品香蕉热久久新品| 清纯唯美亚洲综合| 久久久不卡区一区二区三区久久久| 四虎AV无码| 日韩精品一区,二区 九九...老司机| 亚洲最大AV网| 立川理惠被中出无码| oumeizonghese,www| hd成人一区二区在线| 无码天堂| 欧美色干| 丰满少妇精品一区二区| 色呦呦、国产精品| 日本狠狠干| 五月天婷精品激情| 国产美女销魂在线观看不卡| 欧美啪啪天堂| ...日韩成人一区二区三区字幕| 青青草在线成人视频| a在线观看| 久久天天艹| 东京热一区二区中文字幕| 美女黄色91| 欧美伦乱爱| 亚洲蜜臀懂色| 草b在线 | 精品久久久久黄少妇| 日本三级韩国三级99| 少妇xx精品| 欧美亚洲第一页| 国产精品麻豆成人av| 蜜臀久久99精品久久久| 青青草女人天天干| 天天影视之亚洲综合网| 久干网| 屌逼传媒| 天天日天天操心| 99热99色| 欧美色五月| 色色色色日本| 午夜福利在线合集| 无码丰满熟妇一区二区浪潮AV| 极品销魂美女一区二区| 九九九九九精品| 精品久9| 91欧美亚洲| 色综合av综合久久| 69一区二区三区 | 中文字幕 一区二区 亚洲无码| 蜜桃久久一区二区三区| 日韩性爱高清免费视频| 大香蕉黄色一区| 一区二区三区机械有限公司| 色婷婷狠狠18禁| 999国产精品999| 国产精品一区二区黄片| 欧美在线干| 国产这里只有精品| 9久热| 日韩三四五区| 日韩在线人妻网站| 日韩精品操少妇| 久久久久ab| 97热视频在线观看| 亚洲双插| 久久区| 国产无码成人无码| 免费家庭乱伦视频| 国产精品色片一区二区| 100啪啪视频大全| 中国一级特黄大片护士| 亚洲精品天堂久久A∨51成人漫| 青青伊人这里只有精品| 先锋色眉乱伦资源| 亚洲最大网站av| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚洲欧洲精品成人| 亚洲资源网| 欧美亚洲韩国视频十五区| 久久香蕉国产线看观看亚洲女人 | 日本影视久久免费| 午夜福利无毒不卡| 黄色一区二区秘书性感| 婷婷五月天激情小说| 国产怡红院| 婷婷九月国产| 国语精品av| 国产精品白丝在线播放 | 东京热大香焦| 综合网少妇| 岛国在线免费视频| 熟女六十路| 毛片17S| 爱妻综合网| 伊人久久AV诱惑悠悠| 国产精品区在线12p| 久热大香蕉| 熟妇女人妻呻吟久久AV| 欧美日韩97在线| 韩国一级做a久久久久| 老司机射| 射 色综合| 久九9精品| 尹人免费观看视频在线| 国产伦精品一区二区三区在线观| 日韩人妻大香蕉| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 双插在线| 大香蕉99re| 三级色综合| 九九九九九九亚洲| 漂亮人妻被强中文字幕hd| 九九九九热只有精品| 天天色天天干天天射| 无码人妻一区二区一牛影视| AV色五月天| 国产精品午夜AV完会免费| 午夜久久无码1000合集| 九九亚洲精品| 久久精品久| 两性综合网| 操操操操网黑人| 亚洲欧美综合| 婷婷五月天丁香花| 制服丝袜第二页| 偷拍精品一区二区三区| 五月天婷婷基地| 色综九九九一区| 中文字幕精品日韩中文字幕| 欧州色图区| 日本加勒比无码专区| www.色操逼| 伊人网一本| 浪人综合网| 日日干夜夜操视频h| 超碰97人妻在线| 另类图片五月天| 欧美在线电影| 成人免费在线网站| 日韩精品系列| 最近2019中文字幕国语免费版| 亚洲青色欧美| 97在线免费观看| 日韩欧美亚洲国产日韩| 97干97色| av优播| 97视频网站| 91校园春色长篇| 蜜臀AV午夜精品久| 亚洲另类综合欧美| 青青草中文字幕| 久久婷婷综合国际产色怕| 天天干1区2区在线| 免费中文在线| 欧美97av| 欧美躁死她一区二区| 四虎精品亚洲| 99热66| 亚洲色图欧美| 欧洲Au麻豆| 牛牛操视频逼| 国产嫩草精品A88AV在线| 激情小说日韩无码| 欧美韩国你懂得在线 | 亚洲天堂性爱| 操操操五月天婷婷丁香影院| 操B久久| 亚洲情色中文字幕一区| 天堂资源站| 亚洲欧美激情在线视频| 999久久久国产精品| 大香蕉在线视频15| 探花精品 一区二区| 蜜伊人色综合97| 日韩美女啪啪一区| 男人的天堂日本东京热| 草草网站影院白丝内射| 中文字幕日韩精品一区二区三区| av网站国产主播在线| 丝袜美腿校园春色| 欧美老妇女内射网址| 国产精品美女久久久久AⅤ国产馆| 国产精品丝袜久久亚洲不卡| 日韩性爱高清免费视频| 理论久久婷婷网8| 欧美狠狠弄| 日人妻视频91| 日夜伊人网| 97精品久久久久中文字幕| 欧美熟女操屄| 国产精品自拍视频 | 黄片com.| 天美传媒AV在线播放| 不卡九肏| 久久男女激情视频网站| 欧美AB在线| 久久熟女久| 日本人体九九九九九九| 午夜舔阴达高潮视频免费看| 国产精品久久久999| 禁片 高清 在线观看视频网站| 免费一级特黄特色大片在线观看看 | 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 中文字幕日韩专区精品系列| 少妇蹲下买菜露大唇0| 麻豆区99999| 极品尤物自安慰| 一起草三级AV电影在线观看 | 亚洲无码久久久久久久| 男人的天堂va| 蜜桃精品一区二区三区久在线| 午夜激情床戏激情| 狠狠色综合网| 国产精品点击进入在线影院| 五月天精品| 色偷偷色偷偷欧美日韩| 久久超碰爱| 亚洲最大的综合性av| 男女无套 免费网站| 夜色97| 91美女在线视频| 天天操天天射青青草| 超碰在线看| Blackedraw视频一区二区| 91天天综合网| 久久久久国色αv免费观看| 色偷偷男人的天堂麻豆| 丰满精品人妻少妇久久字幕| 小泽玛利亚一二三| 嫩草影院性色| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 懂色AV蜜臀无码精品APP| 69少妇一区二区| 日韩无码一级黄色av片| 夜夜欧美 | 青女在线| 青娱乐大香蕉| 亚洲码和欧洲精品激情系列| 亚州色图第三区| 色色色网站| 亚洲午夜福利视频| 无码高清专| 国产色呦呦| 亚洲女毛多水多21P| 人人摸人人摸人人干| 无遮挡又黄又刺激的视频| 乱欲视频| 草草草视频在线免费看| 国产女大学生AV| 翔田千里AV无码秘 三区| 精彩久久中文| 五月婷婷AV| 亚洲图片欧洲图片aⅴ| 97人妻免费中文字幕| 天天操夜夜嗨| 国产黄片在线免费观看| 丰满人妻一区二区三区四区| 久久久久久久强迫| 国产又黄又爽| 18禁看网站一区| 亚洲国产成人7777| 国产特级毛片AAAAAA高潮流水| 日韩美女啪啪一区| 免费A片三p视频| 国产精品视频自拍在线| 性色生活片久久毛片婬片免费放女人一级毛片| 另类小说综合网| 日韩乱伦影音先锋| 超碰成人国产|