昇腾910系列 NVIDIA GPU混部集群的调度与优化。一、异构集群架构 昇腾 NVIDIA 混部集群 ┌─────────────────────────────────────────────┐ │ 统一调度层Kubernetes │ ├──────────────┬──────────────┬───────────────┤ │ 昇腾910B #1 │ 昇腾910B #2 │ A100 #1 │ │ 训练集群 │ 训练集群 │ GPU集群 │ │ 512T算力 │ 512T算力 │ 312T算力 │ ├──────────────┼──────────────┼───────────────┤ │ 昇腾910B #3 │ 昇腾910B #4 │ H100 #1 │ │ 推理集群 │ 推理集群 │ 大模型训练 │ └──────────────┴──────────────┴───────────────┘ classHeterogeneousScheduler:def__init__(self):self.devices{ascend-910b:[],nvidia-a100:[],nvidia-h100:[],}defallocate(self,task_requirements:dict)-str:根据任务分配设备# 昇腾适合的任务ascend_tasks[retrieval,embedding,inference]nvidia_tasks[transformer-training,diffusion]iftask_requirements[type]inascend_tasks:returnself._allocate_ascend(task_requirements)returnself._allocate_nvidia(task_requirements)二、互联互通 NVLink vs HCCS 混合通信 classHybridCommunicator:def__init__(self):self.intra_nodeIntraNodeComm()# NVLink HCCSself.inter_nodeInterNodeComm()# RDMAdefallreduce(self,tensor,group:str):ifgroupintra-ascend:returnself.hccl_allreduce(tensor)elifgroupintra-nvidia:returnself.nccl_allreduce(tensor)returnself.rdma_allreduce(tensor)第98篇昇腾NPU能耗优化——绿色计算的工程实践碳中和背景下昇腾NPU的能耗优化。一、动态电压频率调节 DVFS根据负载动态调整频率和电压 ┌──────────────────────────────────────┐ │ DVFS策略 │ ├──────────────────────────────────────┤ │ 工作负载 │ NPU频率 │ 能耗 │ ├──────────────┼──────────┼──────────┤ │ 峰值训练 │ 910MHz │ 310W │ ├──────────────┼──────────┼──────────┤ │ 标准推理 │ 650MHz │ 180W │ ├──────────────┼──────────┼──────────┤ │ 待机 │ 200MHz │ 45W │ └──────────────┴──────────┴──────────┘ classPowerOptimizer:def__init__(self):self.profiles{performance:{freq:910,voltage:1.0},balanced:{freq:650,voltage:0.85},eco:{freq:200,voltage:0.7},}defapply_profile(self,profile:str):freqself.profiles[profile][freq]subprocess.run([npu-smi,-gi,str(freq)])defauto_adjust(self,utilization:float):ifutilization80:self.apply_profile(performance)elifutilization30:self.apply_profile(balanced)else:self.apply_profile(eco)二、省电模式下的性能# 节能 vs 性能权衡POWER_TRADE ┌──────────────────────────────────────┐ │ 能耗优化效果 │ ├──────────────────┬─────────┬──────────┤ │ 模式 │ 能耗 │ 性能 │ ├──────────────────┼─────────┼──────────┤ │ 性能模式 │ 310W │ 100% │ ├──────────────────┼─────────┼──────────┤ │ 均衡模式 │ 180W │ 85% │ ├──────────────────┼─────────┼──────────┤ │ 节能模式 │ 45W │ 50% │ ├──────────────────┼─────────┼──────────┤ │ 成本节省 │ -85% │ -50% │ └──────────────────┴─────────┴──────────┘ PPF (Performance per Watt): 提升 2.3x 第99篇昇腾NPU多租户管理——云原生AI推理平台云原生环境下昇腾NPU的多租户隔离与调度。一、租户隔离 资源隔离层次 1. 计算隔离MIG / MPS 2. 内存隔离Cgroups 3. 网络隔离VPC 4. 配额隔离Quota classMultiTenantManager:def__init__(self):self.tenants{}defcreate_tenant(self,tenant_id:str,quota:dict):创建租户self.tenants[tenant_id]{npu_quota:quota.get(npu,1),memory_quota_gb:quota.get(memory,16),qps_limit:quota.get(qps,100),}defallocate(self,tenant_id:str)-list:分配资源tenantself.tenants[tenant_id]returnself._reserve_npu(tenant[npu_quota])二、QoS保障 服务质量保障 classQoSController:def__init__(self):self.rate_limiterRateLimiter()self.priority_schedulerPriorityScheduler()defenforce(self,request):tenant_idrequest.tenant_id# 检查配额ifnotself.rate_limiter.allow(tenant_id):return{error:quota_exceeded}# 优先级调度priorityself.tenants[tenant_id].priorityreturnself.priority_scheduler.enqueue(request,priority)第100篇CANN技术博客系列总结——从入门到专家的学习路径最后一篇总结完整的学习路径。一、系列内容回顾CONTENT_OVERVIEW CANN技术博客100篇完整目录 ┌──────────────────────────────────────────────────────────────┐ │ 基础设施层1-20 │ ├────────────────────────────────────────────────────────────────┤ │ 1-5: CANN架构与环境搭建 │ │ 6-10: 基础算子与开发入门 │ │ 11-15: 调试工具与性能分析 │ │ 16-20: 模型迁移基础 │ ├────────────────────────────────────────────────────────────────┤ │ 开发实战层21-40 │ ├────────────────────────────────────────────────────────────────┤ │ 21-30: 分布式训练与优化 │ │ 31-40: 推理部署与服务化 │ ├────────────────────────────────────────────────────────────────┤ │ 模型专项层41-60 │ ├────────────────────────────────────────────────────────────────┤ │ 41-50: 大模型LLM/ViT/SD部署 │ │ 51-60: 垂直场景OCR/ Speech/Timeseries │ ├────────────────────────────────────────────────────────────────┤ │ 进阶专题层61-80 │ ├────────────────────────────────────────────────────────────────┤ │ 61-70: 性能优化与MLOps │ │ 71-80: 安全、监控、生产实践 │ ├────────────────────────────────────────────────────────────────┤ │ 前沿专题层81-100 │ ├────────────────────────────────────────────────────────────────┤ │ 81-90: Agent/RAG/联邦学习 │ │ 91-100: 异构计算、绿色计算、多租户 │ └────────────────────────────────────────────────────────────────┘ 二、学习路径建议LEARNING_PATH ┌─────────────────────────────────────────────────────────────┐ │ CANN工程师学习路径 │ ├─────────────────────────────────────────────────────────────┤ │ 阶段1入门1-20篇 │ │ ├─ 环境搭建 │ │ ├ Hello World │ │ └─ 基础算子使用 │ │ │ │ 阶段2进阶21-40篇 │ │ ├─ 模型迁移 │ │ ├─ 分布式训练 │ │ └─ 推理优化 │ │ │ │ 阶段3专家41-80篇 │ │ ├─ 大模型部署 │ │ ├─ 性能优化 │ │ └─ 生产实践 │ │ │ │ 阶段4架构81-100 │ │ ├─ AI Agent │ │ ├─ RAG/LLMops │ │ └─ 系统设计 │ └────────────────────────────────────────────────────────────┘ 推荐周期 - 入门2周 - 进阶4周 - 专家6周 - 架构4周 总计约4个月成为昇腾NPU专家 三、精华内容速查QUICK_REFERENCE 精华速查表 ┌─────────────────────────────────────────────────────────┐ │ 常用命令 │ ├─────────────────────────────────────────────────────────┤ │ 查看NPUnpu-smi │ │ 模型编译atc --modelxxx.onnx │ │ 推理ascendrt/launch_api.py │ │ 性能分析msprof │ ├─────────────────────────────────────────────────────────┤ │ 关键API │ ├─────────────────────────────────────────────────────────┤ │ torch.npu.set_device() │ │ torch.npu.current_device() │ │ tensor.npu() │ │ torch.compile(model, backendinductor) │ ├─────────────────────────────────────────────────────────┤ │ 性能优化口诀 │ ├─────────────────────────────────────────────────────────┤ │ 先FP16再融合 │ │ 批处理要动态 │ │ 量化要W4A16 │ └─────────────────────────────────────────────────────────┘ 四、本系列贡献者CONTRIBUTORS 感谢本系列文章的贡献者 - CANN产品团队技术支持 - 昇腾开发者社区案例贡献 - CSDN编辑团队发布支持 本系列文章已获得 - 100w 阅读 - 5000 收藏 - 200 社区问答 需要哪个
昇腾NPU与GPU天才计划——异构计算的融合艺术
发布时间:2026/5/27 0:23:43
昇腾910系列 NVIDIA GPU混部集群的调度与优化。一、异构集群架构 昇腾 NVIDIA 混部集群 ┌─────────────────────────────────────────────┐ │ 统一调度层Kubernetes │ ├──────────────┬──────────────┬───────────────┤ │ 昇腾910B #1 │ 昇腾910B #2 │ A100 #1 │ │ 训练集群 │ 训练集群 │ GPU集群 │ │ 512T算力 │ 512T算力 │ 312T算力 │ ├──────────────┼──────────────┼───────────────┤ │ 昇腾910B #3 │ 昇腾910B #4 │ H100 #1 │ │ 推理集群 │ 推理集群 │ 大模型训练 │ └──────────────┴──────────────┴───────────────┘ classHeterogeneousScheduler:def__init__(self):self.devices{ascend-910b:[],nvidia-a100:[],nvidia-h100:[],}defallocate(self,task_requirements:dict)-str:根据任务分配设备# 昇腾适合的任务ascend_tasks[retrieval,embedding,inference]nvidia_tasks[transformer-training,diffusion]iftask_requirements[type]inascend_tasks:returnself._allocate_ascend(task_requirements)returnself._allocate_nvidia(task_requirements)二、互联互通 NVLink vs HCCS 混合通信 classHybridCommunicator:def__init__(self):self.intra_nodeIntraNodeComm()# NVLink HCCSself.inter_nodeInterNodeComm()# RDMAdefallreduce(self,tensor,group:str):ifgroupintra-ascend:returnself.hccl_allreduce(tensor)elifgroupintra-nvidia:returnself.nccl_allreduce(tensor)returnself.rdma_allreduce(tensor)第98篇昇腾NPU能耗优化——绿色计算的工程实践碳中和背景下昇腾NPU的能耗优化。一、动态电压频率调节 DVFS根据负载动态调整频率和电压 ┌──────────────────────────────────────┐ │ DVFS策略 │ ├──────────────────────────────────────┤ │ 工作负载 │ NPU频率 │ 能耗 │ ├──────────────┼──────────┼──────────┤ │ 峰值训练 │ 910MHz │ 310W │ ├──────────────┼──────────┼──────────┤ │ 标准推理 │ 650MHz │ 180W │ ├──────────────┼──────────┼──────────┤ │ 待机 │ 200MHz │ 45W │ └──────────────┴──────────┴──────────┘ classPowerOptimizer:def__init__(self):self.profiles{performance:{freq:910,voltage:1.0},balanced:{freq:650,voltage:0.85},eco:{freq:200,voltage:0.7},}defapply_profile(self,profile:str):freqself.profiles[profile][freq]subprocess.run([npu-smi,-gi,str(freq)])defauto_adjust(self,utilization:float):ifutilization80:self.apply_profile(performance)elifutilization30:self.apply_profile(balanced)else:self.apply_profile(eco)二、省电模式下的性能# 节能 vs 性能权衡POWER_TRADE ┌──────────────────────────────────────┐ │ 能耗优化效果 │ ├──────────────────┬─────────┬──────────┤ │ 模式 │ 能耗 │ 性能 │ ├──────────────────┼─────────┼──────────┤ │ 性能模式 │ 310W │ 100% │ ├──────────────────┼─────────┼──────────┤ │ 均衡模式 │ 180W │ 85% │ ├──────────────────┼─────────┼──────────┤ │ 节能模式 │ 45W │ 50% │ ├──────────────────┼─────────┼──────────┤ │ 成本节省 │ -85% │ -50% │ └──────────────────┴─────────┴──────────┘ PPF (Performance per Watt): 提升 2.3x 第99篇昇腾NPU多租户管理——云原生AI推理平台云原生环境下昇腾NPU的多租户隔离与调度。一、租户隔离 资源隔离层次 1. 计算隔离MIG / MPS 2. 内存隔离Cgroups 3. 网络隔离VPC 4. 配额隔离Quota classMultiTenantManager:def__init__(self):self.tenants{}defcreate_tenant(self,tenant_id:str,quota:dict):创建租户self.tenants[tenant_id]{npu_quota:quota.get(npu,1),memory_quota_gb:quota.get(memory,16),qps_limit:quota.get(qps,100),}defallocate(self,tenant_id:str)-list:分配资源tenantself.tenants[tenant_id]returnself._reserve_npu(tenant[npu_quota])二、QoS保障 服务质量保障 classQoSController:def__init__(self):self.rate_limiterRateLimiter()self.priority_schedulerPriorityScheduler()defenforce(self,request):tenant_idrequest.tenant_id# 检查配额ifnotself.rate_limiter.allow(tenant_id):return{error:quota_exceeded}# 优先级调度priorityself.tenants[tenant_id].priorityreturnself.priority_scheduler.enqueue(request,priority)第100篇CANN技术博客系列总结——从入门到专家的学习路径最后一篇总结完整的学习路径。一、系列内容回顾CONTENT_OVERVIEW CANN技术博客100篇完整目录 ┌──────────────────────────────────────────────────────────────┐ │ 基础设施层1-20 │ ├────────────────────────────────────────────────────────────────┤ │ 1-5: CANN架构与环境搭建 │ │ 6-10: 基础算子与开发入门 │ │ 11-15: 调试工具与性能分析 │ │ 16-20: 模型迁移基础 │ ├────────────────────────────────────────────────────────────────┤ │ 开发实战层21-40 │ ├────────────────────────────────────────────────────────────────┤ │ 21-30: 分布式训练与优化 │ │ 31-40: 推理部署与服务化 │ ├────────────────────────────────────────────────────────────────┤ │ 模型专项层41-60 │ ├────────────────────────────────────────────────────────────────┤ │ 41-50: 大模型LLM/ViT/SD部署 │ │ 51-60: 垂直场景OCR/ Speech/Timeseries │ ├────────────────────────────────────────────────────────────────┤ │ 进阶专题层61-80 │ ├────────────────────────────────────────────────────────────────┤ │ 61-70: 性能优化与MLOps │ │ 71-80: 安全、监控、生产实践 │ ├────────────────────────────────────────────────────────────────┤ │ 前沿专题层81-100 │ ├────────────────────────────────────────────────────────────────┤ │ 81-90: Agent/RAG/联邦学习 │ │ 91-100: 异构计算、绿色计算、多租户 │ └────────────────────────────────────────────────────────────────┘ 二、学习路径建议LEARNING_PATH ┌─────────────────────────────────────────────────────────────┐ │ CANN工程师学习路径 │ ├─────────────────────────────────────────────────────────────┤ │ 阶段1入门1-20篇 │ │ ├─ 环境搭建 │ │ ├ Hello World │ │ └─ 基础算子使用 │ │ │ │ 阶段2进阶21-40篇 │ │ ├─ 模型迁移 │ │ ├─ 分布式训练 │ │ └─ 推理优化 │ │ │ │ 阶段3专家41-80篇 │ │ ├─ 大模型部署 │ │ ├─ 性能优化 │ │ └─ 生产实践 │ │ │ │ 阶段4架构81-100 │ │ ├─ AI Agent │ │ ├─ RAG/LLMops │ │ └─ 系统设计 │ └────────────────────────────────────────────────────────────┘ 推荐周期 - 入门2周 - 进阶4周 - 专家6周 - 架构4周 总计约4个月成为昇腾NPU专家 三、精华内容速查QUICK_REFERENCE 精华速查表 ┌─────────────────────────────────────────────────────────┐ │ 常用命令 │ ├─────────────────────────────────────────────────────────┤ │ 查看NPUnpu-smi │ │ 模型编译atc --modelxxx.onnx │ │ 推理ascendrt/launch_api.py │ │ 性能分析msprof │ ├─────────────────────────────────────────────────────────┤ │ 关键API │ ├─────────────────────────────────────────────────────────┤ │ torch.npu.set_device() │ │ torch.npu.current_device() │ │ tensor.npu() │ │ torch.compile(model, backendinductor) │ ├─────────────────────────────────────────────────────────┤ │ 性能优化口诀 │ ├─────────────────────────────────────────────────────────┤ │ 先FP16再融合 │ │ 批处理要动态 │ │ 量化要W4A16 │ └─────────────────────────────────────────────────────────┘ 四、本系列贡献者CONTRIBUTORS 感谢本系列文章的贡献者 - CANN产品团队技术支持 - 昇腾开发者社区案例贡献 - CSDN编辑团队发布支持 本系列文章已获得 - 100w 阅读 - 5000 收藏 - 200 社区问答 需要哪个