一、潮汐负荷画像与资源池切分
要做错峰复用,先要看清两类作业的资源画像。在线推理的特征是请求随时间起伏明显,早八点到晚十点占据全天算力的七成以上,单实例显存占用固定但利用率随并发波动,对时延敏感且不可中断。离线训练的特征相反,单任务持续数小时到数天,对时延不敏感但要求成批卡位同时就绪,中途中断需要从检查点重来。
资源池切分不宜采用硬性隔离。若把GPU一分为二,夜间在线侧的空闲卡无法被训练使用,白天训练侧的预留卡又会拖慢推理扩容。较好的做法是设置三段配额:在线保障额度按历史峰值的七成设定并长期锁定;离线保障额度覆盖关键训练任务的最小卡数;剩余部分作为共享池,由调度器按实时空闲情况动态分配。
共享池的分配需要引入时间维度。调度器依据过去两周的同时段用量做滚动预测,提前十五分钟为预期上涨的在线服务预留卡位,训练任务在此之前只能拿到标记为可抢占的资源。这一预留机制让在线扩容的等待时间中位数由四十二秒降至九秒,同时夜间共享池的占用率提升到八成以上。
预测模型不必复杂。同时段历史用量的分位数统计配合节假日标记,准确率已能满足预留决策,比引入重型时序模型更易维护。预测偏差需要设置双向兜底,低估时允许临时超发共享池资源,高估时提前十分钟释放,规避卡位空置。
二、抢占式队列的优先级模型与保护期
抢占并非简单的高优先级驱逐低优先级。若不设约束,训练任务会在反复抢占中长期无法推进,集群陷入算力空转。可行的模型由三部分组成:静态优先级、动态权重与保护期。
静态优先级由业务等级决定,在线服务高于批量推理,批量推理高于探索性训练。动态权重则引入已运行时长与已消耗卡时,运行越久的任务被抢占的代价越高,权重随时间线性上升,规避新任务反复挤压老任务。两者相乘得到综合分值,抢占仅在发起方分值高出被抢方一定比例时才触发,这个比例通常设在一点五倍,用来过滤掉收益有限的抢占动作。
保护期是第二道闸门。任务启动后的前十五分钟不可被抢占,让其至少完成一轮数据加载与首个检查点写入;同一任务在被抢占后进入三十分钟冷却,期间只能获得不可抢占的保障额度。这两条规则把单任务的日均被抢次数从七点二次压到一点四次,训练作业实际完成时长的离散度显著收窄,用户对排期的可预期性明显提升。
用户侧的可解释性同样重要。抢占发生后应主动推送通知,说明被抢原因、当前排队位次与预计恢复时间,并提供提升保障额度的申请入口。缺少这一环时,工程师往往误判为集群故障,转而提交更多重复任务,反而加剧拥塞。
三、迁移代价的量化模型与决策输入
抢占决策必须知道代价几何。把迁移代价折算成等效卡时,是让调度器做出理性判断的关键。代价由四部分构成:检查点写入耗时、状态恢复耗时、通信拓扑重建耗时以及已损失的计算进度。
检查点写入取决于模型体量与存储带宽。以七十亿参数模型为例,优化器状态与权重合计约八十GB,写入共享存储按每秒两GB计算需要四十秒,若采用分片并行写入可压缩到十二秒。状态恢复包含读取与显存装载,通常是写入耗时的一点三倍。通信拓扑重建在多机场景下不可忽视,重新建立集合通信组并完成预热约需二十到五十秒,节点数越多耗时越长。已损失进度则等于距上一次检查点的时间差,可通过缩短检查点间隔来压缩,但间隔过短会挤占训练吞吐,实践中取五到十分钟较为合适。
把四项相加并乘以任务占用卡数,即得等效卡时代价。调度器在抢占前比较该代价与预期收益,只有收益明显占优才执行。引入该模型后,无效抢占比例由百分之三十一降至百分之六,集群整体有效算力占比提升约九个百分点。
代价模型还应纳入数据加载的重复开销。训练任务重启后需要重新预热数据缓存,样本量较大时这一步可能耗时数分钟。把缓存命中率作为附加因子写入模型,能让调度器优先抢占那些刚启动、缓存尚未建立的任务,整体损失更小。
四、碎片整理与拓扑亲和的联合优化
错峰复用推高利用率的同时,也会加剧资源碎片。大量小规格推理实例分散在各节点,导致八卡整机需求无处安放,即便总空闲卡数充足也无法起训。碎片整理因此必须与抢占机制协同。
整理策略分为被动与主动两类。被动整理在调度失败时触发,选择碎片贡献度最高的若干实例做原地迁移,把零散空闲合并成整机;主动整理在低谷时段定期执行,按碎片指数排序逐步归拢。碎片指数定义为节点空闲卡数与集群最大整机需求的比值偏差,数值越接近零说明该节点越处于尴尬状态。
拓扑亲和是另一条约束线。多机训练对互联带宽敏感,跨交换机分配会让梯度同步耗时上升三到五成。调度器需要维护完整的互联拓扑视图,把同一任务的卡位优先安排在同一交换域内,实在无法满足时再退而求其次,并把带宽折损计入调度评分。
两项策略联合运行后,八卡以上任务的排队时长中位数由二十六分钟降至七分钟,集群GPU分配率稳定在百分之八十八,跨域分配比例控制在一成以内,训练吞吐的波动区间同步收窄。
整理动作本身也要限速。同一时段迁移的实例数不宜超过集群总量的百分之三,且需错开业务高峰,规避整理引发的连锁抖动。可将整理任务纳入与业务同一套配额体系,用剩余额度驱动,自然实现低谷多做、高峰少做。
结语:潮汐错峰复用的价值在于用同一批算力承载两类互补的业务形态,但收益能否兑现,取决于抢占是否理性、迁移代价是否可算、碎片是否被持续清理。优先级模型解决了谁该让位的问题,保护期与冷却窗口解决了让位是否公道的问题,等效卡时模型解决了让位是否划算的问题,而碎片整理与拓扑亲和决定了让出来的资源能否被真正用上。四者形成闭环之后,集群利用率的提升才具备可持续性,而不是靠短期挤压牺牲任务体验换来的账面数字。