活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 11.11智惠上云月 NEW 爆款云主机2核2G28.8元/年起!更有限时续费优惠,最低3.5折!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云AI产品特惠 NEW 人脸识别+文字识别焕新,新用户免费试用
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 出海产品促销专区 NEW 爆款云主机低至2折,高性价比,不限新老速来抢购!
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
智算云(DeepSeek专区)
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
  • MCP市场
算力互联调度平台
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
模型推理服务
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V3.1
  • DeepSeek-R1-0528
  • DeepSeek-V3-0324
  • Qwen3-235B-A22B
  • Qwen3-32B
智算一体机
  • 智算一体机
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案智云上海应用生态专区
AI应用
  • 泛微合同管理解决方案
  • 泛微数智大脑Xiaoe.AI解决方案
  • MaxKB知识库解决方案
  • 天翼AI文创
AI服务
  • 昆仑AI训推服务解决方案
  • 国信模型服务解决方案
企业应用
  • 翼电子签约解决方案
  • 翼协同解决方案
  • 翼电签-契约锁解决方案
  • 翼视频云归档解决方案
教育应用
  • 翼电子教室
  • 潜在AI教育解决方案
建站工具
  • SSL证书
  • 翼定制建站解决方案
  • 翼多端小程序解决方案
办公协同
  • 天翼云企业云盘
  • 安全邮箱
灾备迁移
  • 云管家2.0
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      智算套件

      智算套件

      • 智算套件

      无数据

        • 产品动态
        • 产品介绍
        • 产品定义
        • 产品优势
        • 产品功能
        • 应用场景
        • 基本概念
        • 使用限制
        • 计费说明
        • 计费项及计费方式
        • 快速入门
        • 创建训练应用
        • 创建推理应用
        • 用户指南
        • 安装与卸载
        • 调度策略
        • AI负载调度
        • GPU共享调度
        • 装箱调度(Binpack)
        • Gang Scheduling调度
        • 最佳实践
        • 创建单机训练任务
        • 创建多机训练任务
        • 常见问题
        • 框架管理
        • 数据集管理
        • 模型管理
        • 队列管理
        • 相关协议
        • 服务协议
        • 服务等级协议
          无相关产品

          本页目录

          帮助中心智算套件用户指南AI负载调度Gang Scheduling调度
          Gang Scheduling调度
          更新时间 2025-11-03 18:59:15
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2025-11-03 18:59:15
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本节介绍Gang scheduling调度。

          通过使用 Gang scheduling 能力,可有效解决原生调度器无法支持 All-or-Nothing 作业调度的问题。

          前提条件

          已安装智算套件。

          背景信息

          Gang scheduling 是一种保证一组相关任务同步执行的调度策略,多个任务的作业调度时,要么全部成功,要么全部失败,这种调度场景,称作为Gang scheduling。其中一个经典使用场景是分布式机器学习训练:在大规模机器学习模型的训练中,数据可能被分布到多个节点上,每个节点都需要运行一个模型的副本。这些模型副本需要同时开始训练,以保证参数更新的同步。随着大规模和复杂的工作负载在Kubernetes上的普及,需要对应的调度策略适配这种场景,避免资源浪费和延迟。由于Kubernetes的核心调度器默认不支持Gang scheduling,使得一些工作负载无法很好地迁移至Kubernetes。为了适配这种场景,目前的云容器引擎基于调度器框架实现Gang scheduling功能,可以在云容器引擎中非常方便使用该能力。

          功能介绍

          为了实现All-or-Nothing的特性,首先需要将一组同时调度的Pod通过annotations标识出来,这个标识可称为PodGroup。提交作业的时候调度器可根据工作负载的相关annotations,获取调度的配置并进行调度。只有当集群资源满足该任务最少运行个数时,才会统一调度,否则作业将一直处于Pending状态。

          使用方法

          下面使用kubeflow的TFJob作为例子展示Gang scheduling的能力。

          apiVersion: "kubeflow.org/v1"
          kind: TFJob
          metadata:
            name: gang-example
          spec:
            tfReplicaSpecs:
              Worker:
                replicas: 2
                restartPolicy: OnFailure
                template:
                  spec:
                    schedulerName: roc  # 指定使用智算调度器
                    containers:
                      - name: tensorflow
                        image: busybox:latest
                        imagePullPolicy: IfNotPresent
                        command: ["sleep", "30s"]
                        resources:
                          limits:
                            nvidia.com/gpu: 1

          作业提交到集群后,可看到调度组件自动为这个任务创建PodGroup自定义资源对象:

          [root@pm-b86b yaml]# kubectl get pg
          NAME           STATUS    MINMEMBER   RUNNINGS   AGE
          gang-example   Running   2                      21s
          
          [root@pm-b86b yaml]# kubectl get pg gang-example -oyaml
          apiVersion: scheduling.roc/v1beta1
          kind: PodGroup
          metadata:
            annotations:
              kubectl.kubernetes.io/last-applied-configuration: |
                {"apiVersion":"kubeflow.org/v1","kind":"TFJob","metadata":{"annotations":{},"name":"gang-example","namespace":"default"},"spec":{"tfReplicaSpecs":{"Worker":{"replicas":2,"restartPolicy":"OnFailure","template":{"spec":{"containers":[{"command":["sleep","5m"],"image":"busybox:latest","imagePullPolicy":"IfNotPresent","name":"tensorflow","resources":{"limits":{"nvidia.com/gpu":1}}}],"schedulerName":"roc"}}}}}}
            creationTimestamp: "2024-04-14T03:32:54Z"
            generation: 5
            name: gang-example
            namespace: default
            ownerReferences:
          • lastTransitionTime: "2024-04-14T03:33:19Z"
            reason: tasks in gang are ready to be scheduled
            status: "True"
            transitionID: 2afbaf4b-5424-414c-b89a-a3416925b9b0
            type: Scheduled
              phase: Running
              running: 2

          关键字段

          • minMember:minMember表示该podgroup下最少需要运行的pod或任务数量。如果集群资源不满足miniMember数量任务的运行需求,调度器将不会调度任何一个该podgroup 内的任务。

          • queue:queue表示该podgroup所属的queue。queue必须提前已创建且状态为open。

          • priorityClassName:priorityClassName表示该podgroup的优先级,用于调度器为该queue中所有podgroup进行调度时进行排序。system-node-critical和system-cluster-critical 是2个预留的值,表示最高优先级。不特别指定时,默认使用default优先级或zero优先级。

          • minResources:minResources表示运行该podgroup所需要的最少资源。当集群可分配资源不满足minResources时,调度器将不会调度任何一个该podgroup内的任务。

          • phase:phase表示该podgroup当前的状态。

          • conditions:conditions表示该podgroup的具体状态日志,包含了podgroup生命周期中的关键事件。

          检查运行状态

          由于集群资源足够作业的所有pod运行,通过命令可知Pod已在运行中。

          [root@pm-b86b yaml]# kubectl get po | grep gang
          gang-example-worker-0       1/1     Running                  0             31s
          gang-example-worker-1       1/1     Running                  0             31s

          如果集群资源不足以让所有pod运行,则所有Pod都会调度失败,可通过PodGroup查看调度状态。

          [root@pm-b86b yaml]# kubectl get pg gang-example -oyaml
          apiVersion: scheduling.roc/v1beta1
          kind: PodGroup
          metadata:
            annotations:
          kubectl.kubernetes.io/last-applied-configuration: |
            {"apiVersion":"kubeflow.org/v1","kind":"TFJob","metadata":{"annotations":{},"name":"gang-example","namespace":"default"},"spec":{"tfReplicaSpecs":{"Worker":{"replicas":10,"restartPolicy":"OnFailure","template":{"spec":{"containers":[{"command":["sleep","5m"],"image":"busybox:latest","imagePullPolicy":"IfNotPresent","name":"tensorflow","resources":{"limits":{"nvidia.com/gpu":1}}}],"schedulerName":"roc"}}}}}}
            creationTimestamp: "2024-04-14T03:47:09Z"
            generation: 4
            name: gang-example
            namespace: default
            ownerReferences:
          apiVersion: kubeflow.org/v1
          blockOwnerDeletion: true
          controller: true
          kind: TFJob
          name: gang-example
          uid: 8caecc94-7220-4bbc-bde2-6c94fe478a35
            resourceVersion: "40583543"
            uid: 69034c3f-3c51-4159-b8db-8a965a3838f7
          spec:
            minMember: 10
            minResources:
          nvidia.com/gpu: "10"
          status:
            conditions:
          • lastTransitionTime: "2024-04-14T03:47:40Z"
            message: '10/0 tasks in gang unschedulable: pod group is not ready, 10 minAvailable'
            reason: NotEnoughResources
            status: "True"
            transitionID: 3359ff1a-d558-4148-949f-f3f53f501a4c
            type: Unschedulable
              phase: Pending

          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  装箱调度(Binpack)
          下一篇 :  最佳实践
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明