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

ARTICLE DETAIL

資訊詳情

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

從NCCL Ring LL到自研PCIe IPC AllReduce:單機(jī)多卡通信優(yōu)化實戰(zhàn)

從NCCL Ring LL到自研PCIe IPC AllReduce:單機(jī)多卡通信優(yōu)化實戰(zhàn) 幾個月前在調(diào)一套8卡訓(xùn)練集群的性能時我發(fā)現(xiàn)一個很反常的現(xiàn)象把某個圖像分類模型的全局batch從2調(diào)到4之后吞吐量幾乎沒漲nvidia-smi里的GPU利用率卻掉了一截。后來把訓(xùn)練步耗時拆開看梯度同步占了將近三成。也就是從那天開始我認(rèn)真去扒了NCCL底層到底在做什么也從NCCL Ring LL一路走到自己用PCIe IPC實現(xiàn)了一個定制版的AllReduce。這篇文章不是什么高深理論課而是把我從“只會調(diào)NCCL環(huán)境變量”到“自己動手寫通信原語”的完整過程寫出來。內(nèi)容包括Ring算法的搬運模型、LL協(xié)議到底優(yōu)化了什么、為什么單機(jī)PCIe場景下NCCL未必最優(yōu)、我自己實現(xiàn)的PCIe IPC AllReduce怎么設(shè)計、以及實測中兩種方案的差異和踩坑記錄。適合正在做單機(jī)多卡訓(xùn)練調(diào)優(yōu)、對分布式通信庫底層感興趣、或者想自己定制集合通信邏輯的開發(fā)者。1. 先厘清起點Ring LL在單機(jī)多卡里到底贏了什么1.1 AllReduce為什么是訓(xùn)練里的“熱車道”數(shù)據(jù)并行訓(xùn)練里每張卡算完自己的batch之后梯度必須做一次全局歸約保證所有卡拿到一致的梯度才能繼續(xù)下一步。這個操作就是AllReduce。你可以把它理解為一場考試后全班對答案的環(huán)節(jié)——每個人手上有一份自己的答案必須兩兩核對、合并出最終標(biāo)準(zhǔn)答案然后所有人再抄回去。每次訓(xùn)練step都會執(zhí)行一次所以它不是在后臺跑一次的離線任務(wù)而是實打?qū)嵳荚陉P(guān)鍵路徑上的“熱車道”。在單機(jī)8卡這種場景里AllReduce的耗時直接影響訓(xùn)練吞吐。模型越大、batch越大梯度張量越大這個時間就越刺眼。很多同學(xué)遇到訓(xùn)練慢的第一反應(yīng)是改學(xué)習(xí)率、換網(wǎng)絡(luò)結(jié)構(gòu)但真正的問題可能出在通信這塊。1.2 Ring算法為什么是環(huán)形接力賽NCCL最廣為人知的AllReduce實現(xiàn)是Ring AllReduce。它的核心思想很有意思把每個rank的梯度張量切成N份N是通信域里的rank數(shù)量然后讓數(shù)據(jù)在一個邏輯環(huán)上接力傳遞。假設(shè)有4張卡每個rank的梯度張量被切成4塊。第一步叫ReduceScatter階段每個rank把自己的一部分?jǐn)?shù)據(jù)塊傳給鄰居同時接收上一個鄰居傳來的數(shù)據(jù)塊并對兩塊做求和。經(jīng)過N-1輪傳遞后每個rank手里恰好握著一塊“所有rank在對應(yīng)位置上的歸約結(jié)果”。第二步叫AllGather階段每個rank把自己手里的最終結(jié)果塊沿著環(huán)再傳一遍所有人都收到完整的歸約結(jié)果。這個過程的通信量公式是2×M×(N-1)/N其中M是消息總大小。當(dāng)N8時每個rank發(fā)出的數(shù)據(jù)是總數(shù)據(jù)量的1.75倍理論上已經(jīng)非常接近下界。Ring之所以成為默認(rèn)算法就是因為它對帶寬的利用率高而且不依賴某個中心節(jié)點做匯聚不容易出現(xiàn)單點瓶頸。1.3 LL協(xié)議的提速本質(zhì)把“等確認(rèn)”從關(guān)鍵路徑上拿掉NCCL在Ring基礎(chǔ)上還有一個關(guān)鍵變體叫LL即Low Latency低延遲協(xié)議。很多人以為LL只是把消息切得更小其實它真正的精髓在于改變了接收端等待數(shù)據(jù)的方式。普通協(xié)議里發(fā)送方發(fā)完數(shù)據(jù)后要等接收方確認(rèn)收到才能釋放buffer繼續(xù)下一輪。這個“等待確認(rèn)”的時間長則幾十微秒短則幾微秒但對于小消息來說這個開銷可能比數(shù)據(jù)搬運本身還大。LL協(xié)議的做法是把數(shù)據(jù)切成長度很小的塊每塊數(shù)據(jù)后面緊跟一個flag標(biāo)記位。發(fā)送方寫完數(shù)據(jù)后更新flag接收方不再等待任何顯式的完成通知而是不停自旋輪詢相應(yīng)的flag地址——一旦發(fā)現(xiàn)flag變化就立刻認(rèn)為數(shù)據(jù)已經(jīng)到位可以開算。這個過程被稱為“flag-based同步”。打個比方普通協(xié)議相當(dāng)于快遞送完包裹后要等收件人簽字回執(zhí)快遞員才送下一件。LL協(xié)議則是快遞員直接把包裹扔到門口然后通過門鈴按鈕通知收件人自己繼續(xù)送下一件收件人聽到門鈴就出來取。省掉的回執(zhí)時間在小消息場景下非常可觀這也是為什么NCCL在處理小梯度消息時LL往往比其他協(xié)議明顯更快。但這里有個前置條件flag輪詢必須非常頻繁而且是忙等不是休眠喚醒。這就意味著收發(fā)雙方都需要在同一個物理設(shè)備上能看到同一塊內(nèi)存否則輪詢本身就會引入延遲。而這一點恰恰是單機(jī)PCIe場景的天然優(yōu)勢也是我后續(xù)自研方案的基礎(chǔ)。2. 我為什么覺得NCCL的Ring LL還不夠把延遲賬本拆開算2.1 賬本里有三筆錢協(xié)議狀態(tài)機(jī)、flag輪詢、內(nèi)核同步NCCL的Ring LL已經(jīng)很快了但在我的場景里還是不夠。原因不是它慢而是我看完它的工作機(jī)制后發(fā)現(xiàn)里面有些開銷對我來說不是必須的。第一筆開銷在協(xié)議狀態(tài)機(jī)。NCCL內(nèi)部有完整的狀態(tài)管理連接建立、buffer分配、傳輸進(jìn)度跟蹤、錯誤重試。這些機(jī)制在多機(jī)環(huán)境或者大規(guī)模集群里是保命用的但在單機(jī)8卡、拓?fù)涔潭?、進(jìn)程生命周期可控的場景下大部分狀態(tài)機(jī)邏輯其實是在陪跑。每一次通信都要過一遍狀態(tài)機(jī)哪怕狀態(tài)沒有變化也會在關(guān)鍵路徑上增加若干次分支判斷和內(nèi)存訪問。第二筆開銷是flag輪詢的粒度。LL協(xié)議已經(jīng)做得很快但它是通用設(shè)計需要同時適配NVLink、PCIe、網(wǎng)卡等多種硬件路徑。在PCIe上它選擇的flag更新方式和輪詢地址布局未必是針對當(dāng)前物理鏈路最優(yōu)的選擇。第三筆開銷來自內(nèi)核同步。NCCL在通信結(jié)束或者某些階段切換時仍會涉及CUDA事件、內(nèi)核launch等同步點。這些同步點保證正確性但同時會打斷GPU流水線。在我這種每步都跑AllReduce的場景里流水線被打斷的代價比想象中大。2.2 PCIe拓?fù)洳攀菃螜C(jī)多卡的真瓶頸單機(jī)多卡環(huán)境下最容易被忽略的是PCIe拓?fù)浔旧怼?張卡插在一臺機(jī)器上走的是PCIe switch或多組PCIe通道。不同卡之間的數(shù)據(jù)通路其實是有差異的有的卡對之間是直連通道帶寬高延遲低有的卡對之間要繞兩個switch帶寬受限。NCCL的Ring算法有一個隱含假設(shè)環(huán)上相鄰節(jié)點的通信代價大致均勻。但在PCIe拓?fù)湎逻@個假設(shè)經(jīng)常不成立。如果環(huán)上恰好安排了兩張卡跨越帶寬很窄的鏈路整個Ring的帶寬會被這條鏈路拖住。這也是為什么NCCL在建立通信域時會做拓?fù)涮綔y和路徑排序的嘗試但通用庫必須兼容各種奇怪的拓?fù)渥霾坏綖槟骋慌_具體機(jī)器定制最優(yōu)環(huán)序。我當(dāng)時拿工具測了一下8卡兩兩之間的實際帶寬矩陣發(fā)現(xiàn)最差鏈路的雙向帶寬只有最好鏈路的六成左右。這直接意味著Ring里的“木桶效應(yīng)”非常突出。而我后續(xù)自研的IPC方案恰恰可以在數(shù)據(jù)切分和流量分配上避開這些劣勢鏈路。2.3 更現(xiàn)實的需求可控的通信步調(diào)與自定義歸約第三個理由比較實際我想把通信的步調(diào)控制在自己手里。NCCL太“聰明”了它會根據(jù)消息大小自動選擇算法、協(xié)議、buffer策略。這在多數(shù)時候是好事但當(dāng)你需要做性能實驗、對比不同切分策略、或者把通信和計算重疊在一起調(diào)度時這種自動化反而讓人抓狂。我記得有次想固定使用Ring LL協(xié)議來做對照試驗結(jié)果NCCL根據(jù)消息尺寸自己切到了別的協(xié)議實驗數(shù)據(jù)直接沒法對齊。當(dāng)時我就想如果在單機(jī)PCIe場景下自己實現(xiàn)一個行為完全可預(yù)測的AllReduce把所有開關(guān)暴露出來是不是就能解決這類問題?;仡^看這個想法有點“造輪子”的沖動但也正是這種沖動讓我在后面幾周里對通信底層的理解上了一個臺階。3. PCIe IPC AllReduce的總體設(shè)計讓數(shù)據(jù)搬運變成內(nèi)存拷貝3.1 設(shè)計目標(biāo)在PCIe帶寬邊界附近做文章先說明這套方案的適用邊界單機(jī)多卡所有GPU都能通過PCIe互相訪問對方內(nèi)存進(jìn)程分布在同一個節(jié)點上。不適用于多機(jī)場景不適用于GPU直連NVLink全覆蓋的拓?fù)?。在這個前提下我給自研方案定了三個目標(biāo)。第一把通信開銷壓到接近純內(nèi)存拷貝的水平。PCIe上的GPU對等訪問本質(zhì)上是把數(shù)據(jù)從一張卡的顯存搬到另一張卡的顯存中間走PCIe總線。如果能繞開NCCL的協(xié)議層直接把“數(shù)據(jù)搬運”這件事做成“共享內(nèi)存讀寫”就能最大程度貼近硬件物理極限。第二同步機(jī)制要做到輕量。我選擇在GPU側(cè)用flag輪詢做同步避免CPU參與每次數(shù)據(jù)到達(dá)的確認(rèn)。這和NCCL LL的思路一致但實現(xiàn)得更“裸”只保留最基本的生產(chǎn)者-消費者標(biāo)記。第三拓?fù)涓兄牧髁空{(diào)度。我提前測出8卡兩兩之間的有效帶寬矩陣并據(jù)此安排通信環(huán)的順序和單次傳輸?shù)膲K大小而不是機(jī)械地按rank編號繞圈。3.2 通信模式拆解ReduceScatter AllGather我的實現(xiàn)依然沿用ReduceScatter加AllGather的經(jīng)典兩步拆解沒有另辟蹊徑。原因很簡單這兩步本身已經(jīng)接近通信量下界換別的模式比如二叉樹在單機(jī)PCIe場景反而會因為鏈路復(fù)用率低而更慢。具體來說每個rank把自己的梯度張量按通信域大小切成N塊。ReduceScatter階段沿著邏輯環(huán)做N-1輪收發(fā)與求和結(jié)束后每個rank持有一塊全局歸約結(jié)果。AllGather階段再把這N塊結(jié)果沿環(huán)廣播一輪最終所有rank拿到完整歸約張量。這里我做的第一個優(yōu)化是消息切分的粒度不固定而是根據(jù)帶寬矩陣動態(tài)決定。測試發(fā)現(xiàn)某些相鄰節(jié)點鏈路帶寬高就讓它多傳一些數(shù)據(jù)鏈路窄的節(jié)點對就少傳。這打破了Ring原本“每輪傳等量數(shù)據(jù)”的均勻假設(shè)雖然實現(xiàn)復(fù)雜度上升了但帶寬利用率明顯改善。3.3 共享內(nèi)存布局與IPC映射流程整個方案的根基是CUDA的IPC能力也就是讓多個進(jìn)程共享同一塊顯存。流程并不復(fù)雜但每一步都不能錯。首先由一個主進(jìn)程分配一塊GPU顯存作為通信buffer池。每個rank在這塊顯存里劃分出兩個區(qū)域data區(qū)存放實際的梯度數(shù)據(jù)分塊flag區(qū)存放數(shù)據(jù)塊對應(yīng)的完成標(biāo)記。然后主進(jìn)程通過CUDA IPC API拿到這塊顯存的IPC handle分發(fā)給其他所有rank進(jìn)程。其他進(jìn)程拿到handle后在自己的地址空間里打開映射獲得同一塊物理顯存的不同虛擬地址。這里的關(guān)鍵點是IPC handle不是普通的指針不能直接跨進(jìn)程傳遞。它是CUDA內(nèi)部用于標(biāo)識物理顯存分配的句柄必須配合打開操作才能變成可用的映射地址。在我的實現(xiàn)里主進(jìn)程通過一個共享文件或者Unix domain socket把handle廣播出去其他進(jìn)程再各自調(diào)用cuIpcOpenMemHandle完成映射。映射完成后所有rank都擁有了讀寫通信buffer的能力。這一步到位之后剩下的AllReduce邏輯就變成了純粹的內(nèi)存讀寫加flag輪詢不再需要任何庫級別的通信API。3.4 一次AllReduce的完整時間線用偽代碼來描述一次完整的AllReduce流程會清晰很多。這里以4個rank為例。// 偽代碼PCIe IPC AllReduce 單步流程 // chunk為數(shù)據(jù)塊編號step為Ring輪次 for (step 0; step numRanks - 1; step) { sendRank (myRank step) % numRanks; recvRank (myRank - step numRanks) % numRanks; for (chunk 0; chunk numChunks; chunk) { if (chunk_is_local_responsibility(myRank, chunk, step)) { // 本地歸約本地數(shù)據(jù)塊 收到的數(shù)據(jù)塊 reduce_local_chunk(chunk); } // 將數(shù)據(jù)塊寫入send buffer對應(yīng)位置 write_data_to_send_slot(sendRank, chunk); // 寫入完成后更新flag update_flag(sendRank, chunk); // 自旋輪詢recv slot的flag while (read_flag(recvRank, chunk) ! expected_value) { } read_data_from_recv_slot(recvRank, chunk); } }大致時間線是這樣的每個rank在step開始時先嘗試把本地已經(jīng)歸約過的數(shù)據(jù)塊寫入自己的發(fā)送槽位并更新flag同時自旋等待相鄰rank的接收槽位flag變化。flag一變立刻讀取數(shù)據(jù)參與歸約。這個流程沒有全局屏障完全靠生產(chǎn)者和消費者之間的flag協(xié)作推進(jìn)所以端到端延遲主要取決于最慢節(jié)點的寫入時延加PCIe傳輸時延。我第一次跑通時有點驚訝沒有用任何NCCL API也沒走網(wǎng)卡純靠PCIe對等映射和flag自旋就把1GB級別的梯度全量同步做完了。從那一刻起我才真正理解庫能給你的只是封裝物理鏈路本身能跑多快取決于你愿不愿意花時間去貼近它。4. 落地過程中最容易被忽略的五個細(xì)節(jié)4.1 IPC handle不能從任意指針拿先找到分配塊基址第一個讓我翻車的點在獲取IPC handle上。我一開始很自然地對一個從buffer池里偏移出來的指針直接調(diào)用了IPC handle獲取API結(jié)果返回錯誤。查了文檔才明白IPC handle是作用在整個分配塊上的不是作用在任意子指針上的。你必須先用cuMemGetAddressRange把指針?biāo)诘姆峙鋲K基址和大小找出來再用基址去獲取IPC handle。這個細(xì)節(jié)在實際編碼時很容易漏掉尤其是當(dāng)通信buffer池里劃分了data區(qū)和flag區(qū)、并且每個rank都拿到不同子區(qū)時。如果每個rank都試圖拿自己子區(qū)的IPC handle不僅會出錯還會在權(quán)限管理上制造混亂。我的做法是主進(jìn)程一次性把整個buffer池的IPC handle拿出來分發(fā)給所有rank各rank再在自己的映射里計算子區(qū)偏移。這樣既合法又避免了重復(fù)獲取handle的負(fù)擔(dān)。4.2 同步不能只靠volatile內(nèi)存柵欄要放在正確位置flag同步最隱蔽的坑是內(nèi)存序問題。很多第一次寫GPU flag輪詢的人會寫類似這樣的代碼發(fā)送方先寫data再寫flag接收方輪詢flag看到變化后讀data。聽起來天衣無縫但實際在GPU和PCIe的組合下data的寫入不一定在flag寫入被對方看到之前完成。這里涉及的是“可見性”順序光靠volatile關(guān)鍵字指示編譯器不要優(yōu)化讀取不夠硬件層仍然可能重排寫操作。生產(chǎn)者必須在寫完data后、寫flag前插入內(nèi)存柵欄指令確保data的寫入已經(jīng)沖刷到目標(biāo)可見層級消費者讀到flag變化后、讀data前也要插入內(nèi)存柵欄確保后續(xù)讀取能看到data的最新值。我在最初版本里把內(nèi)存柵欄放在了錯誤的位置——放在寫flag之后。結(jié)果發(fā)現(xiàn)接收方偶爾讀到的是舊數(shù)據(jù)排查了很久才知道問題出在柵欄順序上。后來改成標(biāo)準(zhǔn)姿勢寫datathreadfence寫flag讀flag變化后threadfence讀data。這個組合看起來簡單但少一個fence整個方案就是錯的。4.3 數(shù)據(jù)切分要匹配PCIe鏈路的實際拓?fù)淝懊嬲f過Ring假設(shè)相鄰鏈路均勻但PCIe拓?fù)洳⒉痪鶆?。我的自研方案做了一個很關(guān)鍵的調(diào)整在建立通信域時先跑一遍小規(guī)模帶寬探測把8卡之間兩兩的實際雙向帶寬矩陣算出來然后用貪心算法構(gòu)造一條“相對均勻”的環(huán)。具體做法是從任意一張卡出發(fā)每次選擇與當(dāng)前節(jié)點帶寬最大的未訪問節(jié)點作為環(huán)上下一個鄰居直到所有節(jié)點都被納入。這個環(huán)不一定是最短路徑但能保證環(huán)上每條邊的帶寬不會出現(xiàn)劇烈低谷。然后在ReduceScatter階段根據(jù)每條邊的真實帶寬比例來分配每個數(shù)據(jù)塊應(yīng)該傳輸?shù)目傋止?jié)數(shù)帶寬高的邊承載更大的塊。這個優(yōu)化做進(jìn)來之后整體同步耗時下降了大約一成多。雖然不算驚人但在一遍遍跑的訓(xùn)練循環(huán)里這個比例帶來的吞吐提升是實打?qū)嵉摹?.4 flag區(qū)和data區(qū)不能共享同一個cache lineGPU上的緩存行大小通常是128字節(jié)。如果你把flag和它對應(yīng)的data放在同一個緩存行里接收方輪詢flag時硬件會把整個緩存行拉取到緩存里同時發(fā)送方寫入data時也會更新整個緩存行。兩者互相干擾會造成嚴(yán)重的false sharing表現(xiàn)為輪詢延遲飆升和帶寬下降。我的做法是在buffer池里把flag區(qū)單獨劃分出來并且讓每個flag和相鄰data之間保留足夠的填充間隔確保flag不會和任何data共享緩存行。實測對比過有填充和無填充的版本前者在200MB以上大消息場景下帶寬比后者高出接近10%。這個優(yōu)化幾乎零成本強烈建議所有做類似方案的人都加上。4.5 進(jìn)程生命周期管理映射釋放比建立更重要IPC映射的建立很爽但釋放是另一回事。如果某個rank進(jìn)程異常退出或者主進(jìn)程提前釋放了buffer池其他rank仍持有打開狀態(tài)的IPC映射就會導(dǎo)致顯存資源無法回收甚至讓整個CUDA context進(jìn)入不健康狀態(tài)。我在自研過程中踩過一次嚴(yán)重的泄漏某個實驗?zāi)_本在循環(huán)里反復(fù)創(chuàng)建和銷毀通信域但沒有正確關(guān)閉IPC handle跑了幾輪后顯存直線上升最后直接OOM。后來我給通信域增加了一個顯式的release接口統(tǒng)一關(guān)閉所有IPC handle并在進(jìn)程退出信號處理里做了兜底清理。對于這種底層通信庫級別的代碼資源生命周期管理必須像對待文件句柄一樣認(rèn)真不能覺得“進(jìn)程退出系統(tǒng)會自動回收”就夠了。5. 實測對比兩種方案在不同消息尺寸下的真實差異5.1 盡量公平的測試方法為了對比NCCL Ring LL和自研PCIe IPC AllReduce我在同一臺8卡機(jī)器上跑了大量測試。硬件環(huán)境是近期常見的主流雙路服務(wù)器GPU通過PCIe switch互聯(lián)沒有NVLink橋接。測試方法很簡單固定一個消息尺寸讓兩種方案各自執(zhí)行100次AllReduce統(tǒng)計平均延遲和有效聚合帶寬然后遍歷從4KB到1GB的消息尺寸。需要特別說明的是這個對比不是“誰更厲害”的比拼而是要看不同場景下的適用性。NCCL是通用庫面對的是各種規(guī)模、各種拓?fù)涞募何业淖匝蟹桨钢会槍@一臺機(jī)器做了定制。兩者不在同一個通用性層級但放在同一臺機(jī)器上比延遲和帶寬本身能說明很多問題。5.2 延遲與吞吐數(shù)據(jù)典型結(jié)果如下表所示數(shù)據(jù)是我當(dāng)時記錄的一組有代表性的結(jié)果消息尺寸NCCL Ring LL平均延遲IPC AllReduce平均延遲IPC相對表現(xiàn)4KB約42微秒約31微秒延遲降低約26%64KB約85微秒約79微秒略優(yōu)1MB約420微秒約350微秒延遲降低約17%16MB約2.1毫秒約1.7毫秒延遲降低約19%256MB約33毫秒約28毫秒延遲降低約15%1GB約130毫秒約118毫秒延遲降低約9%有效聚合帶寬方面在256MB消息下NCCL實測約16.2GB/sIPC方案約18.5GB/s差距約14%。在1GB大消息下兩者接近NCCL約17.3GB/sIPC方案約17.9GB/s差距縮小到3%左右。5.3 分尺寸結(jié)果分析為什么各有勝負(fù)小消息場景下IPC方案的延遲優(yōu)勢最明顯。根本原因在于省掉了NCCL協(xié)議狀態(tài)機(jī)的額外開銷以及用更輕量的flag輪詢替代了部分同步機(jī)制。4KB消息的絕對時間雖然只有幾十微秒但在這個量級上協(xié)議開銷占比大減少的開銷直接變成了延遲收益。中消息場景16MB到256MB下IPC方案的優(yōu)勢依然存在。這個區(qū)間數(shù)據(jù)搬運已經(jīng)占到主導(dǎo)但NCCL需要兼容NVLink、PCIe、網(wǎng)絡(luò)等多種路徑某些buffer策略和協(xié)議切換會引入額外的內(nèi)存拷貝或等待。而我的方案完全針對PCIe拓?fù)涠ㄖ茢?shù)據(jù)塊大小和環(huán)序都做了適配所以能少繞一些路。但到了1GB這種超大消息兩種方案差距明顯縮小。原因也不難理解這時候協(xié)議開銷已經(jīng)被海量數(shù)據(jù)傳輸攤薄真正比拼的是PCIe總線的物理帶寬上限和內(nèi)存拷貝效率。NCCL的底層實現(xiàn)同樣經(jīng)過高度優(yōu)化在純帶寬場景下自研方案的小聰明已經(jīng)沒什么空間了。這個結(jié)果讓我確認(rèn)一件事如果你主要跑小batch、小消息的同步訓(xùn)練自研方案的收益非??捎^如果你的模型大得每次梯度同步都是幾百MB甚至GB級別那直接用NCCL問題也不大自研方案的優(yōu)勢會被物理帶寬極限淹沒。6. 自研路上真正難住我的幾個坑6.1 對等映射撞上BAR1資源上限一個讓我印象極深的坑發(fā)生在嘗試映射超大通信buffer池時。理論上CUDA IPC允許你把一塊GPU顯存映射到另一個進(jìn)程但底層需要通過PCIe BAR窗口來訪問對等內(nèi)存。每張GPU的BAR1大小是有限的我遇到的情況是通信buffer池超過某個值之后cuIpcOpenMemHandle開始返回資源不足錯誤。排查過程很曲折。一開始以為是顯存不夠但檢查發(fā)現(xiàn)顯存明明很充足。后來才意識到是BAR1窗口大小的限制問題。我的應(yīng)對方案是把通信buffer池拆成多個小塊分多次映射而不是一次性映射一整塊大緩沖區(qū)。雖然增加了管理復(fù)雜度但避免了BAR1的容量限制。這個坑對于任何走CUDA IPC做大數(shù)據(jù)量通信的人都可能遇到。如果你在映射時碰到資源不足相關(guān)錯誤先別急著懷疑顯存大小查一下BAR1窗口和當(dāng)前已映射的對等內(nèi)存總量。6.2 遺留的GPU上下文讓顯存悄悄“蒸發(fā)”前面提到過IPC handle泄漏問題但還有一個更隱蔽的變種GPU上下文沒有正確釋放。在CUDA里每個進(jìn)程的GPU context都占用一定的顯存資源。如果我在調(diào)試時頻繁fork子進(jìn)程、或者通過某種方式重復(fù)初始化CUDA而沒有主動銷毀context顯存就會一點點被吃光。我遇到過最夸張的一次是一個調(diào)試腳本跑了幾百輪后顯存從40GB可用掉到不足2GB但顯式分配的對象看起來都沒問題。最后發(fā)現(xiàn)是context泄漏堆積導(dǎo)致每個殘留context各自保留了底層通信buffer的引用。解決方式粗暴但有效給每個通信域加上顯式的context生命周期管理確保每個進(jìn)程結(jié)束時CUDA資源能被徹底回收。這類問題在自研底層通信代碼時非常容易出現(xiàn)因為你不再依賴庫去管理通信資源所有上下文、映射、buffer都得自己盯著。6.3 對端進(jìn)程崩潰后flag輪詢直接卡死另一個讓我花了很長時間的問題是“死等”。在IPC通信方案里接收方自旋等待發(fā)送方的flag變化這是性能優(yōu)勢的來源也是魯棒性的災(zāi)難。一旦發(fā)送方進(jìn)程在寫入flag之前崩潰接收方的自旋循環(huán)就永遠(yuǎn)等不到目標(biāo)值整個訓(xùn)練進(jìn)程直接hang住。我一開始的代碼沒有做任何超時處理結(jié)果在一次模擬故障測試中整個集群原地卡死只能手動kill。后來我在flag輪詢循環(huán)里增加了一個基于全局時鐘或固定迭代次數(shù)的超時判斷一旦超過閾值就報錯并觸發(fā)通信域重建。雖然看似增加了復(fù)雜度但在真實的生產(chǎn)環(huán)境里這套兜底機(jī)制是必須的。6.4 最后的保險保留NCCL回退開關(guān)自研方案上了之后我沒有把所有代碼的通信路徑都改成IPC實現(xiàn)。原因很簡單自研方案再優(yōu)化也只是針對我這臺機(jī)器的拓?fù)湟坏Q到別的機(jī)器所有定制都要重來。而NCCL作為通用庫幾乎在任何硬件組合上都能跑出一個可接受的結(jié)果。所以我在代碼里加了一個環(huán)境變量開關(guān)默認(rèn)走IPC自研路徑但隨時可以切回NCCL。這個開關(guān)幫了大忙對比測試時用它保持公平在一些臨時搭建的測試機(jī)上直接用NCCL兜底調(diào)優(yōu)時也能快速確認(rèn)問題到底出在通信層還是上層的模型代碼。最后說一點個人體會。做這個自研方案最值錢的不是省下來的幾十微秒延遲而是把一個黑盒通信庫拆開看的過程。NCCL的Ring LL已經(jīng)足夠優(yōu)秀但只有當(dāng)你自己動手推演過數(shù)據(jù)塊怎么切、flag怎么同步、PCIe帶寬怎么分配之后才能真的看懂它在背后替你處理了多少事。如果你也面臨單機(jī)多卡通信瓶頸我的建議是先別急著換機(jī)器花點時間測一下拓?fù)鋷捑仃囋贈Q定是調(diào)NCCL參數(shù)還是自己動手。兩張卡之間的真實距離往往比PPT上的拓?fù)鋱D誠實得多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷丁香九月| 大香蕉乱级| av中文在线| 日本在线15p| 啊啊啊啊啊操我视频| 91人妻做a观看视频| 国产精品久久久999| 亚洲熟久久| 人人干黄色| 国产女生在线| 久久精品国产Aⅴ| 97欧美色资源| 亚洲图片91| 丁香五月天啪啪| 一区AV| 亚洲欧美人妻| 清纯唯美综合| 91操熟妇| 国内黄色精品| 免费看日本操逼视频| 欧美裸体美女日麻屄| 亚洲AV在线资源| 爱爱动态120秒| 在线看片国产精品每日更新| 成人av影院在线观看| 欧美色宗合| 97在线免费视频观看| 亚洲中文字幕一区| 欧美翘臀视频网站一区二区三区| 日逼97| 天天操天天插| 亚洲有码 视频一区| 爽 好舒服 无码刺激久久| 国产Aα| 91人妻最真实刺激绿帽| 秋霞午夜成人福利片片| 成人精品在线免费视频| 色综合av综合久久| 国产资源中文字幕在线| 在线啊啊啊| 欧美91久久久久| 欲女人妻性色av| 玖玖爱伊人玖玖爱| 无卡一区=区| 另类欧美色| 四虎免费在线观看| 秋霞操逼片| 自拍偷拍草一草| 免费观看国产不卡av| 国产午夜精品理论片一二三区区| 乱伦a片视频| 国产无码久久高清| 无码最新| 激情婷婷五月天| 久久人人妻| 欧洲一区二区三区免费| 97精品视频在线| 97在线视频免费看| 日韩性爱免费视频在线网站| 一起草精品人妻| 久久午夜伦| 热天堂一区二区| 性做久久久久久免费观看软件| 豆花视频操逼网址| 国产一区二区在线播放量| 天天噜| 久久久婷婷| 性爱综合网| 久久仑合| 亚洲极品| 2019天天干天天操| 中文字幕-区二区三区四区视频中国| 亚洲高清男人天堂| 国模无码人体一区二区三| 怡红院一区二区熟女人妻| 日本99视频| 精品999日本| 91白嫩| 国产亚洲日韩在线三区黑人| 狠狠色丁香| 无码人妻毛片丰满熟妇精品区| 精品一级毛片在线观看| 超碰79人人乐| 国产品精品自在在线午夜免费 | 欧美另类色图片| 亚州男人的天堂| 无码一区免费在线不卡| 高清成年美女黄网站免费大全 | 亚洲丨在线| 久久精品国产精品一区| 欧美成人亚洲精品| 国产51色综合久久免费| 天天插天天操天天摸天天射天天看| 成全动漫视频观看免费下载| 日韩熟女精品无码专区一区二区| 在线毛片片免费观看| 宅男91视频在线播放| 久久老女人| 艳美熟妇先锋一二三区| 人人操人人插 - 百度 - 百度| 丰满人妻一区二区三区在线| 日B操| 日本有码久久| 91 国产丝袜在线放观看 | 91综合熟女| 国产无套粉嫩白浆在| 欧美色图小说综合| 玖玖视频在线资源一区二区三区| 999久久久久久久久| 色婷婷电影| 九九碰九九爱97| 亚洲欧美一区二区三区在钱蜜桃| 草草草视频在线免费看| 久久亚码| 看黑人AV不卡| 97玖玖超碰| 91性网| 久久嫩草国产成人一区| 九九综合久久| 精精夜夜| 免费人成在线观看网站品爱网| 亚州色阁| 欧美 日韩 国产传媒| 国产精品盗摄 偷窥盗摄| 欧美黑人168页欧美黑人167| 日韩三级网址| 丰满欧美少妇| 狠狠色色| 男人的天堂不卡一区二区| 岛国1区2区3区在线观看| 中文字幕一二三av| www久久精品| 欧洲一区二区三区免费| 国产传媒日本欧美专区| 玖玖97综合| 综合网91| 黑丝制服中文字幕| 久久αⅴ| 精品乱码在线观看| 日韩少妇丰满亚洲| 欧美亚洲第1页| 亚洲 se图 欧美电影| 国产熟女一区二区| 夜夜夜夜久久久久| 九九色婷婷| 国产色产精品在线观看| 亚洲国产精品无码AV久久久| 大香蕉狠狠爱| 久久午夜伦| 少妇的嫩逼图片| 国产曰批免费观看久久久| 强奸国产在线| 日本天天人人狠狠在线日美女 | 欧美日韩一区二区三区四区蜜桃| 国产亚洲精品美女久久久m| 亚洲 国产 精品一区| 亚洲一区二区精品福利| 乱伦av.com| 国产精品老师| 91国产大片| 午夜无码熟妇丰满人妻| 超碰九色| 久操九九九九| 天天干夜夜操一区二区| 天天射天天| 密乳无码| AV天天综合| 天天摸天天舔天天操| 99精品综合久久久久五月天| 夜夜草我| 五月婷婷丁香六月| 99re6国产精品99re| 亚洲国产97| 99久久精品无码一区二区毛片免费| 日韩欧美中文| 久久综合精品一区二区三区| 玖玖爱视频网站| 国产狂喷潮在线精品| 国产成人无码高清| 老汉网| 中文字幕第7页| 日韩免费簧片| 久久日韩毛| 丰满人妻一区| 国产成人亚洲精品无码最新在线| 久久久久人妻| 人人澡人人澡人人| 国产特级毛片AAAAAA高潮流水| 99这里都是精品| 超碰69| 操碰97| 欧美婷婷五月天| 亚洲性少妇| 天天射夜夜操| www.91色综合| 老司机午夜精品视频| 性爱视频久久| 亚洲无码国产精品久久| 日韩美女久久一区二区三区| 日日97| 成年人网站在线免费观看| 日欧操屄视频| 日夜尻逼网| 日韩中文字幕精品一区在线| 怡春苑东京热| 人人操人人搞人人草| 日本日日色视频| 久夜视频| 狼人综合婷婷激情四射 | 欧美性夜| oumeisetu综合| 91蜜臀人妻中文字幕在线| 强歼乱伦资源网| 欧美日韩电影一区二区| 免费?级毛片无码?∨蜜芽试看| 亚洲情色电影网| 亚洲欧美激情小说| 操人无码| 欧美92| 99热色精品| 91日韩网站| 日本天天色| 91麻豆天美国产欧美高潮| 51一区二区三区| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 秘书高跟黑色丝袜国产91在线| 免费精品中文字幕| 久操视频免费观看| 中文字幕在线日亚洲9| 91天天综合在线观看| 欧亚在线视频| 超碰美女97| 欧美黑人猛交春色影视大全| 国产自产自拍| www.色婷婷.com| 成 人片 黄色大片| 九九久精品| 亚洲日本成人动漫| 亚洲**2021在线观看| 天堂蜜桃无码视频一区二区| 国产操逼视频在线观看| 九九五月天| 男人的天堂2010| 88xx成人精品视频| 91激情国产| 成人日韩欧美| 无码直播久久久| 欧美在线综合| 天天流夜夜操| 八人操人人摸人人看| 久9久9久9久9久9久9| 色噜噜综合网| 日韩精品国产一区二区| 怡春院久久| 亚洲有码 视频一区| 亚洲一卡二卡在线免费| 色综合1991| 色婷婷视频| 中文字幕一区二区三区字幕| 一区e区三| 日本精品一区三区| 国产浮力影院第1页| 亚洲国产日韩精品久久久| 69人妻人人揉人人躁人人精品| 国产精品久久久久久久久久久久久久| 麻豆福利视频导航| 日本在线一二| 日本午夜操逼| 伊人影院日本| aV中文麻| 96久久久精品| 91黑丝美女| av大香蕉| 午夜寂寞欧美| 国产成年精品高清在线观看91| 蜜桃臀av一区二区| 最新9久久久9免费视频| 伊人久久久日韩一区| 99久re热视频精品98| 黄色电影在线播放综合网站| 99re在线| 亚洲资源一区| 0755午夜福利视频| 国产日产欧产美韩系列麻豆免费| 神马久久久久久久久久| www.狠狠干.coom | 亚洲性综合| 欧美日韩情色一区二区| 国产精品老师| 人人干人人操人人..com| 美女黄网| 人人人干干人人干| 天天日夜干| 人人妻天天做天天爽| 美女啊啊啊啊啊啊啊| 国产做?爰片久久毛片?片美国| 久久久久久久九九九九九九| 91人妻少妇| 国内外激情在线| 超碰欧美在线欧美| 亚洲黄色网址| 国产精品3| 色香91| 麻豆激情综合| 欧美综合网1| 综合网久久| 亚洲精品天天影视综合网| 亚洲有薄码区日本系列中文字幕| 婷婷五月在线视频| 理论久久婷婷网8| 伊人视频| 91亚洲丝袜熟女| 久久久久久久久久久精| 九九九不卡| 欧美宗合网| 久久久性少妇| 精品国产乱码久久久久久蜜臀| 欧美九九九| 亚洲色天堂九9| 久射吧| 女人香蕉久久毛毛片精品| 视频在线97| 快播电影网日韩新片| 日韩天天综合| 久久久亚洲| 欧美视频一| 亚洲色交| 大黄片做爱的大的| 翔田千里av一区二区三区| 日韩无码专区| 日韩情色视频| 91色色综合| 五十路熟女在线不卡观看一区二区| 国产97/欧美| 亚洲欧美清纯| 久久精品 六十路 熟女 欧美| 亚洲欧美另类图片| 强奸乱伦AV一天堂网| 亚洲性爱乱操x| 国模不卡| 2017天天拍大香蕉| 久久国产AⅤ| 2018天天干在线视频| 大香蕉专区| 久久老子无码午夜伦不卡| 精品久久視頻在线| 加勒比日本在线| 青青草无码视频| 精品一区二区三区蜜桃| 亚洲欧美高清无码| 午夜欧美女人操逼| 黄色大片一区二区密桃丝袜| 无码操逼天堂| 久热一区二区| 欧美日韩一区二区三区四区蜜桃| 欧美日韩成人在线| 蜜桃视频一区二区三区| 日韩91网站| 国产精品网址| 成人熟女视频一区二区三区| 国产剧情AV不卡在线观看| 色欲久久综合| 亚洲性猛交| 精品人妻1区| 国产一区二区啪啪视频| 欧美精品另类人妖xxxx| 插入粉嫩少妇视频| 天天摸,夜夜摸| 96免费视频在线| 另类图片五月天| 丁香五六月啪啪| 九色婷婷| 91高潮喷水美女| 国产深夜福利| 久操凹凸视频| 偷拍 亚洲| 骚妻少妇精品性色无码四色A V| 超碰78| 手机在线视频国内精品| 青青草自拍视频在线播放| 日韩精品国模| 黄人人操人人操| 亚洲人妻一区二区三区| 欧美在线综合| 色情乱伦AV| 97中文字幕色| 国产毛片片精品天天看视频| 九九亚洲| 俞拍久久国应视频| 99色在线视频| 日韩综合97p| 插日本熟女视频| 色97干| 蜜桃臀AV在线| 日韩视频精品在线观看| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 少妇啪啪自拍| 老女人爆菊| 怡春院久久| 最新国产精品久久精品| 欧美丝袜美女电影一二三四区| 国产精品96| 激情六月天| 农村少妇久久久久久久| 999岛国大片| 成人精品水蜜桃久久久久久久| 日小BB小视频| 欧美 日韩 另类 亚洲| 中国熟女老妇仑乱一区二区三区| 天天干2区3区| av黄图片在线观看| 欧美黑人猛交春色影视大全| 97干色| 偷拍网站久久男女男| 免费试看60秒| 亚洲综合影视| 欧美经典一区二区三区| 久久AV色| 亚洲另类在线观看| 国产性爱强奸乱伦大全| 亚洲棕合电彰| 综合在线导航一区| 天天综合站| 在线人人人人人人精品超 | 欧美日本一区二区a人| 97精品中文字幕| 久久大精品乱码视频人妻熟女| 大二网站亚洲| 亚洲伊人久久精品影院| av天堂天堂av日韩| 久久大香蕉97| 久久国产精品,久久国产| 人人操人人色人人摸| 亚洲美女AV无码| 91逼逼女人91| 女同性恋久久| 翔田千里AV无码秘 三区| 殴美日韩m| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 草久在线| 日韩一区二区熟女| 中日韩欧美精品无码AⅤ一区二区| 亚洲在线观看| 久久久久久久78| 少妇干B| av2014 日韩在线中文字幕| 五月天激情婷婷| 日韩视频精品在线观看| 久久久一区二区三区麻豆| ,国产乱人伦精品一区二区三区| 国内精品久久人妻性色av| 久久久96精品| 久久久久中出| 国产这里只有精品| 日本色色色色色视频| 国产精品96久久久久久| 麻豆区久久久久亚| 情色五月天久久久| 91在线色综合| 欧洲一级性爱视频在线观看| 97大色网| 色婷婷丁香五月天| 久久亚洲AV无码专区首页| 加勒比综合88| 超碰 国产熟女精品一区| 高清不卡一二三区视频......| 色情乱伦AV| 91免费看一区二区三区| 国产精品农村妇女精品| 国产精品suv一区| 盗摄 精品 另类 一区| 久久精品福利影院| 天天综合欧美| 999热日韩精品| 久久久久久久 九九九九九九九| 男男H黄动漫啪啪无遮挡网站| 成人av毛片在线观看| 一本久久久精品| 麻豆精品天美| 九九热五区| 亚洲天堂男人天堂| 福利社区午夜一区二区| 国产激情视频一区区三区| 色欧洲97| 久久一二三四五六七八九区区| 嗯啊不要啊在线 | 亚洲情色在线| 老女人爆菊| 久久xx| 亚洲免费人妻在| 欧美日韩性爱无码| 亚洲天堂中文字| 色色网91| 日本性爰一道本| 国产精品探花色| 豆花视频操逼网址| 日本精品中文字幕视频| 国产精品一区二区手机看片| 久久狠狠色噜噜狠狠狠狠97 | 久久久久久性爱片| 热热色91| 69一区二区三区 | 亚洲精品天堂久久A∨51成人漫| 高清有码一区二区| a亚洲欧美色欲| 百度百度日本操逼| 国产黄a三级三级三级av在线看| 五十路三区在线| 96超碰网| 亚洲丝袜少妇在线| 国产精品熟女一区二区三区| 亚洲另类春色| 伊人网免费视频| 天堂网亚洲区手机版| 久草新在线| 国产农村妇女精品| 亚洲免费人妻在| 色色色网站| 婷婷香网站| 91女在线观看| 国产精品久久久久久久无码AV| 天天欧美色| 无码最新| 日韩无码人妻中字久久三区四区| 婷婷伊人一区| 91艹B视频| 天久久久噜噜噜久久国产精品爽爽 | 女人高潮大叫一级毛片| 78久久| 学生妹天天看| 91天天日| 人人操人人狠狠操| 欲香欲色| 午夜美女诱惑电源网| 人人污日韩一区二区| 亚洲熟女中文字幕在线| 麻豆久久精品亚洲精品88| 青青伊人久久| 亚洲淫乱骚妇AV| 国产极品精品美女视频| 99999精品| 日韩精品人妻中文字幕不卡乱码| 久插综合| 九九精品美女高溯喷水| 性爱1区| 人妻一区视频| 91大神精品长腿在线观看网站| 日本三级精品| 欧美青青视频| 亚洲国产日韩欧美熟妇在线| 色综合色综合网| 超碰夫妻97| 91人精品妻入口| 91中文精品日韩欧美在线| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 亚洲人成色9999精品久久| 五月亭亭六月丁香| 国产v亚洲v日韩v欧美v片另类| 超碰资源亚洲97| 人人操人人插 - 百度 - 百度| 日本黄色裸日本黄色裸体 | 日韩射图| 97视频新免费| 国产免费一区| 成人一区二区三区四区| 国产女上位好爽在线| 一级免费啪啪片| 欧美成人黄网色网站| 97香蕉网| 欧洲自拍第一页| 欧美熟妇亚洲版| 综合亚洲情色| 青青草色情网站视频| 国产吹潮女在线观看| 久久精品熟妇丰满人妻99| 91操人| 国产久久久久影院老熟女| 宗合情欲网| 欧美精品丝袜久久久中文字幕| 久久人人爽人人爽人人片Ⅴ| 人人看人人摸人人色| 少妇xx精品| 免费A V在线播放| 一级久久性爱视频| 99热在线播放| 久久理论字幕视频| 97超碰无码网| 蜜臀久久99精品| 午夜综合在线| 美女t无毒不卡不卡| 久久骚| 内射中国少妇高清视频免费视频| 极品色电影院| 国产9熟妇视频网站| 久久东京热久久| 精品免费视频国产一区| 一级性爱视频免费在线| 亚洲av影院在线观看| 97久久久| 第45页一区二区| 色踪合AV| 欧美狠狠干| 日韩电影在线观看网址| 婷婷丁香成人| 啪啪91| 国产精品嫩草影院免费| 五月丁香狠狠爱| 亚洲视频,小说| 97国产中文| 天天上日日上日韩精品| 少妇干B| 亚洲精品一二三四区| 无毛精品| 久久午夜鲁丝片| 十八禁啪啦拍视频无遮挡| 久久99国产综合精品女同| 日韩二区三四区五区六区在线看| 91欧美网| 国产色呦呦| 啊啊啊在线观看免费视频| 人人操人人操人妻人| 国产精品熟女九色九色蜜臀| 操逼片中文| 丝袜内射| 啊啊啊爽爽| 日韩少妇一区二区三区| 国产乱弄免费在线视频。| 99热99re6国产在线播放| 无码精品久久| 国产污视频麻豆传媒一区二区| 欧美97在线欧| wwwss在线观看| 四虎精品一区| 国产AV激情无码久久无码| 欧美男女午夜啪啪| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 3p国产色噜噜一区| 欧洲亚洲人妻无码中字久久三区四区| 成人一二三区| 激情五月丁香五月| 国语精品对白| 熟妇熟女视频一区二区三区| 天欧美在线| 欧美日韩性爱操大逼| 麻豆伊人网| 日本免费中文字幕在线| 97日视频| 亚洲高清无码AAA久久久精品| 97天天综合网| 人妻人人做人人澡人人爽欧美一区| 中文日韩欧美熟| 亚洲图片偷拍视频区| 亚洲在饯| 久久蜜色情在线视频xxx免费观看| 艹精品| 日本一卡二区在线| 婷婷五月丁香五月| 欧美一二三级精品在线| 国产精品久久久九九九| 亚洲高清在线| 中文日本免费高清| 91老妇女| 成人精品一区二区三区| 婷婷色网| 啪啪资源网| 亚洲欧美情色| 夫妻AV网站| 久久久999网站| 少妇熟女1区2区3区| 午夜啊啊| av2014 日韩在线中文字幕| 情色五月天网| 好好的日:com久久九九| 婷婷伊人一区| 国产激情在线观看| 在线看的av| 啊啊啊啊啊在线| 在线播放中文字幕| 色老牛| 电影69乱码96| 丁香六月激情综合| 强奸乱伦av电影| 久久超碰国产一区二区三区| 春色综合免费| 日本熟妇精品九九| 懂色影视久久| 午夜呻吟欧美| 亚洲激情 欧美色图| 亚洲日韩熟女人妻高清在线| 亚洲欧美大香蕉| 加勒比大香蕉视频在线| 久久午夜伦| 精品久久青青草| 亚熟在线| 99re在线精品78| 九9热伊人| 97超碰影音| 女人综合网| 精品人妻夜夜草| 精品无码秘 人妻一区二区| 精品无吗m| 超碰激情808| 亚洲男人的天堂在线看| 天天综合站| 亚洲高清自拍| 久久男女激情视频网站 | 熟妇熟女一区二区三区| 欧美亚洲综合高清在线| 日本裸体久久色噜噜| 国产一区二区三区久久精品太古里| 天堂亚洲精品久久老牛| 撸无码不卡免费视频| 91亚洲综合| 超碰在线91| 91性生活久久久| 久久久久久久久久久久九| 蜜臀av中文字幕| 久久久久久免费电影| 欧美色网络| 色色毛片| 97精品熟女少妇一区| 人妻-91porn| 97香焦色区| 日韩丝袜高跟制服在线观看| 精品熟妇视频一区二区| 日韩综合无码一区久久92| 九九热免费视频| 超碰人人妻| 91美女看B| 欧成人精品H无码| 日本五十路熟女一区二区| 素人美腿视频网站| 热热色青青草| 欧美一级国产一级| 国产天天骚| 男女啊啊啊啊啊| 久久性爱大全| 夜夜人妻爽| 天堂69亚洲精品中文字| 成人在线永久| 欧美熟女丝袜| WWW操逼| 97久精品| 亚洲欧美人妻| 人妻天天操天天爽视频免费| 色网亚洲人| 国产一区二区视频在线播放| 国产精品久久久久久久久久久久久久久久 | 91网18| 国内毛片欧美香蕉精品| 爱爱动态120秒| 欧美天堂在线| 五月天偷拍| 99re视频这里只有精品| 国产农村一一级特黄毛片| 欧美色亚洲色| 一块操欧美性爱| 亚洲高清91| caopeng97| 波多野结衣AV无码一区| 亚洲AV免费在线观看| 国产强奸无码乱伦| 干b在线性社区| 欧美日韩性爱电影在线| 色一区二区三区综合| 国产av又色又爽又黄| 18一区二区三区| 香蕉一区二区三区在线视频| 欧洲亚洲综合| 亚洲成a人片在线观看中文!!!| 日本岛国黄色网址| 日本影视久久免费| 凹凸视频在线观看伊人| blacked精品一区国产| 欧美姓爱综合网| 疯操AV| 天天综合精品| 丰满美女一级毛片在线播放| 色噜噜人妻丝袜AV资源| 超碰精品日韩欧美国产| juliaann丝袜大战黑鬼| 日本在线播放不卡一区| 9久久久久| 97碰碰日本乱偷人妻中文的| 欧美日韩岛国大片在线观看| 久热一区二区| 91网站18+| 亚洲乱色视频一区、二区在线| 人人人人插| 国产成人欧美精品在线| 男人的天堂日韩| 久久国产精品91| 国模少妇一区二区三区| 13小男生GAY自慰脱裤子| 热热色青青草| 欧美伦乱爱| 精品国产自在在线99| 强奸a片网| 中文字幕精品日韩中文字幕| 亚洲图片激情小说| 亚洲AV不卡在线观看| 台湾肥佬网一区二区三区| 欧美男人一区| 亚洲第一色页夜| 东北丰满熟女国产一区| 精品9区| #NAME?| 老司机午夜福利视频一区二区| 精品少妇后入一区二区三区四区人妻巨乳| 国产精品自拍xxxx| 欧洲黄色网| 国产精品福利视频| 久一区久久蜜桃| 亚州久久9| 97伊人| 艹精品| 高潮综合网| 97在线视频观看| 激情综合亚洲| 一区二区三区四区五区高清无码永久视频 | 人妻少妇色综合| 91大神精品长腿在线观看网站| 欧美激情一| 加勒比综合88| 91久久久视| 中文字幕一区二区三区人妻不卡| 日欧毛片久久| 人妻人人澡人人爽人人| 欧美日本久久精品一区| 91国产美女丝袜足交精品视频 | 亚洲最大成人a毛毛片| 欧美激情 亚洲色图| 青青伊人加勒比海| 国产13区| 欧美三级免费伊人| 中文字幕国产在线天堂| 成人小电影网站tex| 大香蕉78| 午夜福利免费福利视频| 久久av一级av少妇av高潮| 999热这里只有精品| 欧美偷拍| 青草地一本线一区二区三区| 熟妇高潮精品一区二区三区下载| 婷婷色导航| 大香蕉天天看妹子| 国产精品爽爽va在线观看98| 91蜜桃传媒精品久久久一区二区| 青草视频在线看看看看看看看看看| 探花激情视频| 日韩无码黄色片| 日韩AV片| 丝袜狂射91| 91精品人妻一区二区三区蜜臀| 亚洲的天堂网| 熟妇国产免费一区| 黄色二级片网站| 国产精品一区午夜福利| 白丝被操91| 亚洲毛片基地专区| 另类图片欧美激情综合| 久久久久久久久成人av解说| 日韩成人色图| 精品久操| 狠日操| 欧美天天谢综合网| 夜夜欢天天干| 去干网最新版| 91日日夜夜| 眼镜人妻101.com| 国产成人亚洲精品自产在线 | 超碰超碰超碰超碰的大鸡吧操黑丝袜| 人人爱人人乐人人操| 久久精品99| 激情综合网一盗摄| 久久亚洲欧美中文字幕国语| 高树玛利亚无码流出| 葡萄牙性视频一二区| 丁香五月天啪啪| 激情视频图片| www…国产操逼| 蜜臀va69| 丁香九月激情| 久草看看看| 污啪啪啪视频| 91欧美网| 久操九九九九| 一区二区乱码福利| 一区二区三区网站日日骚| 欧美精品三区| 久久25| 最新亚洲人成网站在线影院| 欧美白嫩在线放| 国产日韩欧美中文在线播放| 欧美在线 亚洲| 国产麻豆福利av在线播放| 国产免费一区| 日本欧美成人片AAAA| 色妇综合网| 91精品人妻一区二区三区蜜桃臀| 国产丝袜美女在线一区| av麻豆啪啪| 久久草在线综合视频| 久久色精品视频在线| 欧美se亚洲| 一级久久性爱视频| 97干色| 久久人妻熟女一区二区| 欧美激情综合| 人妻AV在线| 91chinese在线| 中文字幕 人妻不满 在线视频| 3PAV乱伦视频| 天天干天天操天天干天天操| 亚洲啪啪综合?v一区综合精品区| 国产99999久久精品| 后入内射蜜桃臀| 天天舔天天| 色五月综合网| 污污汅18禁网站在线永久免费观看| 60秒免费视频| 黑丝少妇| 天天干人人干天天日97| www.高清无码诱惑一区.com | 看看日B真人视频| 操逼999| 97K超碰在线| 欧美十八禁导航成人| 亚洲综合一| 四虎永久在线精品免费网址 | 亚洲av影音先锋| 久久只有精品| 伊人性在线视频| 久偷拍欧美日韩三区| 婷婷伊人一区| 亚洲 欧美 91| 天天天天干| 久操热线| 日韩一级欧美一级在线观看| 久久精品国产亚洲AV高清演员表| 1024精品在线| 少妇熟女视频一区二区三区| 亚洲欧洲无码一区夜| 麻豆福利视频导航| 嗯……啊…嗯嗯…啊…好舒服| 国产按摩一区二区三区| 日本三级韩三级99久久| 牛牛aV| 91高清无码下载| AV不卡在线| 人人潮人人摸| 人妻 中文 日韩| 91人妻尻屄视频| 婷婷视频在线免费观看| 亚洲精品国产精品乱码不99| 亚洲美女自拍偷拍视频| 亚洲最新a在线观看| 人人插人人摸人人| 欧美日韩激情无码专区| 久久99午夜精品一区人妻| 在线看片国产精品每日更新| 午夜电影在线观看无码专区| 久久婷婷综合国际产色怕| 国产九九九九九九九九| 91丨九色丨东北熟女| 日本高清电影欧美色图| 日本伦理一区二区| 欧美色图 人妻| 亚洲欧美小说| 在线播放免费av福利片| 久操不卡视频| 老师充足的奶水小说| 99999国产| 国产成年女人免费视频播放a| 亚洲精品a人片在线观看视| 欧美天天谢综合网| 97在线免费看视频| 激情综合网五月婷婷五月天| 日韩免费性爱视频在线观看| av国产无码| 欧美精品在线观看| 亚洲少妇在线影音| 人妻大相焦在线| 亚洲国产美女久久久久| 激情欧美97| 国产免费黄色一级大片| 丰满人妻一区二区三区四区| 丁香五月综合| 欧洲无码一区二区| 日本性一区| 美女啊啊啊啊啊啊| 大香蕉黄色一级片免费看| 丁香九月激情啪| 色999偷自拍拍| 欧美黑人与女人91| 一级人妻性爱视频| 婷婷97| 97天天综合网| 大香久久| 亚洲最大AV网| 日韩av三四区| 人爽不卡视频| 久久久久成人亚洲国产| 麻豆区99999| 亚洲欧美洲综合| 亚洲,日韩,欧美,成人播放| 东京日日夜夜| com 首页 18岁 禁区 女优 免费 精选 同城 | 亚洲中亚日激情视频| 日韩欧美亚欧在线视频| 五月天大香蕉| 亚洲性感丝袜诱惑在线观看| 高清有码一区二区| 激情AV| 操死我了啊啊啊| 大香蕉黄色一级片免费看| 天天综合,91综合永久| 国产亚热在线久久| 成人激情无码在线视频| 日本女厕偷拍| 国产高清自拍| 狠狠躁AV| 欧美综合另类| 亚洲欧美精品一区天堂久久 | 骚鸭AV| 深夜激情无码| 呻吟 欧美 日本 中出| 91精品人妻电影| 欧美日动态视频| 99re公开精品免费视频| 精品然女一区二区| 人人弄人人摸| 色老汉色| 人人看人人爰人人操| 在线观看A啊啊啊| 免费少妇一区二区| 色综合久久夜色精品国产天堂| 97人人夜夜精品视频| 淫骚熟女一区二区三区| 日日操免费视频| 日韩图区| 久久久夜夜嗨免费视频| 人人妻人人澡人人爽久久av| 91九久| 亚洲图片日本AⅤ欧美在线| 超碰久久网| AV九九| 国产家庭乱伦表演| 久久久久婷婷精品av电影| 极品色www影院| 亚洲最新Av| 亚州高清色综合| 99人人干| 久久永久无码人妻视频| 东京热不卡视频| 五月婷婷激情网| 操b在线观看| 日本最新1区2区3区| 91蜜臀熟女| 青娱乐欧美激情一区二区| 超碰在线综合97| 久久深夜无码| 欧美黄色大香蕉一区二区| 亚洲欧美综合| 久男人久久| 国产农村妇女精品一二区| 天天天天天天天天天天干美女| 不卡日本一区二区| 丰满人妻一区二区中文| 欧美AB在线观看| 无套内射性感少妇视频| 免费少妇一区二区| 久久少妇| 国语精品对白| 九草九九九| 使劲用力艹少妇视频一区二区 | 婷婷香蕉欧美在线一区二区三区 | 男人的天堂2000| 无码欧美有限公司| 日本在线不卡123| 中文字幕成人| 在线观看色视频| 欧美黄片免费在线观看视频| 狠狠91| 91老司机视频| 日比av无码| 中精品一区二区三区| 久久伦理视频久久大香蕉视频| 久久综合久久综合人久久夜精品| 色色五月婷婷| 91站街按摩店老熟女熟女| 十八禁啪啦拍视频无遮挡| 国产精品一级片在线看| 男人的天堂一区三区| 91精品久久久久久综合五月天| 色欧美天天| 天堂精品小草| 久伊人网78| 欧美不卡五十路| 中文字幕精品日韩中文字幕| 99热这里只有精品8| 神马久久久久久久久久久久| 人妻天天爽| 亚州欧美色图| 国产真乱mangent| 欧美亚洲中文字幕| 欧美精品人妻视频| 和协影院中文字幕三区| 在线观看综合精品亚洲| 天天欧美色| 大香蕉琪琪日本女优不卡| 蜜臀久久99精品久久久久久成人小说 | 怡红院网站在线视频| 黄色工厂这里只有精品| 豆花视频操逼网址| 亚欧视频在线| 婷婷五月天激情小说| 99热免费| 麻豆精品天美| 久久久91| 亚洲精品性爱片| 激情视频网址| 日少妇亚洲版| 亚洲欧美骚| 精品丝袜无码一区二区三APP| 亚洲成人一区二区精品| 午夜丁香婷婷| 91爰爱欧美| 激情五月天网站| 久久九操在线观看| 91少妇人妻| 日本三级R| 久久国产对白激情浪潮| 91欧美网| 人人插人人摸人人| 自拍丝袜美腿人妻| 欧美色图99| 青青久久手机线视频| ,国产乱人伦精品一区二区三区| 99最新日韩偷拍视频| 亚洲无码国产精品久久| 久久午夜伦| 色97欧美| 日韩视频啪啪| 操学生天天| 日本精品中文字幕视频| 99操99| 久久黄黄黄| 99色色网| 97国产中文| 国产一区二区三区影片| 日韩久久超碰色| 婷婷人妻激情| www久| 国产熟女一区二区| 亚洲国产日韩欧美熟妇在线| 精品大全99999| 国产精品久久久无码AV网站| 超碰夫妻97| 极品尤物自安慰|