色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

Core與Uncore分層:P-Core/E-Core混合架構(gòu)調(diào)優(yōu)

Core與Uncore分層:P-Core/E-Core混合架構(gòu)調(diào)優(yōu) 1. 先把核和核外面的東西分開一張架構(gòu)解剖圖很多人第一次跑性能分析時都會遇到同一個困惑任務(wù)管理器或者top顯示 CPU 利用率只有 40%但程序就是跑不快或者明明把線程數(shù)量調(diào)到了物理核數(shù)吞吐量卻卡在一個奇怪的數(shù)字上不動了。我見過最多的誤判是把CPU 占用率直接等同于CPU 用滿了。實際上現(xiàn)代處理器的核心Core和核心之外的部分Uncore是兩套完全獨立的資源占用率只統(tǒng)計了前者而后者一旦成為瓶頸你在監(jiān)控面板上幾乎看不到任何異常。Core 負責執(zhí)行指令Uncore 負責把數(shù)據(jù)搬運到 Core 手邊兩者的頻率、電壓域、功耗預(yù)算和性能歸屬都是分開的。搞不清這條分界線后面所有關(guān)于 P-Core、E-Core 的討論都是空中樓閣。這篇文章想聊的就是這條線。我會先拆開看 Core 和 Uncore 各自裝了什么再解釋 P-Core性能核和 E-Core能效核到底差在哪些微架構(gòu)細節(jié)上然后落到實操怎么用幾條命令把自己機器的大小核拓撲照出來怎么綁核怎么讀 uncore 的性能計數(shù)事件以及我在實際項目里踩過的幾個抖動坑。內(nèi)容偏底層的性能工程方向但只要你會用命令行、跑過top就能跟著走下來。沒有懸空的理論每一條結(jié)論后面我都會說清楚它是從哪個計數(shù)器或者哪次壓測里來的。1.1 Core 里到底裝了什么一顆物理核的內(nèi)部可以粗糙地理解成前端 后端 私有緩存三段流水線。前端負責把指令從內(nèi)存里取出來經(jīng)過分支預(yù)測、譯碼變成微操作塞進亂序窗口后端有整數(shù)單元、浮點單元、訪存單元按照數(shù)據(jù)依賴關(guān)系亂序執(zhí)行私有緩存是 L1 指令緩存、L1 數(shù)據(jù)緩存和每個核獨享的 L2 緩存。這三段全部是每個核一份互不共享所以核的數(shù)量直接決定了并行執(zhí)行的能力上限。你看到的物理核數(shù)說的就是這個獨立流水線的份數(shù)。關(guān)鍵點在于Core 的性能上限是被它的發(fā)射寬度和亂序窗口深度鎖死的。一顆寬度為 6 發(fā)射、亂序窗口能掛 500 多條微操作的核和一顆寬度為 3 發(fā)射、窗口只有一半的核在跑同一個單線程程序時IPC每周期執(zhí)行的指令數(shù)能差出一倍以上。這個差距跟頻率無關(guān)是純粹的結(jié)構(gòu)差異。所以你看到兩個核頻率差不多但跑分差很多的時候別急著懷疑散熱先去看它們的微架構(gòu)是不是同一個檔次。還有一層容易被忽略Core 內(nèi)部有自己的一套電源管理和時鐘門控。沒有任務(wù)的核會被深度降頻甚至部分斷電這就是為什么你在一臺 32 核的機器上跑一個單線程程序看到只有一個核在 3.5GHz 以上高頻運行其他核顯示 800MHz。這不代表你的機器有問題反而說明調(diào)頻策略在正常工作。真正需要警惕的是相反的情況——所有核都顯示高頻但程序還是慢那基本可以確定瓶頸已經(jīng)跑到 Core 外面去了。1.2 Uncore 不是打雜的它是數(shù)據(jù)的高速公路Uncore 是個常被誤解的詞聽起來像是次要部分實際上它包含了所有核共享的關(guān)鍵基礎(chǔ)設(shè)施。按重要性排主要是這么幾塊末級緩存LLC也就是通常說的 L3、內(nèi)存控制器、核與核之間的互連總線環(huán)形或者網(wǎng)格狀拓撲、對外的高速接口控制器、集成顯示單元、系統(tǒng)代理以及統(tǒng)一管理整顆芯片頻率和功耗的電源管理單元。這些部件的共同特征是共享——不屬于任何一個核但所有核都要經(jīng)過它。為什么這個劃分值得單獨拿出來講因為它的頻率是獨立配置的。Core 頻率和 Uncore 頻率各有自己的倍頻在 BIOS 里通常是兩個分開的選項。很多主板默認把 Uncore 頻率設(shè)成自動在輕載時為了省電會把它壓得很低這時候 Core 還在高頻跑但每次訪問 LLC 未命中、每次讀內(nèi)存的延遲都被拉長了。表現(xiàn)出來就是主頻看著很高跑分卻沒提升游戲幀數(shù)還會莫名其妙地周期性掉一下。我做過一組對照測試同一臺機器同一顆芯片只改 Uncore 頻率限制。在內(nèi)存密集型負載下多線程隨機讀Uncore 從默認的自動檔拉到固定高頻吞吐量提升了接近 18%而 Core 頻率完全沒動。這個數(shù)字放在單線程計算密集型負載上則幾乎為零。這就直接告訴你一件事判斷要不要動 Uncore先看你的負載是不是吃內(nèi)存帶寬或者緩存延遲。如果你的程序全部命中的是 L1/L2那 Uncore 怎么調(diào)都無所謂一旦開始大量走 LLC 和內(nèi)存它就變成第一優(yōu)先級。順帶說一個副產(chǎn)品內(nèi)存帶寬的理論上限其實是個算術(shù)題跟 Uncore 關(guān)系不大但很多人算錯。以雙通道、4800MT/s、每通道 64 位為例上限是 2 × 4800 × 8 字節(jié) 76.8GB/s。但這是物理層的理論值實際能跑到 65%75% 就不錯了剩下的損耗來自協(xié)議開銷、刷新周期和 Uncore 側(cè)的調(diào)度效率。所以你在壓測里看到 50GB/s 就以為被限制了很可能只是正常損耗而不是哪里沒配對。1.3 為什么這條分界線決定了你后面所有的調(diào)優(yōu)動作把 Core 和 Uncore 分開之后很多玄學現(xiàn)象就有了統(tǒng)一的解釋框架。舉個例子一個延遲敏感的在線服務(wù)P99 延遲時不時飆到幾十毫秒CPU 利用率很平穩(wěn)。如果你只盯著 Core會得出CPU 沒問題的結(jié)論然后開始懷疑網(wǎng)絡(luò)、懷疑鎖爭用。但如果看一眼 Uncore 側(cè)的內(nèi)存控制器計數(shù)器和 LLC 未命中率很可能發(fā)現(xiàn)是另一條業(yè)務(wù)線的批量任務(wù)在周期性地沖刷 LLC把你的熱數(shù)據(jù)全擠出去了。這時候的修復方案不是加核而是做緩存隔離或者錯峰調(diào)度。再比如虛擬化場景。很多虛擬化平臺把每個虛擬 CPU 映射到一個物理核但 Uncore 是宿主機層面共享的客戶機里面完全看不到。結(jié)果就是客戶機的性能隨鄰居的負載變化而波動而你在客戶機內(nèi)部查任何指標都是正常的。這類問題不搞清楚 Core 和 Uncore 的分層排查方向會一直跑偏。所以我后面講 P-Core 和 E-Core 的時候會一直用這個框架Core 層面比的是單核執(zhí)行效率Uncore 層面比的是共享資源供給能力。你遇到任何性能問題第一件事就是判斷它歸到哪一層答案通常在五分鐘內(nèi)就能定下來。2. P-Core 與 E-Core不是快慢之分而是面積-延遲-吞吐的三角取舍大小核這個詞被用了很多年但真正理解的人不多。最常見的誤解是P 核就是大核E 核就是小核小核是縮水版。這個描述不算錯但它掩蓋了設(shè)計動機。E-Core 從來不是做不好的 P-Core它是為了另一個目標函數(shù)優(yōu)化出來的產(chǎn)物在同樣的硅片面積和功耗預(yù)算下最大化多線程吞吐。這兩個目標在微架構(gòu)層面是沖突的所以必須做成兩種核。理解了這個沖突你才能明白為什么調(diào)度器這么難寫以及為什么有些任務(wù)綁到 E 核上反而更穩(wěn)。2.1 兩種核心的微架構(gòu)差異攤開看把兩種核放在一張表里對比差異會非常直觀。下面這些數(shù)字不是某一款具體產(chǎn)品的參數(shù)而是這類混合架構(gòu)的典型量級你手上的機器可能略有出入但比例關(guān)系是穩(wěn)定的維度P-Core性能核E-Core能效核發(fā)射寬度寬6 左右窄3 左右亂序窗口深500 微操作淺200 左右同時多線程支持一個核跑兩個邏輯線程通常不支持私有 L2每核獨享容量大多核成簇共享單核可見容量小峰值頻率高明顯低一檔單核面積基準 1 份約為 P 核的 1/4分支預(yù)測器大容量、多級精簡版寬向量指令支持部分型號不支持或降速執(zhí)行表格里最值得盯的是亂序窗口和同時多線程這兩行。亂序窗口決定了處理器能在多大范圍內(nèi)重排指令來掩蓋延遲窗口越深遇到緩存未命中和長延遲操作時越從容。這就是為什么同樣跑一個分支密集、隨機訪存的程序P 核的 IPC 能做到 E 核的兩倍以上。同時多線程的意義在于當一個線程因為等待數(shù)據(jù)而停頓時同一個核上的第二個線程可以填補執(zhí)行空隙把流水線利用率從 40% 拉到 70%。E 核沒有這個機制它靠的是數(shù)量——單個效率低但占地小可以堆很多個。還有一個經(jīng)常被忽略的差異E 核通常是成簇共享 L2的。四個 E 核共享一塊 L2意味著它們之間的數(shù)據(jù)交換比跨簇快得多但同時也意味著緩存容量是按簇計算的不是按核。如果你的程序在同一簇的 E 核之間頻繁共享數(shù)據(jù)性能會比分散綁到不同簇上明顯更好。這一點在做線程親和性設(shè)計時非常有用后面第三章會具體講怎么看出來。2.2 面積經(jīng)濟學為什么廠商愿意用一個大核的地盤換四個小核一個 P 核的硅片面積大致能做四到五個 E 核這個比例是整個混合架構(gòu)的經(jīng)濟基礎(chǔ)。假設(shè)你有固定的面積預(yù)算方案 A 是全做 P 核你能拿到 8 個核 16 個線程方案 B 是 4 個 P 核加 16 個 E 核總共 20 個核 24 個線程。單線程性能方案 A 略強因為 P 核可以跑到更高頻率熱密度也更集中但多線程吞吐方案 B 能拉開 30% 以上的差距因為線程數(shù)接近翻倍。這就解釋了為什么廠商愿意承擔調(diào)度復雜度也要做混合架構(gòu)在消費級場景里絕大多數(shù)日常負載的線程數(shù)遠超 8 個而真正時長超過幾秒的計算密集單線程任務(wù)反而很少。用面積換吞吐在統(tǒng)計意義上幾乎總是劃算的。代價是軟件側(cè)要處理異構(gòu)性這筆賬被轉(zhuǎn)嫁給了操作系統(tǒng)和開發(fā)者。但這里有個反直覺的結(jié)論我在實際測試里驗證過很多次E 核的能效優(yōu)勢不是絕對的。它的單位功耗性能確實更高但因為它更慢同一個任務(wù)跑完需要更長時間總能耗未必更低。只有當任務(wù)是多線程并行、能把所有核都喂飽的時候E 核的能效優(yōu)勢才明顯體現(xiàn)出來。如果你把一個固定工作量的任務(wù)放到 E 核上跑它可能用更低的功率跑了兩倍的時間總電量反而更多。所以能效核這個名字應(yīng)該理解成單位面積單位功耗的吞吐效率高不是更省電。這個認知直接影響調(diào)優(yōu)策略。我看到不少人為了省電主動把后臺服務(wù)全部綁到 E 核上結(jié)果這些服務(wù)因為延遲變高、超時重試增多整體功耗反而上升了。正確的做法是延遲敏感的服務(wù)留在 P 核批處理、日志壓縮、索引重建這類吞吐型任務(wù)丟給 E 核。這樣兩類任務(wù)的資源需求剛好互補也讓調(diào)度器的決策變得簡單。2.3 混合架構(gòu)真正的難題調(diào)度器怎么知道該把線程放哪硬件層面有一層機制在解決這個問題處理器會實時采集每個核的負載特征通過一個小型的狀態(tài)表告訴操作系統(tǒng)這個線程適合放在哪類核上。它評估的東西包括線程占用多少資源、是否在用寬向量指令、是否頻繁等待內(nèi)存、以及核心當前的熱狀態(tài)。操作系統(tǒng)拿到這些提示后再疊加自己的調(diào)度策略做最終決定。這層協(xié)作機制是整個混合架構(gòu)能否跑好的關(guān)鍵也是各家實現(xiàn)差異最大的地方。理解它的工作方式對你排查問題很有幫助。舉個真實的例子我在一臺混合架構(gòu)機器上編譯一個大項目用make -j全核并行。理論上應(yīng)該比純 P 核機器快但實測慢了 15%。查下來原因在于編譯器在某些源文件上會使用寬向量指令而這些線程一旦被遷到不支持該指令集的小核上就要走軟件的兼容路徑速度掉一大截。操作系統(tǒng)雖然有補償機制會盡量避免把這類線程遷走但在負載劇烈波動時還是會發(fā)生。解決方案很簡單把編譯任務(wù)限制在 P 核上跑。做完之后不僅速度快了波動也消失了。另一個常見癥狀是頻率不一致導致的時間測量失真。你在兩個線程里各跑一遍同樣的計算一個落在 P 核上花了 100 毫秒另一個落在 E 核上花了 180 毫秒如果你的程序用誰先完成來做邏輯判斷就會產(chǎn)生完全不可復現(xiàn)的行為。這類 bug 極難定位因為它在純同構(gòu)機器上永遠不會出現(xiàn)。我的建議是凡是依賴執(zhí)行速度做判斷的邏輯比如超時閾值、競爭選舉、負載均衡策略都必須顯式地在代碼里做歸一化或者干脆用邏輯時鐘替代物理時鐘。最麻煩的場景是虛擬化。虛擬機里通??床坏胶诵念愋偷膮^(qū)分宿主機的調(diào)度器把 vCPU 映射到哪種核上客戶機完全不知情。這就造成了一個典型的性能謎題同樣的鏡像、同樣的配置兩臺宿主機上的性能差 20%。要解決只能在宿主機層面做綁定把關(guān)鍵虛擬機的 vCPU 釘在 P 核上或者至少保證同一個虛擬機的 vCPU 落在同類核上。3. 把拓撲照出來四類命令快速摸清自己的機器理論講完了落到手上。每次接手一臺新機器我做的第一件事永遠是摸拓撲因為這個動作成本極低但能避免后面一大堆誤判。下面這幾條命令覆蓋了從有哪些核到Uncore 在干什么的全部信息順序建議照著我寫的來因為信息是逐層深入的。3.1 一分鐘看清核心布局第一條命令是lscpu輸出里會直接列出架構(gòu)、物理核數(shù)、邏輯核數(shù)、NUMA 節(jié)點數(shù)和緩存層級?;旌霞軜?gòu)的機器上你會看到每核線程數(shù)這一項不統(tǒng)一——如果它顯示 1同時核數(shù)等于線程數(shù)那很可能全是 E 核或者關(guān)了超線程如果物理核數(shù)和邏輯核數(shù)的比值不是整數(shù)倍關(guān)系那基本可以確認是混合架構(gòu)。接著用擴展模式拿到更細的信息lscpu -eCORE,SOCKET,NODE,MAXMHZ,MINMHZ,L1D:L1I:L2:L3,ONLINE這條命令的輸出是逐邏輯 CPU 一行的表格。判斷哪些是 P 核最直接的方式是看MAXMHZ列——P 核的最高頻率通常比 E 核高出 40% 以上一眼就能分出來。另一個線索是CORE列如果兩個邏輯 CPU 共享同一個 CORE 編號說明它們是一對超線程兄弟而這種情況只會出現(xiàn)在 P 核上。如果你想要更圖形化的呈現(xiàn)用lstopo-no-graphics屬于 hwloc 工具集。它會把 NUMA 節(jié)點、緩存層級、每個核的兄弟關(guān)系畫成樹狀結(jié)構(gòu)還能顯示每個核到內(nèi)存控制器的距離關(guān)系。我在做跨節(jié)點性能分析時基本離不開它因為只有這張圖能直觀地告訴你這兩個核共享什么、不共享什么。再補一條常被忽略的查看超線程兄弟對的具體編號。for i in $(seq 0 $(($(nproc)-1))); do echo cpu$i - $(cat /sys/devices/system/cpu/cpu$i/topology/thread_siblings_list) done輸出里每一對相同的數(shù)字就是一對兄弟。做延遲敏感型綁核時這個信息決定成敗因為把兩個高負載線程放到一對兄弟上它們會爭搶同一個核的執(zhí)行單元實測性能損失能到 30%。更隱蔽的是有些機器的編號排列不是0-1 是兄弟而是0-8 是兄弟你憑直覺寫taskset -c 0-1恰好就把兩個線程塞進了同一個核。3.2 從 sysfs 里讀出 Uncore 與頻率域/sys/devices/system/cpu/這個目錄是臺金礦。幾個必看的位置# 每顆核支持哪些頻率檔位 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies # 當前的調(diào)頻策略powersave / performance / schedutil 等 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor # 緩存共享關(guān)系判斷哪些核共享 L2 cat /sys/devices/system/cpu/cpu0/cache/index2/shared_cpu_list最后一條特別有用?;旌霞軜?gòu)上P 核的 L2 是每核獨享的shared_cpu_list只有自己而 E 核成簇共享 L2shared_cpu_list會列出同簇的所有邏輯 CPU。這樣你不用猜直接就能讀出 E 核的簇劃分。我在做線程池親和性設(shè)計時會直接把同一簇的 E 核作為一組讓組內(nèi)的線程共享數(shù)據(jù)結(jié)構(gòu)跨組只做粗粒度通信這個改動在一個數(shù)據(jù)聚合服務(wù)上帶來了約 12% 的吞吐提升。Uncore 頻率的讀取在較新的內(nèi)核上有專門的 sysfs 節(jié)點路徑包含uncore_frequency字樣里面通常有min_freq_khz、max_freq_khz、current_freq_khz這幾個文件??梢灾苯訉憁ax_freq_khz來鎖定上限這是免進 BIOS 就能調(diào) Uncore 的最省事的方式。實時監(jiān)控我推薦turbostat它輸出的表格里有Bzy_MHz核心實際頻率、UncMHzUncore 實際頻率、PkgWatt整包功耗這幾列。盯著Bzy_MHz和UncMHz的比值看就能判斷當前負載是卡在核心上還是卡在 Uncore 上。經(jīng)驗值是這樣的如果Bzy_MHz已經(jīng)跑到接近規(guī)格上限而UncMHz穩(wěn)定在額定值說明是算力瓶頸如果Bzy_MHz忽高忽低、UncMHz也有明顯波動那大概率是共享資源在搶。3.3 PMU 事件把 Core 和 Uncore 的賬分開算性能計數(shù)器是分清兩層界限的終極手段?,F(xiàn)代處理器的 PMU 分為兩部分核心內(nèi)的計數(shù)器用來數(shù)周期、指令、分支預(yù)測失敗、L1/L2 訪問Uncore 的計數(shù)器用來數(shù)內(nèi)存控制器吞吐、LLC 命中與缺失、互連總線流量。在perf里這兩套事件的命名前綴不一樣以uncore_開頭的都屬于 Uncore 側(cè)。先看有哪些可用的perf list | grep -i uncore你會看到諸如內(nèi)存控制器的讀帶寬、寫帶寬、LLC 查找次數(shù)、跨片互連流量這類事件。數(shù)量不多但每一個都直指共享資源的供給能力。接下來的典型用法# 核心側(cè)IPC 和緩存效率 perf stat -e cycles,instructions,branches,branch-misses,L1-dcache-load-misses,LLC-load-misses -p pid # Uncore 側(cè)內(nèi)存帶寬事件名視平臺而定照 perf list 的輸出替換 perf stat -e uncore_imc_0/cas_count_read/,uncore_imc_0/cas_count_write/ -a sleep 5第一次跑的時候要注意兩個坑。第一Uncore 事件通常是整包級別的需要-a全系統(tǒng)模式不能只看單個進程因為它統(tǒng)計的是共享硬件的行為沒法歸因到某個進程上。第二在虛擬機里這些計數(shù)器絕大多數(shù)是禁用的你看到event not supported是正常的別浪費時間排查。有了這兩組數(shù)據(jù)判斷路徑就很清楚了。用下面這張表做個快速索引觀測到的現(xiàn)象判斷方向下一步動作IPC 低L1 未命中率高算法訪存模式差優(yōu)化數(shù)據(jù)結(jié)構(gòu)提高局部性IPC 正常LLC 未命中率高工作集超過 LLC分塊處理或做緩存隔離LLC 未命中率正常內(nèi)存帶寬接近上限Uncore 供給不足提 Uncore 頻率、加通道、改 NUMA 策略指令數(shù)突增但周期數(shù)沒變走了兼容路徑檢查是否被調(diào)度到不支持某指令集的核上核心利用率低Uncore 流量高數(shù)據(jù)搬運開銷大減少跨節(jié)點訪問檢查互連流量我排查過一個程序變慢但 CPU 不滿的案例最后就是靠第三行定位的LLC 未命中率在正常范圍但內(nèi)存控制器的讀帶寬已經(jīng)打到了理論上限的 92%。也就是說 Core 本身效率沒問題是 Uncore 喂不飽這么多個 Core。這種時候唯一有效的方案是把工作集縮小到能放進 LLC 的尺寸或者干脆減少并發(fā)核數(shù)——聽起來反直覺但并發(fā)變少后每個線程拿到的帶寬更多總完成時間反而縮短了。4. 綁核不是萬靈藥把線程放到對的位置上綁核這個動作被用錯的頻率遠高于被用對。我看到過太多人一遇到性能抖動就加taskset結(jié)果把本來是負載不均衡的問題變成了資源閑置。綁核的本質(zhì)是控制變量你放棄了調(diào)度器動態(tài)調(diào)整的自由度換取確定性。所以只有在確定調(diào)劑動態(tài)性是干擾源的時候綁核才是正解。判斷標準很簡單如果你的問題是數(shù)值不可復現(xiàn)綁核有用如果問題是整體不夠快綁核通常沒用甚至有害。4.1 延遲敏感型任務(wù)的標準姿勢在線服務(wù)、交易系統(tǒng)、實時數(shù)據(jù)處理這類任務(wù)的核心指標是 P99 而不是平均值。它們最怕的東西是意外——意外的遷移、意外的搶占、意外的緩存失效。針對這類負載我用的標準配置是這樣的# 1. 選出 P 核避開超線程兄弟對 # 假設(shè) P 核是 cpu 0-15兄弟對為 (0,8) (1,9) ... # 只取每對的第一個得到 0-7 # 2. 綁核 綁內(nèi)存節(jié)點 taskset -c 0-7 numactl --membind0 ./service # 3. 把中斷挪到 E 核上避免打斷關(guān)鍵線程 echo 16-23 /proc/irq/default_smp_affinity_list這三步的順序很重要我分開解釋為什么。第一步只取每對超線程的第一個是因為同一對兄弟共享執(zhí)行單元和 L1/L2讓兩個高負載線程擠在一對兄弟上效率損失比多用一個物理核大得多。第二步把內(nèi)存綁定到本地節(jié)點是為了避免跨節(jié)點訪問——跨節(jié)點的一次內(nèi)存訪問延遲能從 80 納秒漲到 140 納秒以上對延遲敏感型任務(wù)這是致命的。第三步把中斷趕走是因為一個中斷處理看起來只有幾微秒但它會污染目標核的 L1/L2讓后面幾百微秒內(nèi)的緩存全部失效。第三步的收益經(jīng)常被嚴重低估。我在一個消息處理服務(wù)上做過對照其他條件不變只把網(wǎng)絡(luò)中斷從業(yè)務(wù)線程所在的核上挪走P99 延遲從 4.2 毫秒降到 1.8 毫秒降幅超過一半。原因就是中斷處理會沖刷緩存而緩存預(yù)熱需要時間。這個改動的成本幾乎為零收益卻非??捎^我建議所有延遲敏感型服務(wù)都檢查一遍。還有一個進階手段用 cgroup 的 cpuset 做隔離比taskset更徹底因為它能防止其他進程被調(diào)度到這些核上。新版 cgroup 里可以給 cpuset 設(shè)置獨占分區(qū)效果類似于內(nèi)核啟動參數(shù)里的核隔離但不需要重啟。容器化部署時這個方案特別合適因為隔離策略可以跟著容器一起聲明。4.2 吞吐型任務(wù)別急著關(guān) E-Core另一個極端是把 E 核全部關(guān)掉。這個做法的動機可以理解——消除異構(gòu)性讓性能可預(yù)測。但我實測下來在吞吐型負載上關(guān)掉 E 核基本是凈虧損。做過一組對比一個日志分析和聚合的批處理任務(wù)在全核含 E 核上跑用 42 秒關(guān)掉 E 核只用 P 核跑用 51 秒。也就是說那些慢核貢獻了 18% 的吞吐白扔掉很可惜。正確的做法不是關(guān)核而是讓任務(wù)匹配核的特性。我給這類任務(wù)設(shè)計線程池時的策略是這樣的主控線程和 I/O 線程放在 P 核保證響應(yīng)速度工作線程按批次分發(fā)給 E 核因為它們做的是純計算、無依賴、可并行的活。這樣既拿到了 E 核的數(shù)量優(yōu)勢又不會因為調(diào)度錯位而拖慢關(guān)鍵路徑。具體實現(xiàn)上可以用兩個獨立的任務(wù)隊列配合不同的親和性設(shè)置# 主控 IO 線程池 taskset -c 0-3 ./app --io-threads4 # 計算線程池綁到 E 核簇上假設(shè) E 核是 16-23 taskset -c 16-23 ./worker --concurrency8這里有個細節(jié)E 核的簇劃分要和線程數(shù)對齊。如果 E 核是 4 核一簇、共兩簇那綁 8 個線程是合適的如果你綁 6 個就可能出現(xiàn)某一簇被塞了 4 個、另一簇只有 2 個的不均衡情況實際性能比綁 4 個還差。這個坑我踩過一次線程數(shù)從 8 改成 6 之后吞吐掉了 20%查了很久才發(fā)現(xiàn)是簇內(nèi)競爭導致的。還有一類任務(wù)特別適合 E 核長時間運行但不追求單次速度的后臺任務(wù)比如日志輪轉(zhuǎn)、索引合并、緩存預(yù)熱、健康檢查。這些任務(wù)的特點是優(yōu)先級低、可以容忍延遲、但數(shù)量多。把它們綁到 E 核上既釋放了 P 核又避免了它們被調(diào)度器到處搬來搬去打擾關(guān)鍵業(yè)務(wù)。4.3 中斷、容器與虛擬化里的三個坑第一個坑是容器的 CPU 限制和親和性沖突。給容器設(shè)了--cpus4之后運行時會在宿主機層面做帶寬限制但如果你同時又在容器內(nèi)用taskset綁了 4 個核而這 4 個核恰好跨了 NUMA 節(jié)點那你既失去了調(diào)度的靈活性又引入了跨節(jié)點訪問。我建議容器場景只保留一套約束要么用 cpuset 做硬綁定同時解決配額和親和性要么只做配額限制讓調(diào)度器自由發(fā)揮。兩套機制疊加是最容易出問題的組合。第二個坑是虛擬機的 vCPU 與物理核錯配。有些平臺默認把 vCPU 均勻打散到所有物理核上這在混合架構(gòu)下會導致同一個虛擬機的 vCPU 有的在 P 核有的在 E 核客戶機內(nèi)部看到的同構(gòu)多核其實是假的。表現(xiàn)是客戶機里的并行程序性能波動極大而且無法通過客戶機內(nèi)部的任何手段解決。方案是在宿主機層面配置親和性規(guī)則保證同一個虛擬機的 vCPU 落在同類核上。這個改動在編排層面做一次就行屬于一勞永逸的收益。第三個坑是中斷親和性與綁核的隱性沖突。你在業(yè)務(wù)線程上做了綁核但中斷控制器仍然可能把中斷送到這些核上尤其是當你只綁了幾個核而系統(tǒng)有幾十個核的時候中斷分布會很不均勻。檢查方式是看/proc/interrupts里每個核的中斷計數(shù)如果發(fā)現(xiàn)某個核的計數(shù)遠高于其他核那就是沒配對。修復方式是把中斷親和性顯式設(shè)置為不包含業(yè)務(wù)核的那組 CPU。這個動作在壓測前做一次能消除相當一部分的延遲毛刺。5. 三個真實抖動案例的排查鏈路光講原理容易飄我挑三個自己實際處理過的案例把完整的排查路徑攤開。這三個案例的共同點是表面癥狀相似都是變慢但根因分別落在 Core 層、Uncore 層和調(diào)度層處理方式完全不同。我特意保留中間走過的彎路因為排查過程本身就是最有價值的部分。5.1 案例一單線程程序越跑越慢現(xiàn)象一個計算密集的單線程任務(wù)跑第一次用 30 秒第二次 33 秒第三 次 37 秒重啟進程后又回到 30 秒。這個模式非常反常因為純計算任務(wù)不應(yīng)該有累積效應(yīng)。第一反應(yīng)是內(nèi)存泄漏或者 GC 壓力但監(jiān)控顯示內(nèi)存平穩(wěn)。第二步懷疑降頻用turbostat盯著看果然發(fā)現(xiàn)了問題任務(wù)運行 30 秒后核心頻率從 4.2GHz 掉到 3.4GHzPkgWatt也接近了功耗上限。也就是說散熱或者功耗墻在起作用。但故事沒結(jié)束。如果只是撞功耗墻為什么重啟進程就好了繼續(xù)往下查發(fā)現(xiàn)是另一個原因疊加這個程序在運行過程中不斷分配新內(nèi)存雖然邏輯上釋放了但分配器沒有歸還給操作系統(tǒng)導致工作集持續(xù)增長LLC 命中率從 85% 一路掉到 40%。頻率下降和緩存失效兩個因素疊加才造成了這個線性變慢的曲線。修法分兩步。針對功耗墻這屬于硬件限制能做的只有改善散熱或者降低期望針對緩存失效把內(nèi)存分配器換成了會主動歸還內(nèi)存的實現(xiàn)并且在批處理邊界上顯式觸發(fā)一次整理。改完之后曲線變平了穩(wěn)定在 31 秒左右。這個案例的教訓是癥狀是單一的原因往往是復合的查到第一個原因就停下很容易做出錯誤的歸因。5.2 案例二內(nèi)存帶寬上不去CPU 利用率卻不滿現(xiàn)象一個多線程數(shù)據(jù)處理任務(wù)理論帶寬需求約 60GB/s實測只跑到 38GB/s同時 CPU 利用率卡在 55% 上不去。加線程數(shù)沒用提高到物理核數(shù)的兩倍還是一樣。這次的排查路徑走的是 Uncore 側(cè)。先算理論值雙通道 4800MT/s上限 76.8GB/s實測 38GB/s 只有一半明顯不正常。然后用perf看 Uncore 事件發(fā)現(xiàn)內(nèi)存控制器的讀帶寬計數(shù)和實際業(yè)務(wù)量對得上說明請求確實發(fā)出去了。那問題就在請求的路上。下一步看 NUMA 分布用numactl --hardware和每個線程的本地節(jié)點命中率。發(fā)現(xiàn)有一半的線程分配的內(nèi)存落在了遠端節(jié)點上因為分配策略是默認的本地優(yōu)先但進程啟動時所在的核和后來實際運行的核不在同一個節(jié)點。遠端訪問會走互連總線帶寬受限于互連而不是內(nèi)存控制器。修法就是顯式綁定numactl --cpunodebind0 --membind0 ./app或者更細粒度地用--interleave交錯分配讓每個線程的訪問都有一部分在本地。改完之后帶寬從 38GB/s 漲到 62GB/sCPU 利用率也跟著上到了 88%。這個案例說明一件事帶寬上不去不一定是物理限制很可能是流量走錯了路。而流量路徑這個問題在 Core 層面完全看不出來。5.3 案例三壓測數(shù)字忽高忽低復現(xiàn)不了現(xiàn)象同一個壓測腳本連續(xù)跑十次吞吐量在 8000 到 12000 QPS 之間隨機波動沒有任何規(guī)律。這種問題最讓人頭疼因為它意味著你無法驗證任何優(yōu)化是否有效。排查的第一步是消除變量。先把線程數(shù)固定、綁核、綁 NUMA跑十次波動范圍收窄到 9000-11000但沒消失。說明還有別的變量。繼續(xù)查用turbostat記錄每次運行時的頻率曲線發(fā)現(xiàn)高頻運行的那幾次Bzy_MHz普遍更高而且波動更小。這就把矛頭指向了調(diào)頻策略。再往下看問題出在調(diào)頻策略的響應(yīng)速度上。默認的策略是按需調(diào)頻它根據(jù)最近的負載歷史決定頻率。壓測啟動的瞬間負載突然拉滿但策略需要幾百毫秒才能把頻率拉上去如果這期間恰好有另一個短暫的空閑窗口頻率又會被拉下來。每次運行的時機不同落在這個上升沿的位置就不同于是數(shù)字隨機波動。修復方式很直接把調(diào)頻策略切成固定性能模式。cpupower frequency-set -g performance改完之后波動范圍收窄到 9500-10200 QPS可以接受。代價是待機功耗上升但對壓測環(huán)境來說這個代價可以忽略。這個案例我印象很深因為它教會我一件事在混合架構(gòu)上做性能測試第一件事是把所有能自動變的東西固定住。頻率、綁核、NUMA、中斷親和性全部固定之后你才能開始測真正想測的東西。否則你測到的只是各路自動策略的隨機組合。后來我把這套流程固化成了一個測試前的檢查腳本每次壓測前先跑一遍把不確定因素全部消除。這個習慣讓我的測試數(shù)據(jù)可信度提升了一個檔次也避免了很多改了半天沒效果的無效工作。6. 一份可以直接抄的調(diào)優(yōu)清單與幾個反直覺結(jié)論寫到這里把可操作的東西收斂成一份清單你照著檢查一遍就行不用每次都從頭推。第一步永遠是定位分層。跑lscpu和turbostat看Bzy_MHz和UncMHzIPC 高不高LLC 未命中率高不高。這一步?jīng)Q定后面往哪個方向使勁。第二步摸拓撲用lscpu -e和thread_siblings_list把 P 核、E 核、超線程兄弟對、E 核簇的劃分全部列出來寫在紙上。第三步改配置按負載類型選方案延遲敏感就綁 P 核、避開兄弟對、綁本地節(jié)點、挪走中斷吞吐型就全核開跑、主控放 P 核、工作線程按簇綁 E 核。第四步驗證改一項測一項別一次改五個地方然后不知道是誰起的作用。幾個我認為最值得記住的反直覺結(jié)論。E 核不一定更省電只有在多線程滿載時才體現(xiàn)能效優(yōu)勢單任務(wù)放上去反而更耗電。Uncore 頻率的影響遠大于多數(shù)人的預(yù)期內(nèi)存密集型負載下調(diào)整它能帶來十幾個百分點的差異而 Core 頻率往往已經(jīng)撞墻了。綁核是控制變量的手段不是提速的手段用來消除波動有效用來提升峰值通常無效。IPC 是比頻率更可靠的性能指標頻率可以做得很漂亮但 IPC 騙不了人。最后分享一個我一直在用的小技巧給機器建立一份性能基線檔案。在干凈的、空載的狀態(tài)下跑一遍標準負載可以是固定的編譯任務(wù)、固定的數(shù)據(jù)處理腳本記錄下耗時、IPC、內(nèi)存帶寬、各層緩存命中率。以后任何一次性能異常都拿這份基線做對比能在一分鐘內(nèi)判斷出是哪一層退化了。這份檔案我建議跟著機器走而不是跟著人走因為基線的價值恰恰在于它的穩(wěn)定性和可比性。真正把 Core 和 Uncore 分開看之后我最大的收獲不是學會了調(diào)幾個參數(shù)而是形成了一個條件反射看到任何性能問題先問這是執(zhí)行的問題還是供給的問題。這個二分法幾乎適用于所有場景包括那些看起來跟 CPU 完全無關(guān)的場景。想清楚這一層剩下的都是查文檔和試參數(shù)的體力活。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
女人双腿搬开让男人桶| 欧美.亚洲.另类.丝袜.制服.诱惑| 伊人久久大香线综合无码| 大鸡巴久久| 六月激情网| 欧美天天射| 啊啊啊啊啊啊在线看| 日本大香蕉综合网红本杳社区| 久久免费精品视频免一| 亚洲 欧美 日韩另类 麻豆| 欧美性爱精品一区二区| 久久日韩肥臀| 97干在线看| 搡老熟女免费视频| 乱子伦一区二区三区国产精品| 韩国一级AAA| 久久久男人的天堂| 乱伦熟女区| 国语精品av| 亚洲国产麻豆一区二区三区| 久久精品高清无码一区| 九九这里只有精品| 精品国模无码| 97超碰中文| 丁香六月激情综合| 中国国产精品一区视频| 成人性交免费视屏| 伊人国产视频| 美女刺激久久国产欧美| 亚洲一区在线观看欧洲| 久久成人精品| 国产肏屁眼视频| 99久久99九九99九九九| 一级性爱视频免费观看 | 精品黄色电影| 搞中出视频在线观看| 十八禁视频网站| 国产精品午夜AV完会免费 | 天天看天天在线精品| 四虎在线免费视频| 人妻一区二区三区| 97色色婷婷| 国产午夜在线观看视频| 国语少妇精| 亚洲天堂第一页| 婷婷五月天色色| 你懂的在线观看区国产| 国产综合久| 天天做天天爱天天爽AV| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 亚洲97| 99re热| 啊a一区在线| 97人人模人人爽人人| 中文字幕丰满子伦无码专区在线视频最新| 免看60秒涩涩视频| 人人搡人人肉久久精品| 人妻插插人妻人| 色一情一乱一乱一区91Av| 岛国黄片网站| 免费试看60秒| 天天操妹子| 中字一区| 天天看特黄的免费网站| 国产av高清版| 9/A片| baisiav| 亚洲有码 视频一区| 激情综合亚洲| 97国产高清视频在线观看| 在线视频亚洲无码| 2023天天操夜夜操| 亚洲无码 国产无码| 97在线免费观看| 欧美综合1性辶| 情色五月天就去干| 98超碰欧美| 国产女主播视频在线观看| 色超碰综合| 91 亚洲情侣偷拍 久久| 午夜福利在线视频1000| 欧美性,亚州色| 天天透伊人| 欧洲免费一区二| 宅男91视频在线播放| 国产精品久久久久绯色| 精品小视频在线| 台湾大香蕉99热| 美欧老女人97| 九九九九免费高| 蜜臀aV午夜一区二区三区| 亚洲精品国产熟女久久久| 亚洲自拍青操视频| 96久久久久久久| 亚州综合色| 一级毛片电影免费看| 亚洲AV色图一区| 美女91网址| 亚洲精品人体| 国产强奸乱伦xd| 天天操人人操狠狠插| 乱伦av麻豆| 国产乱码精品一区二区三区四川| 九九色图| 青青草色情网站视频| 色偷偷男人的天堂麻豆| 亚洲素人综合| 97干97色| 六十路日本| 中文字幕日产av人| 999熟女精品| 国产欧美另类久久久精品课程| 亚洲人久久久久日| 2018天天日天天日| 自偷自拍的亚洲视频| 99999精品视频| 久久久网一区| 亚洲国产精品成人久久蜜臀| 亚洲 日本 国产 综合| 国产精品一区二区 尿失禁| 又大又长又爽| 亚洲天堂资源| 色黄污美女啪啪啪免费网站| 在线黄页看毛片| 亚洲欧美日韩电影网站一区| 香蕉视频精品亚洲一区二区三区在线播| 亚洲黄片免费在线播放| 99久久久99久久91熟女| 97综合久第一页| 亚洲?V无码专区在线电影| 69少妇一区二区| 亚洲无码色| 97这里都是精品| 天堂性色| 精品一区二区成人| 无码人妻丰满熟妇奶水区毛片| 91制服丝袜| 涩涩涩综合| 五月婷婷丁香| 91亚洲狠狠色| 成人色女网| 污到发麻的视频 国产| 日日夜夜青青草母狗| 97亚洲综合在线| 青娱乐国产精品| 116美女午夜| 97情超碰色| 国产人妻精品一区二区三区秋霞 | 人妻天堂综合网| 亚洲少妇自拍中文字幕懂色| 日韩黄色一区二区三区| 日韩电影免费网站麻豆视频| 大香蕉专区| 久久精品一区| 91伊人久| 人妻丝袜肏逼| 91足交| 久神马| 囯戸精品高潮呻吟旡码| 狠狠干狠狠干| 精品人妻一区二区免费蜜桃视频| 操碰91| 大香蕉伊人75| 偷拍欧美综合| 涩综合导航| 久久久久密臀一区二区| 欧洲欧美视频一区二区| 制服丝袜第二页| 在线综合色| 性感美女啊啊啊在线| 久操com| 97精品国产精品免费观看| 日韩人妻有码免费视频| 亚洲美女黄色| 婷婷久久五月| 亚洲色图欧洲| 伊人国产av| 久操凹凸视频| 天天综合网合集91| 日本福利社| 久久专区| 男人精品天堂一区| 99热这里只有精| 九九九九精品| 天天躁狠狠躁av| www.91久久| 久久超碰97| 91综合国产精品| 9999免费精彩视频| 三男一女不戴套的A片| 精品人妻一区二区乱码一区二区| 欧美成人性爱视频免费观看 | 老熟女91av| 国产精品一区二区久久精品| 日日骚一区二区三区| 水澄无码AV| 多毛小伙内射老太婆| 色婷婷A V一二三四区麻豆综合| 日本有码影片下载| 天天视频黄网站| 欧美天天干| 亚洲性猛交| 337p大胆噜噜噜噜噜91Av| 蜜臀久久99精品久久久久久-DVD原版全| 欧美日韩精品国产91| 人妻av在线| 嗯啊抽插大香蕉网页| 超碰美女97| 九九九九九九九九九五码| 亚洲欧美精品福利在线| 极品欧美一区二区三区| 精品一区二区三区18| 性性久久| 大香蕉AV丝袜| 成人丁香五月| 在线中文字幕极品av| 2017av无码免费无线播| 麻豆天天躁天天揉揉AV| 中国熟女网站| 91久久精品国产| 能直接看AV的网站| 国产精品成人无码a v毛片| 999精品乱码| 精品久操| 大香交| 久久久91福利姬| 熟妇一区二区| 爱妃国产亚洲视频中文字幕| 中文字幕亚洲在线一区| 91精品人妻偷情| 中文字幕黄色一起草| 一区二三区四区视频大全套| 婷婷精品国产一区二区三区日韩| 91久热这里只有精品| 爆操无码| 桃花色涩综合影院| 顶级丝袜熟女一区二区三区| 亚洲欧洲综合av在线| 岛国在线国产| 嫩草美女久久| 99这里只有精品国产| 国产真乱mangent| 成人线上超碰| 你懂的在线观看区国产| 精品国产三级av韩国在线| 欧美性爱精品七区| 无码久久国产| 370p日韩欧美亚洲精品| 先锋色眉乱伦资源| 国产精品成人无码av无码免费| 色就色综合| 国产精品区在线12p| AV一起草在线| 亚洲色综网| 久久视频,这里只有精品| 97超碰久| 国产精品一二三| 亚洲久草AV色图| 另类天堂| 不卡中文字幕aⅴ在线| 伊人久久在线视频观看| 午夜高清成人在线视频| AV天堂电影网| 欧美黑人日韩少妇色情| 亚洲中字幕日本一区二区三区| 日本欧美韩国国产在线| 久/久精品99看9| 五月天伊人| 91欧美少妇| 日韩猛交| 日韩免费看黄片| 精品 码产区一区二-1080P高清在线www-B029AV | 丁香六月激情| 中文字幕AV片| 色狠狠一区二区三区香蕉| 96久久久久| 韩国黄片aaaa| 欧美一二三区四五区| 免费男人的天堂| 自拍偷拍第26| 超碰久热| 亚洲亚洲亚洲天堂天堂| 黄色免费网| 色色国产| 天天日骚逼熟女| 69XX一中文字幕人妻91| 国产强奸超碰AV| 欧美爆操91| 亚洲一区二区中文字幕| 欧美日韩国产高清在线一二三区| 久久久久国产| 在线色导航| 天天日日日射| 色香伊人| 777超碰| 岛国色情视频在线观看| 狠狠干综合| 欧美精品久久96人妻无码| 国产青青综合伊人| 无码精品久久久久久亚洲| 思思热久久成人| 久久性爱视频| 欧洲亚洲人妻无码中字久久三区四区 | 久久久久性熟视频| 国产av热热色| 韩国一级AAA| 久久综合久色欧美综合狠狠 | 欧美人黑A片无码免视费| 亚洲色欲天天人妻无码系列专区| 草B在线| 精品人体无圣光凹凸| 久久久久久久久久va| 五月丁香激情综合| 精品乱码久久久久| 伊人国产成人av网站| 亚洲情色一区二区三区| 亚洲欧洲综合视频在线| 精品久久无码午夜福利| 色性综合| 在线女人91| 人妻人久久精品中文字幕| 天天cao在线| www.91逼逼.com| 混色激情av| 色大香蕉97N| 亚洲精品久久久久毛片A片拉屎| 日本护士高潮| 97 超碰 人人做 人人爱| 久久人妻四季| 蜜桃视频成a人v在线| 最新制服中文第一页| 国产熟女一区二区丰满| 超碰色男人操熟女| 91精品微拍福利| 色色热| 日本一区二区三区四区五区六区七区八区九区| 91处女在线视频| 日本一区二区电影网站| 久久精品国产亚洲av水密被窝| 精品国产72| 亚洲中文国际强奸字幕| av毛片aaaaa免费看| 97精品97久久| 太久视频| 美女久久久久久久久久久| 伊人一区二区在线播放| 国产精品人妻免费精品| 夜夜肏2021| 碰超人人在线一区二区三区| 91精品伊人久久久大香线蕉91| 中文字幕日韩人妻视频一区二区三区| 免费观看国产小粉嫩喷水精品午| 人妻81p| 国产对白刺激视频| 亚洲AV无码国产精品久久久久| 麻豆 亚洲 97| 国产超碰AV在线精品| 男人的天堂一区三区| 中文字幕久久亚州无码| 约操熟妇| 激情人妻另类| 亚洲 欧美日韩 另类| 青青草无码视频| 国产99精品一区二区三区免费| 亚洲五区熟女| 成人自拍三级在线观看| 97干色天堂| 免费中文综合精品| 超碰97男人| 日韩黄片影院| 理论久久婷婷网8| 97国产伦理| 色眯眯射| 在线黄页看毛片| 亚洲国产美女久久久久| 五月激情影院| 美女t无毒不卡不卡| 精品国产久热在线观看| 超碰精品97| 丁香五月天堂| 密臀视频三区免费网站| 久热免费视频| 国产高清成人免费视频| 激情图片伦理国产一区二区日韩| 亚洲精品自拍| 久久久久久欧美精品se一二三四| 午夜精品探花| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 岛国1区2区3区在线观看| 在线啊啊啊啊| 黄色免费网| 69AV女优男人的天堂| 哈哈操 大香蕉| 99精品久久| 99在线精品观看视频中文| 99自拍视频在线观看| 97美日韩视频| 久久亚洲影院一区二区| 热思思免费视频| av亚洲天堂资源网站| 午夜福利1区2区3区| 色大香蕉97N| 韩国成人精品久久久免费看| 亚州男人的天堂| 欧美麻豆成人同性GⅤ在线| 91精品91久久久久77777| 亚洲高清少妇| 久久黄色视频一区二区三区 | 亚州欧美总和| 在线播放成人网站| 亚洲九九九九| 九九热五区| 97人妻免费中文字幕| 91九色丰满高潮| 日日碰狠狠添天天爽超| 91老熟女视频| 热热热热日日漂亮永久永久国产日| 盗摄女人妻在线| 91亚洲黄色网| 欧州色图区| 久久久久久69国产一区二区| 清纯唯美综合亚洲| 成人精品电影| 中文精品一区二去| 成人三级片一区二区三区视频| 偷拍欧美激情| 一区二区三区探花在线观看| 91精品操美女| 东京热亚洲一区二区| 伊人久久综合影院精品久久久| 色五月婷婷麻豆在| 殴美综合色88| 亚州综合网| 丝袜天堂| 色五月激情网| 97在线观看播放视频| 9美女超碰在线免费观看| 嗯嗯嗯嗯啊啊啊好紧好大| 日韩在线欧美精品一区二区| 久久精品无码不卡| 中文字幕视频在线观看一区二区| 操逼操网| 日韩一级欧美一级国产一级台湾 | 天堂av2019| 性在久久久久久| 精品一区二区三区蜜桃| 91夜色chaopeng| 国产精品午夜高潮呻吟久久av| 精品九九九九九九| 色偷偷超碰亚洲| 中文字暮97| 日韩精品 视频一区二区| 东京热双插| 亚洲男人的天堂网| 国产精品麻豆成人AV艾秋| 成年人黄色视频免费| 舔舔啊| 99re这里只有精品3| 亚洲天堂7777| 亚洲欧美国产中文视频| 欧美综合综合| 久神马| 中文字幕视频在线观看一区二区| 中文字幕 国产区| 国产午夜精品理论片一二三区区| 美女好片色日本| 夜夜爽妓女| 超碰九色| 日本色色色视频| 成人性爱免费播放| 综合亚洲网| 久久草视频污视频| 久草综合京东| 五月婷婷无码| 日本欧美亚洲高清在线看| 亚洲自拍偷拍视频在线| 99超碰网| 91国精产品| 国产农村妇女精品一| 99热最新| 牛牛aV| 日韩黄片视频试看| 大象AV在线| 噜噜噜噜久久久精品免费| 777超碰| 伦激情人妻另类人妻| 天天日天天干天天色| 91成人在线| 两女互慰AV高潮喷水在线观看| 91殴美大片| 日本欧美一区二区三区视频麻豆| 一区二三区四区视频大全套| 亚洲精品三区在线观看| 婷婷色婷婷| 久久久久九九九| 97一区二区蜜臀| 先锋精品av色鲁| 日韩视频啪啪| 久久午夜鲁丝片| 97色色色| 欧美国产婷婷久久| 日日骚av| 青青久久久| 精国久久一区二区三区98| 日韩精品人妻中文字幕有码午| 亚洲五月丁香花狠狠干一区二区三区 | 久久伊人最新网址视频| 男人的天堂一区| 99热在线只有精品| 久9爱精品| 精品中文一区二区| 亚洲视频二区| 九月AV| 东京太热久久久| 免费夜夜爱黄色视频毛片| 婷婷五月天色色| 尤物一级在线免费观看| 97摸视频| 欧美日韩岛国大片在线观看| 国产精品成人蜜臀AV在线| 亚洲欧美国产成人综合不卡| 国产 亚洲 丝袜 制服| 色狠狠 - 百度| 欧美αv.com| 激情抓乳插进去啪啪啪日韩| 国产精品 久久久精品一牛| Sekablack无码一区| 日韩一区二区精彩视频| 国产精品成人久久一区二区三区| 三男一女不戴套的A片| 中文字幕久久婷婷丁香五月天| 91丝袜在线观看| 毛片久久| 国产精品久久久久久久电影渣男| 国产亚洲日韩欧| 人妻啪| 少妇无码av专区线| 手机在线播放国产福利| 欧美成人黄网色网站| 白嫩国模丰满一二三区| 婷婷色影院| 精品视频久久久久九九九九9999| 极品五月天噜噜| 综合国产97| 婷婷日韩一区二区三区中文字幕在线| 久久天天摸| 亚洲网自拍| 熟女AV一区| 四虎精品一区| 国产精品另类一区大香蕉| 东北女人性交| 97精品网| 内射老妇BBWX0C0CK| 国产AV色黄看到爽| 欧美一区二区三区互相| 伊人丁香五月婷婷| 综合影视国产无码| 91GD.COM| 蜜色网色哟哟| 亚洲一本色码中文字幕| 久久久久久久9最新免费视频观看| 欧美啪啪天堂| 丰满人妻一区二区三区免费| 东北少妇高潮zzzz| 国产精品色片一区二区| 亚洲欧美日韩综合在线尤物 | 中日韩免费看男女操逼大全| 午夜福利无毒不卡| 欧美综合区| 欧美天天插| 色婷婷综合久久中文字幕雪峰| 少妇内射视频| 91高清欧美| 翔田千里AV无码秘 三区| 国产黄片精品在线| 欧美婷婷五月天| 91亚洲人电影| 久久久久久久久久久久久久久久9| 亚洲影视高清第一页| 国产视频第二页| 91骚熟女| 先锋色眉乱伦资源| 在线观看av区| 91狠狠综合久久久久久| julia中文字幕在线观看| 亚洲欧美国产精品久久久久久久| 翔田千里AV无码秘 三区| 视频在线观看免费一区二区三区 | 97久久国产亚洲精品超碰热| 亚洲丝袜诱惑| 久久精品中文字幕观看| 五月丁香啪啪网| 亚洲AV无码久久精品蜜桃小说| 骚日日av| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 久草看看看| 粉嫩av平台| 日亚韩精品视频二区三| 精品区9| 色亚州人久干视频在线观看免费版| 日韩内| 中文AV制服乱伦| a在线观看| 91天天综合网,天天综合网| 亚洲青青草| 91在线观看,天天综合| 中文字幕日韩专区精品系列| 无色无码| n1038 一二三区| 亚洲影视第一页| 偷拍偷窥与盗摄视频专区| 色欲日韩欧美在线一区| 男人的天堂在线2| 亚洲日本大香蕉1| 五码视频在线观看| 91狼人| 91九九九小逼| 色妇综合网| 26uuu偷拍亚洲欧洲综合| 口爆综合网| 职场同事知名国产国产精品久久欧美日韩 | 97碰| 99热久| 欧美人人天天网| 久久综合97| 在线观看国产黄色| 免费人人搞97| 精品日韩| 另类专区在线观看| 亚熟hd视频在线| 亚洲精品久久久久毛片A片拉屎| 亚洲综合中文字幕有码| 99国产天美| 亚洲色人阁| 日韩欧美tv一区二区在线观看| 天天日老熟妇| 婷婷丁香人妻 | 人妻夜夜爽天天爽三区麻豆AV网站| 日韩性爱小视频在线观看| 日夜久久久九九九久| 大奶的诱惑| 日韩国产乱子伦App| 欧美日韩222| 96久久久久久久| A片 AV一级在线播放观看免费| 久操 高清| 日日爱99| 97人人干| 97av,com| 手机在线中文字幕国产| 国产欧美伊人| 美女黄页网站| 国产做?爰片久久毛片?片美国| 青青青艹在线视频| 乱性AV| 九九热九九热| 夜夜躁狠狠躁日日躁av| 亚洲欧洲综合视频在线| 97精选久久| 久久精品国产99精品亚洲蜜...| 欧美亚洲性爱一区二区| 久久国产乱子伦精品免费女,网站| 熟女突然公开看18禁影片| 免费亚洲国产精品久久一区| 国产精品 久久久精品一牛| 中文字幕丝袜人妻| 激情欧美97| av九九| 欧美人妖内射| 亚洲自拍天堂| 日韩ab网| 久综合国内精品自在自线| 97色97好| 欧洲亚洲国产综合在线| 欧美中文字幕一区| 秋霞一集毛片观看| 欧美亚男人的天堂| 欧美黄色手机在线观看| 午夜福利久久久噜久噜久久综合| 3PAV乱伦视频| 天天操天天射青青草| 亚洲色图综合| 日本青青草在线| 日产操逼| 97超碰天天| 国产91会所女技师在线观看| 另类 综合 日韩 欧美 亚洲| 国产a片操逼| 刺激精品视频| 乱伦熟妇一区二区| 伊人青青草久久| 无码 黑人一区二区三区| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 欧美 亚洲 偷拍自拍| 亚洲天天天| 久热91| 天天爱天天操| 97中文超碰| 久草精品国产99| 99青青草国产视频| 无码一区免费在线不卡| 人妻在线大香蕉| 国产曰批免费观看久久久| 97色诱| 一级片在线观看高清无码| 亚洲精品蜜桃久久久久久久| 精品一二三区久久AAA片| 精品少妇一区二区三区| 99久久婷婷国产综合精品草原| 97超碰大| 久久国产99精品72福利| 少妇熟女1区2区3区| 亚洲av总站| 999精品国产高清一区二区| 骚熟女吞| 青青操狠狠撩| 久久久久久无码人妻中文字幕| 日本三级大片| 精品综合久久久久久五月天| 天天影视射综合网| 天堂中文资源在线bt| 久久成人精品| 欧美 亚洲 综合 制服| 麻豆国产97在线| 日本Suv精品一区二区| 日韩色香| 亚洲自拍天堂| 久久日本熟女精品一区| 91久久久亚洲| 欧美国产有色电影| 亚洲国产高清福利视频| 欧美成人A天堂片在线观看| 欧美久久婷婷| 亚洲熟女av日韩熟女| 天美传媒AV在线| 日夜久久久九九九久| 国产懂色精品国产av| 国产精品一区二区三区免费视频| 丁香五月AV| 最新av网站在线观看| 99热大香蕉伊在线| 九月婷婷综合| 东北少妇高潮zzzz| x97av| 99色| 天天懆天天日| 后入人妻无码| 日本不卡码黄色| 91影库| 国内成人圈中文字幕无码视频| 婷婷月色| 天天弄天天操| 亚洲999综合| 日韩啪啪啪啪啪| 亚洲精品国产日韩无码AV永久免| 天天搞欧美| 嗯嗯,啊啊,国产精品| 国产91精品福利在线| 三四中文字幕| 97超碰免费人人性爱| 99爱爱| 国语对白露脸XXXXXX| 欧美精品欧美精品系列| 日韩一级二级| 一级黄色视频网| 女生久久网| 久久久久元码视频| 婷婷五月天在线观看| 欧美亚洲一级在线观看| 欧美中日韩XXXX| 操B久久| 久热99| 欧美性爱精品七区| 99热在线只有精品| 十八禁黄色成人网站观看| 婷婷综合| 国产白嫩漂亮KTV在线| 色综合天天爱去电影网| 熟女精品一区二区在线观看| 女优视频第10页| 久久性爱大全| 色婷婷色99国产综合精品| 亚洲综合草草| 欧色综合| 丁香啪啪| 乱伦图一区| 日本不卡二区| 亚洲AV不卡在线观看| 歐美一級亂黃99在綫精品| 激情综合网五月婷婷五月天| 麻豆国产97在线| 青女偷拍网| 欧美 亚洲 另类 综合| www.夜夜| 国产精品久久久无码AV网站| 久久精品国产亚洲AV先锋| 国产精品一二三| 大香蕉综合久久| 后X久久| 免费看日产一区二区三区| 欧美第一页| 人人妻人人澡人人爽人人精品浪潮| 91激情综合| 乱理日韩中文| 首页亚洲国产高跟丝袜诱惑视频| 人妻在线视频| 新久久AV| 中文字幕版| 久久一本大香蕉| 大香蕉伊人75| a一区二区三区乱码在线| 95人妻爽爽人人做人人澡| 亚洲色图大香| 偷拍盗拍亚洲色图图片| 天天综合亚在线| 亚洲一区日韩| 国产精品一级片在线看| 亚洲av无码国产精品字幕| 丝袜综合网| 国产后入清纯| 少妇内射www在线观看视频| 精品久久在线区一区| 男人夜色天堂ss| 综合激情五月丁香| 国产视频不卡在线观看| 九色精品视频导航1| 国产日韩精品suv| 国产精品视屏| 男人久久天堂| 国产精品不卡少妇白| 抽插亚洲无码| 天天综合91入口| 色综合1991| 加勒比av网| 丝袜狠狠草尤物 91| 99精品人人爽| 久久啊啊啊视频| 国产视频一区二区在线观看| 1024久久高清视频| 久操大香蕉手机视频在线看| 一级啊性爱在线视频| 欧美老妇曰批的视频| 欧美日韩国产另类综合| 人人贴人人摸| 日韩99精品视频综合区 | 亚洲少妇色| 色色五月天婷婷| 99操视频| www.99在线| 强奸xx国产| 成人婷婷丁香| 亚洲成av人片色午夜乱码| 激情综合二| 蜜乳AV网址| 日韩无码黄色片| 亚洲精品影视老司机| 老熟女乱子伦中文字幕一区二区| 91综合色噜噜| 夜夜操美女| 囯戸精品高潮呻吟旡码| 青春草莓视频在线观看网址| 色综合av综合久久| 国产午夜精品理论片a大结局| 一起草高清无码| 国产成久久综合片| 一起草三级AV电影在线观看| 波多野结衣之双飞调教在线播放| 日韩免费在线观看不卡| 99视频这有这里有精品| 欧美巨大性舒爽顶到了| 国产精品白丝在线播放| 夜夜操青青草| 色哟哟511老熟女| 精品无码久久久久久久杏吧| 999久久久免费精品国产牛牛| 97精品一区二区视频| AV和黑人在线播放| 极品尤物自安慰| 国产美女高潮叫床视频| www.色婷婷.com| 日韩AV电影网站| 91 国产丝袜在线放观看| 久草毛片电影怡| 9久精品视频在线观看| 久草线上视频免费看| 天天影视综合色| 天天综合网~91| 肏逼视频日本| 久久精品欧美一区二区三区不卡| jizzjizz欧美| 日韩午夜啪啪视频| 啊啊啊不要好疼视频| 欧美性天天影视| 99国产在线绯色一区| 日本淫穴在线| 99福利社| 色噜噜国产精品视频一区二区| 三上悠亚在线毛片91| 久久透逼视频| 亚洲乱码国产乱码精网站| 91丨九色丨东北熟女| 97国产色综合| 日韩一区二区熟女| 色男人色天堂东京热| 人妻五十路在线| 国产美女自拍视频| 日韩免费一级性爱视频| 国产美女销魂在线观看不卡| 九月丁香综合网| 激情六月婷婷| 78p欧美| 国产99999久久精品| 一二区在线观看视频| 国产中出内射一区二区| 日韩无码黄色片| 婷婷成人五月天| 日本97久久久精品| 久久久久久久久久久久黄色| 久久精品一区一起草| 蜜臀99久久精品久久久懂爱| 色yeye成人免费视频| 开心五月婷婷| 日本韩欧美在线播放a| 亚洲欧美91√| 国产无码精品久久久久久| 51一区二区三区| 91黑丝美女| 啊啊啊网站| 丁香激情网| 欧美视频第二页| 亚洲图片欧美| 国产精品一区二区三区,亚洲综合| 在线观看国产黄色| 亚洲大色堂| 九九探花视频在线观看| 六月婷婷综合| 亚洲宗合网| 秋霞Av理论一级在线| av天堂5| 日韩精品人妻中文字幕久久久| 久噜噜| 久久只有精品| 久草福利在线资源站| 成年男人的天堂| 亚洲高清欧美总合| 又黄又爽在线观看视频| 伊人午夜福利视频| 国产精品伦理| 中国女人内射6XXXXX| 亚洲aw毛茸茸在线 | 中文字幕一区 二区三四五 区日 日骚 | A片A5445444| 天天影视综合网欧美精品| 熟妇艹鸡八| 亚洲图片欧美| 天天爽天天爽| 天天综合网网欲色| 99自拍视频在线观看| 日日干夜夜操视频h| 亚洲性天堂| 香蕉人人操tv| 按摩中文字幕| 午夜在线播放| 五月综合视频| 99草精| 欧美日韩性爱无码| 欧美性,色九九| 夜夜高潮夜夜爽夜夜爱爱一区| 精品999一区二区| 日本午夜久久电影| 蜜乳AV免费观看| 黄色av片三级三级三级免费看| 蜜臀久久99精品| a级免费在线观看| 婷婷99狠狠| 麻豆色99999| 亚洲第一无码播放立川理惠| 欧美亚洲玖玖玖| 天天射夜夜操| 国产麻豆福利av在线播放| 张柏芝国产一区在线观看| 蜜臀久久99精品久久综合| 九九九久久久W精品| 日本黄大片在线观看视频| 五月激情综合网| 狠狠色一区二区中文字幕| 久久欲| 性九九九九九九| 日本十八禁免费看污网站| 96久久科窝| 欧美18 在线观看| 18一区二区三区| 9色国产精品一区粉嫩| 四虎视频在线观看| 久久综合国产精品国产| 东北老熟女| 日本不卡卡一区| 美日韩成人| 中文字幕视频二区| 91大学精品激情戏| 少妇高潮九九九九| 超碰夫妻97| 欧美性爱日韩性爱| 天天草AV| 五月天开心网| 狠狠97| 国产一区二区久久| A片 AV一级在线播放观看免费| 欧美草草| 亚洲精品色| 被体育老师抱着c到高潮| 91丨九色丨国产丨人妻在线| 人妻久热在线| 中文字幕三四区| AV 少妇 人妻 偷拍| 欧美操逼录像国产黄色国产| 抽插无码高清一区| 91碰碰| 国产熟女免费观看久久| 刺激精品视频| 国产精品久久久无码aV去| 亚洲色天堂日韩中| 青草一区二区| 五月天精品| 日韩九九九| 中出91| 人人妻人人爽一区二区三区| 日本三级日本三级99| 少妇人妻在线| 欧美成人性爱视频大全| 东京热AV男人的天堂| 美国日韩黄色片| 久久久久斤小| 色哟哟511老熟女| 五月天伊人| 日韩成人精品| 欧美A√综合网 | 日韩成年人性爱视频| 欧美亚洲激情小说| 最近二区三区视频大全| 久久一二三四五六七八九区区区 | 综合熟女| 日韩精品人妻| 香一区二区三区| 日韩免费一级性爱视频| 久久欧美1卡2卡3| 91丨国产丨白浆秘 洗澡动漫| 中文字幕精品丝袜| 1769国内精品视频| 亚洲诱惑| 日韩性爱免费视频在线网站| 中文日韩欧美熟| 亚欧国产无码精品在线| 欧美色图片色哟哟| 婷婷五月天成人网| 91成人无码| 美女黄页| 国产精品高清2021在线| 老司机免费视频在线91| 国产高清在线观看欧美| 免费男人的天堂| 高清无码网址| 欧美亚洲情色| 99re6久热只有精品6在线直播| 日本操逼无码| 屌妞视频久久久久久久| 日本操逼视频导航| av橘色网站| 猛交交| 日韩无码视频黄色| 好舒服视频| 亚洲一本大道中文字幕无码在线| 九九九九九九精品| 日韩pv中文| 翔田千里无码中出中文字幕| x97av| 色五月综合网| 东北毛片| 欧美中文狠| 91人人臊| 亚洲日韩美女丝袜美腿人妻视频| 97久久超碰| 伊人天堂在线| 蜜桃久久久久久久| 亚洲熟妇白浆无码AV| 亚洲AV高潮| 精品97精品97| 青青青操| 色综合中文字幕不卡| 国产亚洲一黄| 亚洲精品欧洲精品| 久久久久密臀一区二区| 91伊人久久在线| 久久精品日韩专区免费观看| 欧美激情黑人| 久草看看看| 色区97| 久久9视频| 鲁鲁色综合网| 色鬼在线综合| AV99热18这里只有精品| 日本大片日本一区二区免费高清 | 美女久久久久久久久久久| A级在线视频| 97人人射| sss视频华人在线| 99热日| 久久久久久精品免费看A级| 亚洲美女精品| 中文在线视频| 96国产精品| 日韩精品资源专区二区| 无码精品久久| 天天操天天舔| 91在线免费精品视频| 囯产操逼片| 午夜高清成人在线视频| 欧美日韩国产色图在线| 日逼国产| 26uuu性物| 深爱伊人影院| 呻吟 欧美 日本 中出| 免费视频无码| 人人操人人摸人人骑| 韩国三级理论在线| 欧美少妇熟女| 亚洲人在线| 一区二区不卡| julia在线观看久久| 2011国产精品| 99成人| 中文字幕加勒比海高清无码免费视频| 韩国久久97| 亚洲欧美日韩综合在线尤物 | 综合久久婷婷| 日韩亚洲中文字幕在线| 亚洲天堂精品日韩电影| 国产美女高潮视频| 粉嫩av久久一区二区三区| 老司机午夜精品视频| 欧美91视频| 日韩欧美操逼xxx| 日韩乱伦影音先锋| 爽极品影院| 日本高清免费一本视频在线观看| 99久在线精品99re8| 不卡在线一区,精品一区二区三区中| 91狠狠色丁香婷婷综合久久| 操逼网免费无码视频| 日韩福利电影网| 秋霞 色色| 国产在线播放成人免费| 91精品免费| 伊人网免费视频| 高清国产精品无码| 亚洲美女精品九九视频| 欧美综合第一页| 亚欧美色| 丰满熟女人妻一区二区三五十一路| 欧美日韩婷婷中文|