基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
工具产品2026-10-30 12:46

AWS Batch 为共享 GPU 增加配额调度

dev.to · AI#AWS#GPU调度#模型训练
Editor brief · 编辑速览

AWS Batch 为 SageMaker 训练任务增加配额管理,可按团队或工作负载划分 GPU 容量,并选择保留、出借或借入空闲资源。跨配额抢占支持收回借出容量,配额内抢占则让高优先级任务更早启动。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

多支团队共用 GPU,难点不只在排队:给每队留死额度容易闲置,允许互相借用,又得解决资源何时归还。AWS Batch 新增的 quota management,试图把容量分配、闲时借用和任务抢占放进同一套调度规则。

作者转述了 AWS 的机制与演示:团队可以保留自己的容量,也可以出借空闲容量,等自己的任务到来时再收回。它值得关注的地方,是把共享资源的边界提前写成策略;但能否接受任务中断,仍然取决于训练任务自身。

GPU 份额既能保底,也能互相借用

AWS Batch 已经支持 SageMaker Training 作业的排队、调度和重试。此次增加的 quota management,则进一步处理多个团队、项目或工作负载之间的容量分配。

管理员把 GPU 容量划成多个 quota share,每个份额都有容量上限,并选择一种空闲处理策略:

  • RESERVE:容量留给自己,即使暂时没有任务也不出借。
  • LEND:自己用不上的容量,可以借给其他有任务等待的份额。
  • LEND_AND_BORROW:空闲时出借,需要更多容量时也能借入。

每个份额相当于作业队列内部的一条虚拟队列,调度器会优先照顾尚未达到容量上限的份额。

借用也有归还机制。某个份额把容量借出去之后,如果自己的任务到来,AWS Batch 会执行跨份额抢占(cross-share preemption),收回已出借的容量,不需要管理员逐个寻找借用中的任务。

借到的容量可以提高利用率,但不能被当成持续可用的保障。

紧急任务能插队,代价是其他任务可能中断

跨份额抢占解决资源归属,份额内抢占(in-share preemption)解决同一份额中的任务先后顺序。

开启份额内抢占后,处于已调度、启动中或运行中状态的低优先级任务,都可能被抢占,让队首的高优先级任务更早启动。新增的 UpdateServiceJob API 还允许研究人员提高已提交作业的优先级。

AWS 的演示建立了三个份额,每个容量上限都是一台 ml.g5.xlarge:

份额用途 空闲策略 份额内抢占 适合的任务
后台工作 LEND_AND_BORROW 开启 支持检查点、能容忍中断的任务
中等优先级工作 LEND 关闭 宁愿等待,也不想反复被抢占的任务
保留容量工作 RESERVE 原文未单独说明开关 需要保留容量的任务

演示中,后台任务先借用了中等优先级份额的空闲实例。中等优先级份额收到新任务后,容量从后台份额收回。随后,提高一个等待中作业的优先级,又触发了同一份额内部对运行中作业的抢占。

原文还指出,只保留容量的份额,在上限不变时,其作业不会被抢占。这里的条件要一起看,不能扩大理解为任何配置变更下都不会中断。

接入需要把队列、策略和容量约束连起来

配置并非只给任务增加一个优先级字段,而是涉及几层关联:

  1. 创建包含 quota share policy 的 scheduling policy。
  2. 创建 service environment,按具体实例定义容量约束。
  3. 将 SageMaker Training 作业队列同时关联上述策略和环境,再把 quota shares 挂到队列上。

任务通过 SageMaker Python SDK v3 的 aws_batch 模块提交。原文提到用户指南提供 CLI 和控制台示例,但没有给出具体命令或完整配置,不能据此直接复现。

该能力也支持 SageMaker AI training plans,让预留容量可以在多个团队之间共享。原文没有提供共享后的利用率、等待时间或成本变化数据。

我的判断

这套设计合理的地方,是把「谁能借、借了何时归还、谁能被中断」变成明确规则。相比固定切分容量,它允许闲置资源流动;相比完全依赖任务优先级,它又保留了团队份额的边界。

前提也很明确:后台训练要能承受抢占。检查点(checkpoint)就是把训练进度保存下来,方便中断后继续;但保存多频繁、恢复多耗时、被中断后会损失多少计算,原文都没有交代。

AWS 给出的演示证明了调度行为,没有证明整体收益。缺少对照数据,就不能把它写成降低训练成本或缩短整体排队时间的实测结论。对于任务数量不多、资源归属简单的团队,固定容量加普通排队仍可能更容易管理。

对前端和全栈读者,这也不是给普通 Node 服务增加弹性的方案。它面向 SageMaker Training;只有工作涉及训练任务提交、管理或共享 GPU 平台时,才有直接落地点。

能拿来做什么

  • 如果团队已经通过 SageMaker Training 共用 GPU,可以先按任务能否中断分类,再决定使用 RESERVE、LEND 还是 LEND_AND_BORROW,不要只按部门机械分配。
  • 如果要把后台训练放进可抢占份额,先验证检查点保存和恢复流程,并记录一次中断造成的进度损失,再评估借用容量是否划算。
  • 如果在开发训练任务管理界面,可以考虑接入 UpdateServiceJob 调整已提交任务的优先级,同时明确提示用户:开启份额内抢占后,提高优先级可能中断其他任务。
  • 试用时同时记录容量利用率、任务等待时间和抢占后的恢复开销,用自己的工作负载判断收益,避免只看空闲 GPU 是否被用满。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
litmus-lite 把故障注入带到开发环境
下一篇
Swift 语音包支持切换多种识别模型

资讯速览

dev.to · AI · 2026-10-30 12:46

AI 评分 8.0 / 10

相关标签

#AWS#GPU调度#模型训练

继续阅读

  • Claude Code 误删文件的恢复与防护实测
  • litmus-lite 把故障注入带到开发环境
  • Swift 语音包支持切换多种识别模型
  • AWS 自然语言测试方案补齐团队管理
  • ComfyUI 部署 MOSS 图像模型的隐性坑