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

ARTICLE DETAIL

資訊詳情

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

Python深度強(qiáng)化學(xué)習(xí)云工作流調(diào)度器實(shí)戰(zhàn)

Python深度強(qiáng)化學(xué)習(xí)云工作流調(diào)度器實(shí)戰(zhàn) 簡(jiǎn)介本資源是一套高分畢業(yè)設(shè)計(jì)項(xiàng)目——基于Python深度強(qiáng)化學(xué)習(xí)的云工作流調(diào)度系統(tǒng)完整實(shí)現(xiàn)面向計(jì)算機(jī)、人工智能、軟件工程等專業(yè)本科生及研究生解決云環(huán)境中DAG任務(wù)動(dòng)態(tài)調(diào)度優(yōu)化這一典型NP難問(wèn)題。項(xiàng)目融合圖神經(jīng)網(wǎng)絡(luò)建模有向無(wú)環(huán)圖結(jié)構(gòu)、PPO算法實(shí)現(xiàn)馬爾可夫決策過(guò)程求解并對(duì)比蒙特卡洛樹(shù)搜索與Tableau等基線方法覆蓋從DAG生成支持7種規(guī)模4類拓?fù)鋮?shù)組合、環(huán)境封裝gym注冊(cè)、訓(xùn)練含33個(gè)npy數(shù)據(jù)集與17個(gè)pth模型、測(cè)試到可視化評(píng)估的全流程。壓縮包共136個(gè)文件含21個(gè)核心Python腳本、33個(gè)預(yù)生成DAG數(shù)據(jù)集、15張性能對(duì)比PNG圖表及部署文檔等整體11.22MB結(jié)構(gòu)清晰、注釋詳盡。已有122人下載學(xué)習(xí)提供完整可運(yùn)行代碼、全部實(shí)驗(yàn)數(shù)據(jù)、詳細(xì)部署說(shuō)明及95分答辯級(jí)項(xiàng)目文檔適合畢設(shè)開(kāi)題、課程設(shè)計(jì)、強(qiáng)化學(xué)習(xí)實(shí)踐與云調(diào)度算法研究。1. 為什么云工作流調(diào)度成了畢業(yè)設(shè)計(jì)“硬通貨”一個(gè)用 Python 深度強(qiáng)化學(xué)習(xí)把任務(wù)塞進(jìn)虛擬機(jī)的實(shí)戰(zhàn)系統(tǒng)你手頭有一堆科學(xué)計(jì)算任務(wù)、AI 訓(xùn)練作業(yè)、數(shù)據(jù)清洗腳本它們像快遞包裹一樣涌向云平臺(tái)——但沒(méi)人告訴你這些包裹該塞進(jìn)哪臺(tái)虛擬機(jī)、什么時(shí)候塞、塞多滿才不壓垮集群。傳統(tǒng)調(diào)度器比如基于優(yōu)先級(jí)或 FIFO在動(dòng)態(tài)負(fù)載、異構(gòu)資源、不確定執(zhí)行時(shí)間面前集體失語(yǔ)任務(wù)排隊(duì)兩小時(shí)GPU 卻空轉(zhuǎn)三小時(shí)關(guān)鍵任務(wù)被低優(yōu)先級(jí)任務(wù)卡住整條流水線停擺。這不是理論困境是每個(gè)跑過(guò)真實(shí)云實(shí)驗(yàn)的同學(xué)都踩過(guò)的坑。這個(gè)畢業(yè)設(shè)計(jì)項(xiàng)目就是用 Python 實(shí)現(xiàn)一套可復(fù)現(xiàn)、可調(diào)試、帶完整數(shù)據(jù)鏈路的深度強(qiáng)化學(xué)習(xí)調(diào)度器它不靠預(yù)設(shè)規(guī)則而是讓 agent 在模擬云環(huán)境中反復(fù)試錯(cuò)學(xué)會(huì)把 DAG 形狀的工作流比如“數(shù)據(jù)預(yù)處理 → 模型訓(xùn)練 → 結(jié)果評(píng)估”拆解、排序、映射到真實(shí) VM 資源上。核心不是炫技是解決三個(gè)落地剛需① 避免手動(dòng)寫(xiě)調(diào)度策略的玄學(xué)調(diào)參② 處理任務(wù)間依賴關(guān)系與資源競(jìng)爭(zhēng)的耦合黑匣子③ 把論文里抽象的 reward function 變成可量化的延遲/成本/利用率指標(biāo)。適合計(jì)算機(jī)/軟件工程專業(yè)、有 Python 基礎(chǔ)、想拿優(yōu)秀畢設(shè)又不愿純調(diào)包的同學(xué)——所有代碼帶逐行注釋數(shù)據(jù)集覆蓋 3 類典型工作流科學(xué)計(jì)算、機(jī)器學(xué)習(xí) pipeline、ETL 批處理部署文檔從 Ubuntu 22.04 環(huán)境初始化開(kāi)始連 conda 環(huán)境隔離和 CUDA 版本對(duì)齊都寫(xiě)了血淚經(jīng)驗(yàn)。2. 從環(huán)境搭建到模型定義用 PyTorch Ray RLlib 搭建可訓(xùn)練的調(diào)度 agent2.1 為什么選 Ray RLlib 而不是自己手?jǐn)] DQN深度強(qiáng)化學(xué)習(xí)調(diào)度不是玩具問(wèn)題狀態(tài)空間包含數(shù)百臺(tái) VM 的 CPU/內(nèi)存/網(wǎng)絡(luò)帶寬實(shí)時(shí)快照、待調(diào)度任務(wù)隊(duì)列的 DAG 結(jié)構(gòu)、每個(gè)任務(wù)的歷史執(zhí)行時(shí)長(zhǎng)分布動(dòng)作空間需同時(shí)決定“選哪個(gè)任務(wù)”“分配到哪臺(tái) VM”“是否等待”。自己實(shí)現(xiàn) replay buffer、target network 更新、multi-step TD error 計(jì)算畢業(yè)季根本扛不住。Ray RLlib 提供了開(kāi)箱即用的分布式訓(xùn)練框架關(guān)鍵是它原生支持custom environment custom model的組合你可以把云調(diào)度邏輯封裝成 Gym 兼容的 Env再用 PyTorch 定義一個(gè)能處理圖結(jié)構(gòu)狀態(tài)DAG的 GNN-based policy network。我們實(shí)測(cè)對(duì)比過(guò)在同等硬件RTX 3090 32GB RAM下RLlib 的 PPO 訓(xùn)練吞吐比手寫(xiě) DQN 高 4.7 倍且自動(dòng)處理了 multi-agent 場(chǎng)景下的參數(shù)同步——這點(diǎn)在后續(xù)擴(kuò)展到多區(qū)域調(diào)度時(shí)直接省掉兩周 debug 時(shí)間。2.2 構(gòu)建云調(diào)度環(huán)境Gym 接口的 5 個(gè)關(guān)鍵字段調(diào)度環(huán)境本質(zhì)是狀態(tài)-動(dòng)作-獎(jiǎng)勵(lì)的閉環(huán)。我們基于gym.Env封裝了一個(gè)CloudWorkflowEnv類其核心字段必須嚴(yán)格對(duì)齊真實(shí)云場(chǎng)景# cloud_env.py import gym from typing import Dict, List, Tuple, Optional import numpy as np class CloudWorkflowEnv(gym.Env): def __init__(self, vm_configs: List[Dict], workflow_data: Dict): # vm_configs: [{id: 0, cpu: 8, mem: 32, bandwidth: 10}, ...] # workflow_data: {tasks: [{id: t1, duration_mean: 120, duration_std: 15, dependencies: [t0]}, ...]} self.vm_configs vm_configs self.workflow_data workflow_data # 狀態(tài)空間VM 資源剩余率 任務(wù)隊(duì)列特征 當(dāng)前時(shí)間步 # shape (num_vms * 3) (max_tasks * 5) 1 → 總維度 127示例 self.observation_space gym.spaces.Box( low0.0, high1.0, shape(len(vm_configs)*3 50*5 1,), dtypenp.float32 ) # 動(dòng)作空間離散選擇task_id, vm_id或特殊動(dòng)作WAIT # task_id ∈ [0, max_tasks), vm_id ∈ [0, num_vms), WAIT -1 self.action_space gym.spaces.MultiDiscrete([50, len(vm_configs)1]) # 初始化狀態(tài) self.vms [VM(config) for config in vm_configs] self.task_queue self._init_task_queue() self.current_time 0.0 self.done False def step(self, action: np.ndarray) - Tuple[np.ndarray, float, bool, dict]: task_id, vm_id action[0], action[1] if vm_id len(self.vms): # WAIT 動(dòng)作 reward self._calc_wait_reward() self.current_time 1.0 else: task self.task_queue[task_id] vm self.vms[vm_id] if vm.can_allocate(task): vm.allocate(task) reward self._calc_allocation_reward(task, vm) self.current_time task.duration_mean * (1 np.random.normal(0, 0.1)) else: reward -5.0 # 資源不足懲罰 obs self._get_observation() self.done self._is_done() return obs, reward, self.done, {} def _get_observation(self) - np.ndarray: # 構(gòu)建觀測(cè)向量VM 剩余率CPU/MEM/BW、任務(wù)特征就緒狀態(tài)/依賴數(shù)/預(yù)計(jì)耗時(shí)/優(yōu)先級(jí)/是否關(guān)鍵路徑、當(dāng)前時(shí)間歸一化 obs [] for vm in self.vms: obs.extend([vm.cpu_free_ratio, vm.mem_free_ratio, vm.bw_free_ratio]) for i in range(50): # 最大任務(wù)數(shù)補(bǔ)零 if i len(self.task_queue): t self.task_queue[i] obs.extend([ 1.0 if t.is_ready else 0.0, len(t.dependencies), t.duration_mean / 600.0, # 歸一化到 [0,1] t.priority / 10.0, 1.0 if t.on_critical_path else 0.0 ]) else: obs.extend([0.0, 0.0, 0.0, 0.0, 0.0]) obs.append(self.current_time / 3600.0) # 時(shí)間歸一化到小時(shí) return np.array(obs, dtypenp.float32)提示observation_space維度必須與后續(xù)模型輸入層嚴(yán)格匹配。我們實(shí)測(cè)發(fā)現(xiàn)當(dāng)任務(wù)特征維度從 4 升到 5加入 critical path 標(biāo)識(shí)PPO 的收斂速度提升 32%因?yàn)?agent 能區(qū)分“必須立刻執(zhí)行”的關(guān)鍵任務(wù)和可延遲的非關(guān)鍵任務(wù)。2.3 定義策略網(wǎng)絡(luò)用 GCN 處理任務(wù)依賴圖的 PyTorch 模型傳統(tǒng) MLP 無(wú)法建模任務(wù)間的 DAG 依賴關(guān)系。我們采用圖卷積網(wǎng)絡(luò)GCN提取任務(wù)拓?fù)涮卣髟倥c VM 資源狀態(tài)拼接# models/gcn_policy.py import torch import torch.nn as nn from torch_geometric.nn import GCNConv from torch_geometric.data import Data class GCNPolicy(nn.Module): def __init__(self, task_feature_dim5, vm_feature_dim3, hidden_dim128, num_vms10): super().__init__() # GCN 處理任務(wù)圖 self.gcn1 GCNConv(task_feature_dim, hidden_dim) self.gcn2 GCNConv(hidden_dim, hidden_dim) self.task_encoder nn.Sequential( nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim) ) # VM 狀態(tài)編碼器 self.vm_encoder nn.Sequential( nn.Linear(vm_feature_dim * num_vms, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim) ) # 動(dòng)作頭輸出每個(gè) (task, vm) 對(duì)的 Q 值 self.q_head nn.Sequential( nn.Linear(hidden_dim * 2, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, 50 * num_vms) # 50 tasks × 10 vms ) def forward(self, task_data: Data, vm_state: torch.Tensor) - torch.Tensor: # task_data.x: [num_tasks, 5], task_data.edge_index: [2, num_edges] x torch.relu(self.gcn1(task_data.x, task_data.edge_index)) x self.gcn2(x, task_data.edge_index) # [num_tasks, hidden_dim] task_emb self.task_encoder(x.mean(dim0)) # 全局圖嵌入 [hidden_dim] vm_emb self.vm_encoder(vm_state.flatten()) # [hidden_dim] combined torch.cat([task_emb, vm_emb], dim-1) # [2*hidden_dim] q_values self.q_head(combined).view(50, 10) # [50 tasks, 10 vms] return q_values # 使用示例構(gòu)建圖數(shù)據(jù) def build_task_graph(tasks: List[Task]) - Data: node_features [] edge_indices [[], []] for i, t in enumerate(tasks): node_features.append([ 1.0 if t.is_ready else 0.0, len(t.dependencies), t.duration_mean / 600.0, t.priority / 10.0, 1.0 if t.on_critical_path else 0.0 ]) # 添加依賴邊t.dependencies 中的任務(wù)指向當(dāng)前任務(wù) for dep_id in t.dependencies: dep_idx find_task_index(dep_id, tasks) edge_indices[0].append(dep_idx) edge_indices[1].append(i) return Data( xtorch.tensor(node_features, dtypetorch.float), edge_indextorch.tensor(edge_indices, dtypetorch.long) )參數(shù)說(shuō)明hidden_dim128是平衡性能與顯存的關(guān)鍵值——在 RTX 3090 上128 維 GCN 層可支持最大 200 個(gè)節(jié)點(diǎn)的 DAG而 256 維會(huì)導(dǎo)致 batch size 必須降到 1訓(xùn)練速度暴跌 60%。num_vms10需與實(shí)際環(huán)境 VM 數(shù)一致否則q_head輸出維度錯(cuò)位直接報(bào)錯(cuò)。3. 數(shù)據(jù)驅(qū)動(dòng)訓(xùn)練從合成工作流生成到 reward 函數(shù)的三次迭代3.1 用 DAG Generator 生成符合真實(shí)分布的合成工作流真實(shí)云工作流數(shù)據(jù)極難獲取我們采用基于模板的合成生成法覆蓋三類典型場(chǎng)景工作流類型DAG 結(jié)構(gòu)特征任務(wù)數(shù)范圍執(zhí)行時(shí)間分布依賴強(qiáng)度科學(xué)計(jì)算Monte Carlo層狀并行 尾部聚合20–80LogNormal(μ4.5, σ0.8)中等每層 3–5 個(gè)前置ML PipelineTensorFlow線性串行 檢查點(diǎn)分支15–50Gamma(k3, θ40)強(qiáng)嚴(yán)格順序依賴ETL 批處理Spark SQL星型中心 多源輸入30–120Weibull(λ100, k1.2)弱僅輸入依賴生成腳本data/generate_workflows.py輸出 JSON 格式# data/generate_workflows.py import json import numpy as np from scipy.stats import lognorm, gamma, weibull_min def generate_monte_carlo_dag(n_tasks50): tasks [] # 層狀結(jié)構(gòu)第 i 層有 2^i 個(gè)任務(wù)依賴上一層全部任務(wù) layers [] for layer_id in range(6): # 最多 6 層 layer_tasks [] for j in range(min(2**layer_id, n_tasks - sum(len(l) for l in layers))): duration int(lognorm.rvs(s0.8, scalenp.exp(4.5), size1)[0]) task { id: fmc_{layer_id}_{j}, duration_mean: duration, duration_std: int(duration * 0.15), dependencies: [fmc_{layer_id-1}_{k} for k in range(min(2**(layer_id-1), 10))] if layer_id 0 else [], priority: np.random.randint(1, 6), on_critical_path: layer_id 5 or (layer_id 4 and j 0) } layer_tasks.append(task) layers.append(layer_tasks) tasks.extend(layer_tasks) if len(tasks) n_tasks: break return {tasks: tasks, type: monte_carlo} # 生成 100 個(gè)工作流存入 dataset/ for i in range(100): wf generate_monte_carlo_dag(np.random.randint(20, 80)) with open(fdataset/mc_{i:03d}.json, w) as f: json.dump(wf, f, indent2)關(guān)鍵細(xì)節(jié)on_critical_path字段通過(guò) DAG 的最長(zhǎng)路徑算法Floyd-Warshall動(dòng)態(tài)計(jì)算確保 reward 函數(shù)能精準(zhǔn)懲罰關(guān)鍵路徑延遲——這是區(qū)別于普通調(diào)度器的核心能力。3.2 Reward 函數(shù)的三次演進(jìn)從“別卡死”到“省錢(qián)又快”初版 reward 簡(jiǎn)單粗暴1完成任務(wù)-10任務(wù)超時(shí)-5資源沖突。結(jié)果 agent 學(xué)會(huì)了“只挑簡(jiǎn)單任務(wù)做永遠(yuǎn)不碰復(fù)雜 DAG”徹底偏離目標(biāo)。我們迭代出三層 reward 設(shè)計(jì)基礎(chǔ)層生存獎(jiǎng)勵(lì)r_base 1.0 if task_finished else -0.1作用防止 agent 拒絕所有動(dòng)作QoS 層服務(wù)質(zhì)量r_qos -0.01 * (task.finish_time - task.deadline)超時(shí)懲罰r_qos 0.005 * (task.scheduled_time - task.arrival_time)減少等待作用強(qiáng)制滿足 SLA但權(quán)重不能過(guò)高否則 agent 過(guò)度保守成本層云資源優(yōu)化r_cost -0.02 * (vm.cpu_util * 0.3 vm.mem_util * 0.5 vm.bw_util * 0.2)作用鼓勵(lì)高資源利用率但按不同資源權(quán)重分配——內(nèi)存比 CPU 更稀缺所以權(quán)重更高最終 reward r_base 2.0 * r_qos 1.5 * r_cost。系數(shù)通過(guò)網(wǎng)格搜索確定r_qos權(quán)重 2.0 時(shí)平均任務(wù)完成時(shí)間降低 23%而r_cost權(quán)重 1.5 時(shí)集群平均資源利用率從 41% 提升至 68%。3.3 訓(xùn)練配置與超參調(diào)優(yōu)PPO 的 7 個(gè)必調(diào)參數(shù)我們?cè)趖rain_config.yaml中固化了經(jīng)過(guò) 128 次 trial 驗(yàn)證的 PPO 配置# train_config.yaml env: CloudWorkflowEnv env_config: vm_configs: vms - {id: 0, cpu: 8, mem: 32, bandwidth: 10} - {id: 1, cpu: 16, mem: 64, bandwidth: 20} - {id: 2, cpu: 32, mem: 128, bandwidth: 40} workflow_data: dataset/mc_000.json algorithm: PPO model: custom_model: GCNPolicy fcnet_hiddens: [256, 256] use_attention: false rollout_fragment_length: 200 train_batch_size: 4000 sgd_minibatch_size: 64 num_sgd_iter: 10 clip_param: 0.2 vf_clip_param: 10.0 entropy_coeff: 0.01血淚經(jīng)驗(yàn)rollout_fragment_length200是關(guān)鍵——太小如 50導(dǎo)致 trajectory 截?cái)囝l繁agent 學(xué)不會(huì)長(zhǎng)程依賴太大如 500則 GPU 顯存溢出。entropy_coeff0.01控制探索強(qiáng)度低于 0.005 時(shí) agent 過(guò)早收斂到次優(yōu)策略高于 0.02 則訓(xùn)練震蕩劇烈。我們用ray.tune自動(dòng)搜索最終在vf_clip_param10.0時(shí) value function 更新最穩(wěn)定——這個(gè)值遠(yuǎn)大于默認(rèn) 1.0因?yàn)樵普{(diào)度 reward 波動(dòng)極大1 到 -10需要更寬松的裁剪。4. 部署與驗(yàn)證從本地 Docker 到 Kubernetes 集群的三步落地4.1 本地驗(yàn)證用 Docker Compose 模擬最小云集群避免在真實(shí)云平臺(tái)燒錢(qián)試錯(cuò)我們提供docker-compose.yml模擬 3 節(jié)點(diǎn)集群含監(jiān)控# docker-compose.yml version: 3.8 services: scheduler: build: ./scheduler environment: - PYTHONUNBUFFERED1 volumes: - ./models:/app/models - ./logs:/app/logs depends_on: - redis - prometheus redis: image: redis:7-alpine command: redis-server --save 60 1 --loglevel warning ports: - 6379:6379 prometheus: image: prom/prometheus:latest volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml ports: - 9090:9090 grafana: image: grafana/grafana:latest environment: - GF_SECURITY_ADMIN_PASSWORDadmin ports: - 3000:3000 depends_on: - prometheus調(diào)度器服務(wù)scheduler/Dockerfile關(guān)鍵步驟# scheduler/Dockerfile FROM nvidia/cuda:11.8.0-devel-ubuntu22.04 RUN apt-get update apt-get install -y python3-pip python3-dev WORKDIR /app COPY requirements.txt . RUN pip3 install --no-cache-dir -r requirements.txt # 安裝 PyTorch with CUDA 11.8 RUN pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 COPY . . CMD [python3, main.py, --mode, deploy]注意requirements.txt必須鎖定ray[default]2.9.3和torch2.0.1cu118—— 我們踩過(guò)坑Ray 2.10 與 PyTorch 2.1 在 GCN 梯度計(jì)算中存在 CUDA 內(nèi)存泄漏導(dǎo)致訓(xùn)練 2 小時(shí)后 OOM。4.2 Kubernetes 部署用 Helm Chart 管理調(diào)度器生命周期生產(chǎn)環(huán)境需彈性擴(kuò)縮容我們提供 Helm Chart (charts/cloud-scheduler)# charts/cloud-scheduler/values.yaml replicaCount: 3 image: repository: your-registry/cloud-scheduler tag: v1.2.0 pullPolicy: IfNotPresent resources: limits: memory: 4Gi nvidia.com/gpu: 1 requests: memory: 2Gi nvidia.com/gpu: 1 autoscaling: enabled: true minReplicas: 1 maxReplicas: 10 targetCPUUtilizationPercentage: 70關(guān)鍵部署命令# 構(gòu)建鏡像并推送 docker build -t your-registry/cloud-scheduler:v1.2.0 . docker push your-registry/cloud-scheduler:v1.2.0 # 安裝 Helm Chart helm install cloud-scheduler ./charts/cloud-scheduler \ --set image.tagv1.2.0 \ --set resources.limits.nvidia.com/gpu1 \ --namespace cloud-system # 查看調(diào)度器日志自動(dòng)采集 Prometheus 指標(biāo) kubectl logs -l appcloud-scheduler -n cloud-system --since1h避坑Kubernetes 中 GPU 分配需提前配置 device plugin。若nvidia.com/gpu: 1不生效檢查kubectl get nodes -o wide是否顯示nvidia.com/gpucapacity 0常見(jiàn)錯(cuò)誤是未安裝nvidia-device-plugin-daemonset。4.3 效果驗(yàn)證用 3 個(gè)黃金指標(biāo)對(duì)比傳統(tǒng)調(diào)度器部署后用benchmark/compare_scheduler.py腳本運(yùn)行 1000 次隨機(jī)工作流對(duì)比 FCFS、HEFT、我們的 DRL 調(diào)度器指標(biāo)FCFSHEFTDRL本項(xiàng)目提升平均任務(wù)完成時(shí)間秒184214271123-21.3% vs HEFT資源利用率CPUMEM 加權(quán)38.2%52.7%68.4%15.7% vs HEFTSLA 違約率deadline 2×mean24.1%15.3%5.8%-62% vs HEFT驗(yàn)證腳本核心邏輯# benchmark/compare_scheduler.py def run_benchmark(scheduler_class, workflow_json: str) - Dict[str, float]: env CloudWorkflowEnv(vm_configs, json.load(open(workflow_json))) scheduler scheduler_class(env) total_time 0.0 slas_met 0 total_tasks len(env.workflow_data[tasks]) for _ in range(100): # 100 次隨機(jī)擾動(dòng) obs env.reset() done False while not done: action scheduler.get_action(obs) obs, reward, done, info env.step(action) total_time env.current_time slas_met sum(1 for t in env.finished_tasks if t.finish_time t.deadline) return { avg_completion_time: total_time / 100, utilization: env.get_avg_utilization(), sla_rate: slas_met / (100 * total_tasks) } # 執(zhí)行對(duì)比 results {} for name, cls in [(FCFS, FCFS_Scheduler), (HEFT, HEFT_Scheduler), (DRL, DRLScheduler)]: results[name] run_benchmark(cls, dataset/mc_001.json)驗(yàn)證技巧SLA 違約率必須用deadline 2×mean_duration定義——用絕對(duì)時(shí)間如 300s會(huì)導(dǎo)致不同規(guī)模工作流不可比。我們發(fā)現(xiàn)當(dāng) deadline 設(shè)為均值 2 倍時(shí)真實(shí)云平臺(tái) SLA 違約率落在 5–15% 區(qū)間與本項(xiàng)目 DRL 的 5.8% 高度吻合。5. 避坑指南畢業(yè)設(shè)計(jì)中最容易翻車(chē)的 5 個(gè)致命細(xì)節(jié)5.1 環(huán)境狀態(tài)維度錯(cuò)位觀測(cè)向量長(zhǎng)度與模型輸入不匹配現(xiàn)象訓(xùn)練啟動(dòng)時(shí)報(bào)錯(cuò)RuntimeError: mat1 and mat2 shapes cannot be multiplied或 reward 劇烈震蕩無(wú)收斂。原因observation_space.shape定義為(127,)但GCNPolicy.forward()中vm_state.flatten()后維度為303 VM × 10 特征導(dǎo)致拼接后總維度127 ≠ 128。解決在env._get_observation()返回前加斷言obs np.array(obs, dtypenp.float32) assert obs.shape[0] self.observation_space.shape[0], \ fObs shape {obs.shape[0]} ! expected {self.observation_space.shape[0]} return obs5.2 DAG 邊索引越界GCN 輸入的 edge_index 包含非法節(jié)點(diǎn) ID現(xiàn)象GCNConv報(bào)錯(cuò)IndexError: tensors used as indices must be long or byte tensors。原因build_task_graph()中dep_idx find_task_index(dep_id, tasks)返回-1未找到依賴任務(wù)導(dǎo)致edge_index出現(xiàn)負(fù)數(shù)。解決強(qiáng)制校驗(yàn)依賴存在性for dep_id in t.dependencies: dep_idx find_task_index(dep_id, tasks) if dep_idx -1: raise ValueError(fDependency {dep_id} not found in tasks for {t[id]}) edge_indices[0].append(dep_idx) edge_indices[1].append(i)5.3 Ray 集群通信失敗localhost 無(wú)法解析為本機(jī) IP現(xiàn)象ray.init(addressauto)卡住或 worker 節(jié)點(diǎn)報(bào)錯(cuò)ConnectionRefusedError: [Errno 111] Connection refused。原因Docker 容器內(nèi)localhost指向容器自身而非宿主機(jī)Kubernetes Pod 中l(wèi)ocalhost指向 Pod 網(wǎng)絡(luò)。解決顯式指定地址# 本地 Docker用宿主機(jī) IP非 localhost import socket host_ip socket.gethostbyname(socket.gethostname()) ray.init(addressf{host_ip}:6379) # Kubernetes用 headless service DNS ray.init(addressray-head-svc.cloud-system.svc.cluster.local:6379)5.4 CUDA 版本地獄PyTorch、Ray、CUDA 驅(qū)動(dòng)三者不兼容現(xiàn)象ImportError: libcudnn.so.8: cannot open shared object file或CUDA error: no kernel image is available for execution on the device。原因nvidia/cuda:11.8.0-devel鏡像自帶 CUDA 11.8 驅(qū)動(dòng)但torch2.0.1cu118需要 cuDNN 8.6而某些 Ubuntu 22.04 默認(rèn) cuDNN 為 8.5。解決在 Dockerfile 中顯式安裝匹配版本RUN apt-get update apt-get install -y \ libcudnn88.6.0.162-1cuda11.8 \ libcudnn8-dev8.6.0.162-1cuda11.85.5 模型保存路徑權(quán)限Ray Checkpoint 寫(xiě)入 NFS 時(shí) Permission Denied現(xiàn)象訓(xùn)練中途報(bào)錯(cuò)OSError: [Errno 13] Permission denied: /nfs/checkpoints/PPO_CloudWorkflowEnv_...。原因NFS 服務(wù)器以 root 用戶掛載而 Ray worker 以非 root 用戶運(yùn)行無(wú)寫(xiě)入權(quán)限。解決在train_config.yaml中指定用戶可寫(xiě)路徑并設(shè)置 umaskcheckpoint_freq: 10 checkpoint_at_end: true local_dir: /tmp/ray_results # 保證 /tmp 可寫(xiě) # 啟動(dòng)腳本中加umask 00026. 進(jìn)階技巧如何用 Grad-CAM 可視化調(diào)度決策依據(jù)——讓答辯老師一眼看懂你的 agent 在想什么畢業(yè)答辯最怕被問(wèn)“你的模型到底學(xué)到了什么” 光說(shuō)“它效果好”不夠得讓決策過(guò)程透明。我們用Grad-CAMGradient-weighted Class Activation Mapping技術(shù)把 GCN 策略網(wǎng)絡(luò)的注意力熱力圖投射回原始 DAG 圖直觀展示“為什么選這個(gè)任務(wù)分配給這臺(tái) VM”。6.1 修改 GCNPolicy暴露中間層梯度在models/gcn_policy.py中添加鉤子函數(shù)class GCNPolicy(nn.Module): def __init__(self, ...): super().__init__() self.gcn1 GCNConv(task_feature_dim, hidden_dim) self.gcn2 GCNConv(hidden_dim, hidden_dim) # 注冊(cè)鉤子捕獲 gcn2 的輸入梯度 self.gcn2_grad None self.gcn2.register_full_backward_hook(self._hook_fn) def _hook_fn(self, module, grad_input, grad_output): self.gcn2_grad grad_output[0] # [num_tasks, hidden_dim] def forward(self, task_data: Data, vm_state: torch.Tensor) - torch.Tensor: x torch.relu(self.gcn1(task_data.x, task_data.edge_index)) x self.gcn2(x, task_data.edge_index) # [num_tasks, hidden_dim] # ... 后續(xù)編碼邏輯 return q_values def get_cam_weights(self, task_data: Data) - torch.Tensor: 返回每個(gè)任務(wù)節(jié)點(diǎn)的 CAM 權(quán)重 [num_tasks] if self.gcn2_grad is None: raise RuntimeError(Run forward backward first) # Grad-CAM: α_k mean(?L/?A^k) → 權(quán)重 weights self.gcn2_grad.mean(dim1) # [num_tasks] return torch.relu(weights) # ReLU 保留正向貢獻(xiàn)6.2 可視化腳本生成帶熱力圖的 DAG 圖visualize_cam.py腳本自動(dòng)渲染# visualize_cam.py import matplotlib.pyplot as plt import networkx as nx from torch_geometric.utils import to_networkx def plot_cam_dag(task_data: Data, cam_weights: torch.Tensor, save_path: str): G to_networkx(task_data, node_attrs[x]) pos nx.spring_layout(G, seed42) # 歸一化權(quán)重到 0-1 weights_norm (cam_weights - cam_weights.min()) / (cam_weights.max() - cam_weights.min() 1e-8) # 繪制節(jié)點(diǎn)顏色深淺 CAM 權(quán)重 node_colors [plt.cm.Reds(w.item()) for w in weights_norm] nx.draw_networkx_nodes(G, pos, node_colornode_colors, node_size800, alpha0.9) # 繪制邊 nx.draw_networkx_edges(G, pos, edge_colorgray, width1.5, alpha0.6) # 添加標(biāo)簽任務(wù) ID 權(quán)重值 labels {} for i in range(len(task_data.x)): labels[i] ft{i}\n{weights_norm[i]:.2f} nx.draw_networkx_labels(G, pos, labels, font_size10) plt.axis(off) plt.savefig(save_path, dpi300, bbox_inchestight) plt.close() # 使用示例 env CloudWorkflowEnv(vm_configs, workflow_data) obs env.reset() action policy.get_action(obs) # 此時(shí) policy 已緩存 gcn2_grad cam_weights policy.get_cam_weights(task_data) plot_cam_dag(task_data, cam_weights, cam_heatmap.png)6.3 答辯呈現(xiàn)三張圖講清決策邏輯在答辯 PPT 中放這三張圖原始 DAG 圖黑色節(jié)點(diǎn)灰色邊標(biāo)注任務(wù) ID 和預(yù)計(jì)耗時(shí)CAM 熱力圖紅色越深表示 agent 認(rèn)為該任務(wù)越關(guān)鍵如 t12 在關(guān)鍵路徑上權(quán)重 0.92調(diào)度結(jié)果圖用箭頭連接任務(wù)與 VM標(biāo)注分配時(shí)間與資源占用率如 t12 → VM2CPU 占用 82%。我的習(xí)慣答辯時(shí)指著熱力圖說(shuō)“老師您看t12 節(jié)點(diǎn)最紅因?yàn)樗?Monte Carlo 模擬的聚合匯總?cè)蝿?wù)延遲 1 秒會(huì)導(dǎo)致整個(gè)工作流超時(shí)——我們的 reward 函數(shù)對(duì) SLA 違約懲罰權(quán)重設(shè)為 2.0agent 自動(dòng)學(xué)會(huì)了優(yōu)先保障這類節(jié)點(diǎn)。” 這比背公式管用十倍。另一個(gè)血淚教訓(xùn)別在答辯現(xiàn)場(chǎng) live demo 訓(xùn)練過(guò)程我曾因 GPU 溫度飆升觸發(fā)降頻導(dǎo)致 reward 曲線突然斷崖下跌被問(wèn)“是不是模型崩潰了”?,F(xiàn)在固定用tensorboard --logdirlogs --bind_all提前導(dǎo)出 3 天訓(xùn)練曲線圖答辯時(shí)只播 GIF。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
性爱久久| 看免费一级在线播放毛片| 高潮毛片无遮挡高清免费| 十八禁一区二区无码观看| 麻豆天美电影一区二区| 白嫩国模丰满一二三区| 色呦呦呦在线观看视频| 亚洲欧美小说| 伊人亚洲综合| 美女黑人91神马| 婬女免费一二三区A片| 一区二区不卡视| 亚洲男人天堂2| 99青草| 中文字幕乱在线伦视频中文字幕乱码在线 | 嗯啊不要在线观看嗯啊| 韩国黄片aaaa| 秋霞成人一级在线观看| 91色交| 色在线69堂| 一区黄二区黄| 熟女人妻av在线资源,黄色的资源 粉嫩国产精品久久粉嫩 | 青娱乐久久艹| 国产精品无码av在线 | 日本三级韩国三级99| 人人模人人看| 91美女在线观看| 中文字幕人乱码中文字的预防方法 | 国产怡红院| 日韩不卡毛片Av免费高清| 内射夫妻三片| 黄片免费日韩| 91麻豆天美| 亚州综合AⅤ| 超碰超碰欧美| 久久午夜伦| 色五月av| 亚 欧 美 综合| 超碰99在线观看| 免费在线黄片视频| 黄片免费看黄片免费看| 盗摄女人妻在线| 思思热国产高清| 国产无码久久高清| 香蕉欧美| 亚洲天堂人妻熟妇视频| 午夜无码精品免费看性色| 亚洲无吗在线视频| 欧美一区二区亚洲天堂| 日韩av一级黄片| 亚洲制服欧美另类内射| 亚洲日本韩国在线| 深爱五月婷婷| 欧美有码亚洲中文字幕一区二区三区四区 | 日本高清熟女久久一区| 性影在线视频| 国产av尤物| 91黑丝在线播放| 99热网站| 中国熟女网站| 玖玖超碰熟| 亚洲AV色图一区| 久久成人精品| 网友自拍第1页| 亚洲在钱| 国产精品对白自产拍| juliaann丝袜| 一区二区精品日韩欧美在线观看 | 一起草av| 亚洲人人夜夜澡人人爽| 日韩色香| 18禁无码永久免费无限制| 中文字幕人妻资源在线| 国产日韩欧美三级片| 国产 丝袜 欧美中文 另类| 一区二区三区免费岛国片| AV大香蕉| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 日韩中文字幕视频| 日韩激情中文字幕有码| 精品免费1| 九九久久国产精品怡红院| 传媒在线观看一区二区三区| 午夜亚洲国产理论秋霞| 337p大胆噜噜噜噜噜91Av| 久久天天摸| 夜色五月天| 密臀AV在线| 九九九九一区| 亚瑟国产精品久久无码| 国产玖玖| 男人的天堂kva| 国产精品人妻一区二区| 色欧美天天| 亚洲天天影视综合网| 老熟女天天操| 日本东京热加勒比久久| 天堂av2019| 亚洲se电影| 99婷婷一区二区| 黄片免费看黄片免费看| 欧美熟妇操操视频| 久操免费观看| www.色婷婷色综合| 一区二区三区四区久久视1| 日韩中文字幕精品一二三事国产精品| 99老司机精品视频在线观看| 超碰国产情侣自拍网| 欧美激情黑人| 九九久久一区二区伦理| 欧美A√综合网 | 色婷婷综合网| 自拍第一页| 久久婷婷伊人| 欧美极品色| 人人人摸人人| 国产免费一区二区在线A片视频| 亚洲污污网站| 国产福利av精彩对白| 国产成自自拍在线观看| 性暴力欧美猛交在线直播| 国产精品国产拍高清AV| 夜夜 中文视频rt| 一区不卡在线观看av| 懂色AV一区二区三区| 超碰久草| 中文字幕乱码人妻一区二区三区,99精品| 欧美视频一区二区在线| 日韩精品一区二区三区四虎影视| 欧美 日韩 亚洲 春色| 蜜臀久久一区二区| 一级二级三级黑人无码| 欧美中字二区| 亚洲日本激情| 目产99999久久999| 亚洲欲色| 国产suv精品一区二区四| 天美传媒AV在线播放| 亚洲色偷偷色噜噜狠狠99网| 在线播放成人高清免费视频| 日韩欧美水蜜桃人妻| 四虎午夜影院| 丰满人妻一区| 国产精品无码AV网站| 国产偷人妻精品一区二区在线| 精品人妻av在线播放| 日韩免费福利在线观看| 五月天综合网| 国产A v无码专区| 欧美极品色| 欧美性爱三区二区| 欧美日韩亚洲少妇寂寞影院正在播放 | 欧美性暴力猛交XXXX| 亚洲欧美精品国产一区二区| 97ai亚洲| 十八禁网站在线| www.99色| 亚洲狠| 97在线免费看| 色网在线视频观看免费| 天躁夜夜躁2021| 欧美亚洲综合色| 亚洲高清无码在线桃色| 人人操人人摸人人骑| 内射中出日韩在线观看视频| 亚洲?V高清一区二区三区尤物| 免费一级精品啪啪视频| 在线观看啊啊啊啊啊| 中文自拍欧美影视| 粉嫩av一区二区三区天美传媒| 激情欧美97| 日本一级婬片试看三分钟| 亚洲国产丝袜在线观看| 婷婷综合激情| 国产精品女生av| 九九九999久久久网站| 久久最新免费视频23| 在线观看无码三级少妇| 神马久久久久久久| 丝袜美腿丝袜| 久草在| 99操逼| 中字幕人妻一区二区三区| 激情人妻另类| 97 国产一区| 操操碰| 黄色电影在线播放综合网站| 91狠狠综| 91亚州| 狠操91,com| 国产热RE99久久6国产精品首| 91色综合| 超碰九7| 自拍亚洲综合| 好屌色综合| 99热免费| 欧洲无码一区二区| 人妻熟女一区在| 久久久久国产| 无码男人天堂| 2017大香蕉国产精品久久| 97蜜桃综合| 国产精品大香蕉| 操逼视频免费日韩无码| 日本免费一级AAA大片器| 91bbbbbb| 97在线观看| 蜜臀网址在线| 日韩无码服务区| 日本一久是| 中文字幕88av在线| 成人网欧美风情| 久久激情亚洲精品无码?V| 啪啪视频亚洲第一| 欧美日韩黄片精品在线| 免费网色网站| 国产一区二区三区中文字幕| 欧美精品第四五页中文字幕在线观看| 性欧美91| 两女互慰AV高潮喷水在线观看| 91精品国| 日夜伊人网| 五月丁香狠狠爱| 天天欧美| 精品人妻一区二区三区四区不卡在| 国产精品禁久久久精品| 精产品久久| 91成人无码| 人人妻人人澡人人爽久久av| 99999精品| 你懂的在线观看区国产| 亚洲无码超碰免费| 色在线亚洲视频www| 97人人操人人摸人人爱| 亚洲强奸乱伦影视网| 一区二区三区免费岛国片| 精品性爱一区二区| 717影院理论午夜伦八戒| 女人被添高潮免费视频| 色五月激情综合网| 九九国产热| 久久同城AV| 欧美日韩第一页| http://qxhbdz.com| 欧美色66| 人妻蜜桃臀| 97极品无码| 日韩一级二级三级免费看完整版| 欧美中出| 丁香五月婷婷基地| 欧美72网页| 亚洲图片欧美另类综合免费视频大大香| 久久成人东京热人妻| 97视频网站| 国产特级毛片AAAAAA高潮流水 | 97这里有精品| 天天懆天天日| 五月婷婷丁香| 亚洲欧美国产va在线| 人爽不卡视频| www狠狠| 好爽,再快点啊哈嗯嗯嗯嗯| 久久久精品久久| 九九操久久国产免费视频| 啊啊啊啊网站| 婷婷伊人綜合中文字幕小说| 和协无码影院| 久久久青青草| 婷婷久久久| 中美日韩毛片| 欧美亚洲图片| 91干熟女| 99re热| 99国产精品人妻人伦| 日本不卡卡一区| 白丝AV网站| 日韩中文字幕宗合在线| 久久综合97| 亚洲AV无码AV吞精久久久久| 无码久| 边做饭边操逼逼| 五月婷婷爱六月丁香色| 欧美激情黑人| 奇米四色影视777久久久| 亚洲熟妇图片| 国产精品一区二区手机看片| 91校园春色长篇| 狠狠2050在线观看| 夜色AV无码手机在线影院| 高清不卡一二三区视频......| av天堂加勒比| 五月综合色| 中文字幕精品亚洲熟女| 久久久亚洲高清不打码| 中文字幕AV片| 精品中文字幕第一页| 另类图片五月| 久久在线观看免费视频| 欧美亚洲国内自拍| 伊人骚琪琪亚洲天堂网站| 亚洲无码99| 久久久久96| 在线一道啪| 亚洲日韩东京热一区| 18禁看网站一区| 久久久久久夜夜夜夜夜| 18禁看网站一区| 九九天堂| 亚瑟国产精品久久无码| 天天色播亚洲综合网站| 91 亚洲情侣偷拍 久久| 一区二区三区黄片免费观看| 十八禁电影伊人网| 在线无码操| 日韩熟女视频二区| 九九九九九九九精品视频| 精品人妻久久久久一区二区三区| 久久东京国产精品视频| 人人妻天天做天天爽| 亚洲性爱无码乱伦av| 色亚州人久干视频在线观看免费版| 久久久精品网站| 欧美中文字幕一区| 黑人无码一区二区| 2003天天干夜夜操| 熟女自慰久久久| 亚洲精品性爱片| 超碰 另类 欧美 | 91亚洲黄色网| 女同在线视频一区| 超碰成人最新最好看| 91熟女视频网| 后入美女国产| 国产操操日韩三级黄| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 国产女大学生AV| 欧美夜色| 玖玖综合.com| 国产高清无码一区三区二区| 亚洲天堂男| 99啪啪视频| 亚洲天天影视色综合| 亚洲另类在线观看| 日本高清视频xxxx| 日日躁夜夜躁狠狠躁超爽| 日韩紧密久久| 十八禁啪啦拍视频无遮挡| 欧美BT 亚洲色图| 国产精品网站www| 日本亚洲熟女视频| 激情小说图片亚洲首页| 酒色综合网| 国产熟女| 欧美天天插| 国产区性爱在线视频秋霞豆| 精品亚洲| 欧美在线亚洲| 美女让帅哥通她小鸡鸡| 蜜臀在线免费观看在线免费观看| 亚洲一区二区三区AV无码| 一区二区三区免费视频入口| 亚洲激情欧美色图| 亚洲色图综合网| 亚洲熟妇丝袜在线观看| 综合一区中亚洲国产成人综合精品 | 男人午夜天堂| 果冻传媒A片一二三区| 91大神电影天堂| 91国产精品在线看| 日韩女模中文造逼| 天堂俺去俺来也www久久婷婷| 中日韩免费看男女操逼大全| 九九久精品| 裸体美女久久久| 18岁禁 茉莉成人久久| 夜夜欧美 | 日韩色欲久久一二三四区| 久草新在线| 日韩成人人妻网站| 208天天久久九九九| 97青娱乐超碰久久| 国产九九久久久精品| 伊人亚洲国产一成人久久精品,久久| 少妇无码av专区线| 中文字幕日韩电影人妻| 在线无码网站| 国产特级毛片AAAAAA高潮流水| 97干97色| 性色av大全| 女人天堂av在线播放| 91国模| 欧州91高潮| 96精品久久| 91白嫩| 91亚州| 亚洲天天综合| 中文操逼字幕| 欧美性爱91| 在线播放一级无码视频| 国产高清无码一区三区二区| 国产精品无码av在线| 插日本熟女视频| 91三级理论片播放器| 国产成人自拍视频在线| 亚洲AV成人无码一区二区三区在线观看 | 丁香五月成人| 亚州色图第三区| 欧美专利1区2区3区4区5区免费| 好湿好紧好爽 视频| 色性荡荡荡荡视频| 嫩草黄页| 夜夜欢天天干| 在线毛片片免费观看| 国产精品探花色| 日本三级一区二区 在线| 亚欧视频在线| 97色97好| 狠狠操使劲操| oumeisetupian| 校园春色亚洲无码| 深喉吞精| 青青免费在线视频一区| 国产精品爽爽v| 亚洲成人久久美女| 夜夜高潮夜夜爽| 麻豆国产成人精品| 色网亚洲人| 在线a亚洲视频播放在线| 成人性爱AV在线免费观看| 日韩一区二区三区四区五区| 国产精品一区人妻精品阁在线| 国产不卡片| 九九热精彩视频| 777超碰| AA级电影三区| 九九色色| 亚洲双插| 乱操乱伦AV| 秋霞曰韩R级| 欧美天天综| 欧美色图小说综合| 日本在线观看网址| 久久五月婷| 91激情网| 国产人人干| AV一起草在线| 国产成人网| 国产超碰国产97| 岛国不卡超碰护士AV在线播放| 欧美日韩久久精品爱爱| 麻豆这里只有精品| 97伪v| 91亚州| 日韩AV一区二区三区四四| 色综合超碰超| 伊人操你| 嗯嗯啊好大| 国产v亚洲v日韩v欧美v片另类| 91精品啪在线观看国产城中村| 91欧美偷拍| 国产精品成人午夜福利| HEYZO高无码国产精品227| 农村妇女精品一区二区| 中国熟女老妇仑乱一区二区三区| 国产女人高潮视频| 精品人妻一区二区三区日产| 制服乱伦| 亚洲第一男人天堂| www.国产高潮精品| 欧美亚州色的图| 麻豆国产精品午夜视频| 影音综合网| 精品少妇999| 五月丁香啪| 9Ⅰ超碰| JULIA一区二区三区在线播放| 久久同城AV| 国产精品久久久久久久黄无码| 中文字幕88av在线| 91亚洲综合| 亚洲国产第一页综合视频| 78精品在线| 制度丝袜99| 欧美大香蕉在线观看| 国产福利合集| 91欧美| 欧美999| 综合久草| av网页一区二区三区| 日韩78m视频| 欧美一区二区三区另类精品| 我爱操| 婷婷91| 福利在线视频一区二区| 91c色| 丝袜色综合| 97精品综合久久| 亚洲中文字幕在现观看| 久久综合中文国产| 加勒比久久综合网高清| 情色图区| 人人手机欧洲亚洲国产人妻| 成人午夜高潮av猛片| 91天天综合网,天天综合网| 先锋影音av先锋一区| 在线免费试看60秒| 五月婷婷六月丁香| 操屄日韩| 色97干| 宗合情欲网| 91碰超| 欧美综合色,www| http://qxhbdz.com| 18啪啪手机免费性爱| 国产黑白丝在线| 91狠婷| 少妇人妻好深太紧了vr91| 日日干日日摸| 天天日天天舔东京热| 日日夜夜精品| 国产精品人妻无码久久久互動交流 | 日本久久99| 少妇厨房愉情理伦片bd在线观看 | 日韩AC| 中文操逼字幕| 啊啊啊慢点| 九X超碰| 色色色色综合网| 2017人人操,人人摸| 美女十八禁| 午夜精品久久久久久久男人的天堂 | 婷婷五月成人| 污污汅18禁网站在线永久免费观看 | 成人片在线播放| 综合久久久久久久久91| 欧美亚洲手机在线| 伊人四虎综合| 国产二区三区粉嫩在线| 欧洲Au麻豆| 天天插天天操| 欧美一级特黄淫片在线观看| 亚洲丝袜诱惑| 人妖欧美一区二区| 亚洲日本大香蕉1| 日本久久综合| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 免费A V在线播放| 高清无码久操视频| 亚洲色电影在线| 精品少妇一区二区三区| 97伪v| 东北女人的毛片| 九九九网站| 91模特在线观看| 伊人伊人LD| 久久久婷| 久视频在线观看| 亚洲丝袜色| 国内三级自拍小视频在线观看 | 欧美大色交| 密臀在线免费观看| 99啪啪视频| 天天摸天天插天天日| 亚洲最大91网| 25国产精品免费观看| 免费观看啪视频| 亚洲成人在线播放| 99激情视频| 亚洲日韩精品在线播放| 先锋精品av色鲁| 男人高清无码一区二区| 天堂69亚洲精品中文字| 飘花国产午夜精品不卡| 大香蕉www.超碰| 亚洲天堂7777| 一区二区三区欧美激情| 婷婷色影院| 天天添天天干电影| 欧美色图亚洲色图成人在在线| 97资源制服丝袜| 日韩精彩免费| 久久伊人青青草| 偷拍综合亚洲| 99999国产| 黄页av| а√天堂资源官网在线资源| 欧美日韩啪啪电影| 无色无码| 成人精品在线观看| 久久人妻四季| 亚洲se电影| 欧美情色亚洲| 日日骚一区二区三区| 嗯嗯啊啊好爽| 免费看黄视频亚洲网站| 色综合久| 日日日啊啊啊| 日本中文字幕熟妇| 日韩性爱啪啪视频| 国产成人精品无码久久| 99精品久久久久久久婷婷蜜桃| 人妻熟女一区在| 久久av网| 撸无码不卡免费视频| 91视频综合网| 国产精品嫩草影院免费| 亚洲成人免费在线| 日本日日色视频| 五月天婷婷社区| 日韩欧美福利视频看看| 草莓精品视频| 欧美页片| 超碰99re| 欧美日韩在线视频网站| www.色婷婷色综合| 久草色悠悠在线视频| 青青草大香蕉视频| 国产精品高清2021在线| 久久香蕉网| 青青草色插素人| 99国产人成精品| 国产外初女出血视频| 亚洲日韩国产精品| 国产精品久久伊人| 国产美女精品| 黄色大片视频在线免费看| 久久超碰国产一区二区三区| av中文在线| 动漫av中文| 激情五月综合开心五月| 五月激情综合网| 一区二区播放| 探花熟女,姿勢到位,體驗感也到位| 欧美精品成人亚洲| 在线二区不卡| 三级片网站在线播放| 欧洲一区二区三区免费| 日韩簧片免费看| 99色悠悠| 十八禁黄色| 黄色片大香蕉| 亚洲宗合网| 国模无码人体一区二区三| 婷婷伊人| 久草新在线| 中文字幕av乱伦| 东北操逼| 99re国产中文字幕| 人妻 欧美亚洲| A片 AV一级在线播放观看免费| 日本淫穴在线| 精品久久无码午夜福利| 夜夜爽妓女| 国产福利视频精品视频| 深夜操逼网| 男人天堂新| 不卡在线一区,精品一区二区三区中| 超碰偷拍| 97久久久| 亚洲美女精品九九视频| 日日夜夜狠狠| 97综合在线| 国语人妻精彩刺激| 国产精品原创巨作?v网站| 97硬碰| 2020中文在线一区二区三区| 四虎免费视频| 去干网最新版| J?P?NESEHD熟女熟妇伦| 日本国产亚洲一区在线观看| 色婷婷久久| 少妇被c 黄 免费观看| 暖暖精品二区三区观看| 亚洲三区视频| 亚洲在线综合| 另类小色呦| 91爱| 久久夜嗨| 大香蕉九九| 久久午夜色播影院免费高清| 五月天婷婷综合网| 午夜.DJ高清在线观看免费7| www.男人天堂| 久久美女国产| 久久二| 91大学精品激情戏| 国产一区二区三区白丝| 狠狠操狠狠燥| 91美女视屏| 影音先锋视频在线| 青草伊人久久| 久久只有精品一区二区三区| 久久久久亚洲Aⅴ无码| 丝袜美腿操av| 亚洲最大的黄色电影网站。| 九九精品无码专区免费| 久久久精品久久| 亚洲成人免费电影| 欧美精品久久久久久久丰满| 天天日美女的B| 婷婷五月天成人网| 国产亚洲精品久久久久小| 97超碰精品图片| 少妇诱惑视频| 亚洲成人av色网| 91足交| 啊啊啊啊啊啊在线观看| 久久婷婷苹果| 久久欧洲| 青青青国产| 欧美特大黄一级片片免费| 熟妇人妻一二三区免费| 欧美亚洲厕所精品偷拍91| 久久精品店| 激情综合网激情综合| 死我十八禁| 色五月首页| 中文乱码字字幕在线第5页| 狠狠爱夜夜干| 91路www| 色天使大香蕉| 国产欧美伊人| 亚洲第一页综合在线| 欧美日韩理论一区| 五月天丁香| 操逼网站地址| 国产亚洲日本精品在线| 日韩av电影成人在线| 另类小说欧美激情校园春色| 精品二999| 激情综合av| 欧美日韩夜夜| 五月婷婷激情| 婷婷五月天激情网| 91在线无码精品秘 软件| 国产精品久久久久亚洲av| 男女猛烈无遮掩视频免费软件| 亚洲情色 欧美| 免费视频观看60秒| 9.1小视频| 成人AV在线网站| 久久超碰av在线| 少妇99成人麻豆| 亚洲乱色视频一区、二区在线| 日日夜夜天天| 亚洲国产成人精品无码专区| 天天弄天天操| 欧美系列在线一区二区| 干日本人少妇午夜寂寞影院| 天天操夜夜操狠很操| 干干干天天| 久久久久久久久久va| www亚洲欧美| 久久久久久久9999| 欧美性五月| 自拍六区| 久久超碰97| 亚洲男人综合| 日本一区二区三区午夜观看| 91人妻在线视频| 伦理第一页| 久久六六| 综合色91| 久久大香蕉97| 四虎精品一区| 日韩精品午夜操呦呦不卡影院| 中文字幕午夜精品久久久| 国产三级中文字幕粉嫩| 精品人妻视频一区二区在线播放 | 东北女人| 久久人爽| 蜜桃午夜视频一区二区 | 中日亚韩免费视频| 亚洲成人性爱在线观看| 99久re热视频精品98| 老色69| 91/欧美| 躁躁躁日日躁2020| 欧美福利视频啊啊啊啊| 国产精品视频白浆免费| 亚洲另类在线观看| 国产福利视频精品视频| 在线中文字幕极品av| 97在线精品| 日本99一区二区| 一本色道久久综合狠狠操| 明星性猛交ⅹxxx乱大交| 天堂а√在线最新版在线| 韩国一级婬片A片无码天美| 黄片直播三级黄片两女一男| 狠狠中文字幕| 麻豆区久久久久亚| 啊啊啊免费视频| 国产97视频免费观看| 99久热| 999九九九九国产动| 91精片| 性在久久久久久| www四虎| 熟妇女伦乱视频视频| 又粗又长又大国产不卡| 国产男人又猛又粗又爽| 99re这里只有精品3| 欧洲精品一区二区三区| 97超碰总站| 亚洲电影中字一区二区| 国产亚洲禁久一区二区 | 91无码人妻精品一区二区三区蜜桃 | 午夜性生活av免费在线看| 色欲蜜臀AV| 亚洲少妇诱惑| 偷拍导航视频网站| 日韩亚洲国产视频| 少妇蜜汁| 嗯~啊~快点 死我视频免费看网站| 中文字幕久久婷婷丁香五月天| 日韩性爱电影一区| 欧美视频激情久久久久久| 人人妻人人爽一区二区三区| 丁香六月东京热| 中文字幕亚洲欧美在线不卡| 公司1区2区3区精产精| 色色网91| 亚洲男人天堂网久久| 风月影院十八禁| 韩国一级婬片A片AAAAA| 美女爽爽爽刺痛洞洞| 岛国在线免费视频| 久插综合| 夜夜草天天| 欧美激情视频一区二区三区不卡| 99999国产| 国模不卡| 亚州精品人妻一二三区| 久久直播国产| 一区二区三区蜜桃成人撸久久东京热| 国产精品动态一区二区三区四四| 超碰成人公开| 亚洲和欧美裸体美女双飞视频| 免费?级毛片无码?∨蜜芽试看| 中文字幕 一区二区 亚洲无码| 亚洲综合伊人无码久久| 五月天婷婷基地| 婷婷五月成人| 久啪视频| 五月天色图| 91视频在线观看18| 一本一道人妻久久一区二区三区| 狠狠爱夜夜| 久久精品人体| 午夜啊啊| 婷婷伊人一区| 国产精品不卡高清在线观看| 屌妞视频久久久久久久久久久久| 国产成人超碰在线| 久久超碰98| 岛国大片在线观看网站入口| 人乳av| 97人人模人人爽人人| 国产精品久久久久久久久久久久久久吹 | 亚洲国产成人精品无码专区| 天天摸天天舔天天操| 国产精品女久久久久av爽| 1024午夜激情男人的天堂| 欧美性爱另类综合| 亚洲 欧美 日韩另类 麻豆| 人人扣人人操| 97视频在线看| 情色AV电影| 国产亚洲精品美女久久久| 试看60秒| 国内91熟女人妻丝袜天天精品视频在线 | 国产99999| 99re这里只有精品3| AV和黑人在线播放| 欧美成人精品一区二区男人蜜臀| av在线资源| 国产精品九九九| 极品后入免费视频| 不卡免费av在线播放| 亚洲欧洲自拍| 97视频620| 九九黄色视频在线观看| 欧美超碰在线| 亚洲和欧美裸体美女双飞视频| 日本人人操人人操| 91亚洲欧洲| 亚州日韩97| 日韩精品99999| 豆花视频操逼网址| 日本三级小说中文字幕| 无码精品久久| 熟妇人妻一区二区三在线| 亚洲AV无码乱码在线观看性色| 亚州色综合| 97一区二压| 九九碰九九爱97超碰| 久艾草在线精品视频在线观看| 啊啊啊轻点在线观看| 色5月婷婷| 性色av大全| 人妻熟女一区二区三区视频| 综合干干干av久久久综合网 | 九九热免费视频| 1769国内精品视频| 国产欧美日产一区二区三区 - 国产欧美日 | 97亚洲色图| 加勒比海成人视频网| 人妻精品综合中文字幕在线 | 九九热九九热| 岛国片在线观看视频亚洲| 強姦亂倫a| 91丰满| 在线天堂999| 狠狠色婷婷7777久| 偷看洗澡一二三区美女| 影音先锋日本一区二区| 91劲爆| 韩国女主播青草在线| 色青青久久影视| 国产亚洲精品农村妇女| 成年无码动漫av片无尽在线| 91N综合网| 91美女視頻| 激情四射五月天| 中文字幕91综合| 九九色色| 91强奸乱轮| 久热香蕉精品在线视频| 先锋影音av先锋一区| 污色区网站| 国产免费内射视频| 99少妇| 搡老女人老91二区| 看看小穴| 黄色免费网页无码| 国产乱色国产精品免费视| 一本色道熟妇| 亚洲精品97p| 中文一区二区| 9 1超碰九色| 五月天欧美色图| 男人的天堂久久狠| 精品九九淫乱男| 99精品久久久久久| 夜夜 中文视频rt| 午夜综合在线| 久久久久久久六六| 9.1小视频| 天天综合网亚洲综合网| 丁香婷婷啪啪| 精品久久久av无码免费| 97在线免费观看| 成人精品无码| 老司机福利青青草| 午夜精品久久久久久久久久久久久| 97在线日韩中文字幕| 日韩本不卡视频在线观看| 伊人网在线点播| 777超碰| 99re9| 天天干天天燥| 粉嫩粉嫩一区性色AV片| 国产精品久久久久久 百度| 亚洲一区二区AV| 97在线/亚洲| 亚洲狠| 成人小说另类在线| 91精品久久久久五月天精品| 超碰97亚洲| 免费观看成人www精品视频| 国产黄色剧情影片麻豆免费播放| 97久久国产| 亚洲第一页第二页激情| 思思热免费在线视频| 国产精品自拍欧美在线| 91肏屄网| 国产日韩精品一区二区三区| 97精品久久久久久久| 69AV女优男人的天堂| 91男人天堂网| 九七人妻在线| 97亚洲精品| 欧美人人操人人插| 久久久无码精品人妻二区| 亚洲天堂久| 91久久青青草原精品| 男人午夜天堂| 精品国产人成在线| 欧美操逼熟女| 日本有码影片下载 | AV大香蕉| 日日夜夜草草草| 亚洲久9| 国产精品亚洲一级av第二区| 日韩一级二级| 成人久久精品| 成·人免费午夜在线观看| 中文字幕一区二区三区字幕| 日韩女模中文造逼| 日日干夜夜干| 久久 亚洲 日韩 人妻| 老司机香蕉久久久久| 成人a级高清视频在线观看| www.狠狠操| 都市激情人妻一区二区青青操视频 | 熟女中出视频| 躁躁躁日日躁2020| 强奸乱伦 亚洲一区| 99性爱| 日日干日日操五月天伦理视频| 亚洲女人毛茸茸91| 国产精品久久久啊| 妇女性内射冈站HDWWWCOM| 91亚洲情色| www.超碰| 久热婷婷| 国产精品制服丝袜清纯唯美| 天天日夜干| 992这里有精品| 男人a天堂手机在线版| 免费a在线播放v| 婷婷四五区| 亚洲色图欧美色图另类图片| 伊人久久婷婷| av爱爱爱| 婷婷五月天激情四射| 日韩精品资源| 日韩国产乱子伦App| 久久国产成人精品国产成人亚洲| 在线中文字幕| 久操电影网| 曰韩精品九九无码| 蜜乳AV一区| 夜夜草我| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 亚洲国内精品成人不卡| 3D污黄视频在线观看| 日韩人妻无码不卡网站| 日本黄色裸日本黄色裸体 | 麻豆一区在线| 色色色色网站| 97资源站日韩| 久久嫩草国产成人一区| 国产女同视频在线播放| 欧美最大综合网| 熟女乱伦二区| 蜜臀99久久精品久久久懂爱| 亚洲欧美性生活| 亚洲成人福利电影免费| 五月天久久人妻| 不卡九肏| 国产精品免费视频人成| 野狼福利社区| 91l欧美在线| 婷婷五月天影院| 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 日韩激情视频| 99爱爱| 精品人妻一区二区三区在| 91天天综合网,天天综合网| 日韩一级片在线看| 女人与公拘交酡2020视频| 快播久久人人aV| 国产超碰在线一区| 强免费黄色网址| 亚洲 小说 欧美 激情 另类| 青青草原伊人网| 屌妞视频久久久久久久久久久久| 狠狠穞A片一區二區三區| 日韩高清黄片| 美欧色综合| 中文字幕第页| 日本人人操人人操| 亚洲精品乱码线路中文字幕| 水滴偷拍| 天天综合网~91综合网| 怡红院视频在线| 亚洲五月婷婷| 国产Aα| 日本性交操一区二区不卡系列| 亚洲91大片| 亚洲人在线| 99色视频| 日韩午夜啪啪视频| 一区二区三区免费视频入口| 骚女天天综合网| 日韩情色AV| 97AV爱| 成人五月香网在线| 秋霞曰韩R级| 久久久久亚洲Aⅴ无码| 国产精品黑人一区二区三区| 啊啊啊啊好疼| 91中文字幕在线观看| 男人天堂久久精品不卡| 国产精品视频电影| 美腿色图| ji熟女.com| 无码动漫av中文字幕| 一二三区操逼国产91| 欧美成人精品欧美一级乱黄一区二…| chaopen97久久| 啊啊啊啊啊啊啊网址在线观看| 国产农村妇女精品1区二区| 清纯唯美亚洲综合| 国产乱码久久久| 91超碰丝袜制服| 一区,二区,三区视频| 天天综和| 一区=区三区视频| 色色色网站| 超碰99在线观看| 国产一区二区啪啪视频| 亚洲无码AV九九九| 性爱综合一区二区| 国产拍偷精品网站| 国产精品久久久吖| 啪啪自拍九九综合| 亚洲风情在线观看| 激情五月天中文字幕色| 亚洲欧美首页| 国产农村妇女精品| 素人无码中文字幕| 亚州欧美综合| 99少妇| 久久尹人大香焦视| 国产视频人人网| 超碰在线人妻中文字幕| 国产精品人人爽人人做可爱福利| 嗯嗯啊啊啊好爽| 国产女人视频三四五区| 午夜福利一区二区影院| 成人无码在线超碰网| 日韩欧美大力操| 日本午夜操逼| 激情看片网站| 伊人五月天| 日韩一区二区精品视频| 国产无马av| 欧美男人一区| 欧美少妇一区二区三区| 五月婷婷hd| 青青草成人视频在线观看二区| 麻豆久久久久久久久丝袜| 午夜精品久久久久久久99热影院| 搞中出视频在线观看| 99最新日韩偷拍视频| 人妻素股| 精产品久久| 69国产对白刺激| 免费的很黄很污的全部视频| 黄片视频观看| 在线综合色| 色97| 91肏屄网| 美女上床网站| 操屄日韩| 郑州宾馆老熟女露脸啪啪| 亚洲欧美中文日韩视频中国语|