GPU资源管理革命:约束感知分配器实现利用率提升33个百分点

0 阅读

在企业AI发展的关键阶段,GPU资源管理已成为决定性的瓶颈。传统的利用率指标虽然重要,但真正的挑战在于如何将高利用率转化为实际业务价值。一项最新的研究成果表明,通过约束感知GPU分配器的部署,可以在相同的硬件配置下实现高达33个百分点的利用率提升,这一突破性进展重新定义了GPU管理的最佳实践标准。

传统的FIFO(先进先出)调度策略在GPU资源分配中存在根本性缺陷。当集群拥有空闲容量时,分配顺序对利用率没有影响,所有作业都能找到合适的位置。然而,当资源竞争加剧时,排序成本变得不可忽视,并开始影响整体容量。FIFO策略以到达顺序放置作业,不考虑优先级,导致高优先级工作等待在首先请求的作业之后,容量被后续作业无法使用的放置决策所占用。

实时推理需求的处理是传统方法的主要痛点之一。由于实时推理无法等待容量,GPU必须在流量需要时立即可用。基于FIFO的调度器没有机制在低谷期释放GPU并在下一个高峰期前重新获取它们,因此保证可用性的唯一方法是为每个实时应用程序预留其全天最大需求量。这种做法导致了严重的资源浪费,一个在中午需要六块GPU、凌晨4点只需要两块GPU的应用程序会全天持有全部六块GPU,四块空闲GPU在整日内对任何批处理作业都不可用。

为了应对这些挑战,研究团队开发了一种约束感知GPU分配器,该分配器能够同时处理四种不同类型的工作负载:训练、实时推理、批量推理和量化。这些工作负载分为两种分配形状,其中训练、批量推理和量化具有批处理特征,一旦开始就需要连续的GPU块,而实时推理则具有弹性特征,受需求曲线驱动,随流量变化而伸缩。

分配器的核心优势在于消除了静态预留行为。实时需求被视为曲线而非上限,根据每个时间步的需求进行分配,批处理类工作占据低谷时段,受限于实时作业在连续时间步之间可以交换的GPU数量上限。批处理类作业在整个时间范围内按优先级放置,而不是按到达顺序。这种方法确保了资源的动态优化配置。

约束感知分配器的形式化模型定义了五个关键约束条件。首先是GPU约束,即每个时间步最多服务一个作业。其次是需求范围约束,每个作业必须尊重其需求范围,已运行的工作被继承并保持。第三是连续块约束,批处理类作业占据连续的GPU块,大小为2的幂次方。第四是交换限制约束,实时作业在连续时间步之间可以交换的GPU数量有硬性上限。最后是不可中断约束,已经开始的作业不能被中断。

目标函数包含两个主要项。将GPU分配给批处理类作业获得的奖励等于其优先级乘以时间衰减权重。未能满足实时需求会产生与短缺规模成比例的惩罚。这些权重的相对大小构成了整个服务级别策略,表达为一个数字。实时惩罚权重通常是分配权重的5到10倍,这意味着一个单位的未满足实时需求成本相当于5到10个GPU时间步的同等优先级批处理工作成本。

这种不对称性是故意设计的,它意味着延迟义务在放置批处理工作的同一优化过程中得到执行,而不是通过与调度器竞争相同GPU的独立自动缩放器来执行。这也是使实时需求的弹性处理安全的原因。分配器可以在低谷期间将GPU交给批处理工作,因为后续未满足实时需求的定价远高于该批处理工作所能获得的收益。

在七种基准场景的测试中,分配器相对于FIFO调度器表现出显著优势。利用率从52-85%的区间提升到72-88%的区间。优先级加权价值在24.6%到105.1%之间增长,平均增长52%。每个场景都在两个指标上都有改善,没有权衡需要解释。

最显著的单个案例是在8个GPU上的训练密集型工作负载:利用率从53.6%提升到87.0%,价值增长超过一倍,达到105%。这33个百分点的固定、已经折旧的资产回收,是通过收回预留的待机容量并按优先级顺序放置其余容量实现的。这种改进反映了单一基线排序的效果。

时间权重在整个时间范围内衰减,这是在线系统的合理设计:到下次调度运行时,新的作业将到达。现在使用的容量比以后承诺的容量更有价值。这种设计确保了资源分配的时效性和效率。

分配器架构设计考虑了严格的延迟预算。作为NP难组合分配问题,调度器每次作业到达时都会重新调用,决策必须在两次API请求之间的间隙返回。这种延迟预算是架构设计围绕的固定约束,因此启发式算法位于热路径上,而形式化模型位于其后作为启发式算法构建以满足的规范。

该启发式算法不是通用贪婪分配器。其规则就是形式化模型的结构约束,这意味着它产生的每个网格都是按构造合法的分配。不是通常有效的,而是按设计有效的。这种设计应用于整个时间范围而不是一次一个到达,这就是产生利用率增益的原因。

分配器在查看队列中的每个作业之前放置任何作业,它可以将空闲池保持在剩余工作实际可以占用的形状中,需要给定大小连续块的批处理作业在其轮到时仍有空间。优先级决定谁首先获得该空间的权利。FIFO没有这样的视图:它将容量提交给首先请求的作业,稍后到达且需要特定形状的作业可能发现没有适合的空间,因此未被调度,本应消耗的GPU小时数未被认领。

在五个竞争场景中,分配器运行时间为1到2毫秒,在64个GPU和30个作业的情况下为15毫秒,足以在每个传入请求上运行。系统提供两种模式:快速模式仅运行分配器并返回其网格,这是热路径;完整模式使用该网格作为正式模型的起点,尝试对其进行改进,适用于定期审查而非每次请求决策。

在规模测试中,64个GPU、30个作业、15毫秒、价值增长15.9%,这一结果的重要性在于它在规模上保持稳定。在统一优先级测试中,覆盖明显怀疑阅读,将每个作业覆盖为相同优先级,使得没有优先级信号区分任何作业,分配器仍将利用率从76.8%移动到87.5%,价值增长23.1%。这种增益不仅仅是按优先级排序的产物。跨时间范围规划放置本身就有所贡献。

准确的需求预测是整个系统有效性的基础。调度器需要知道每个作业需要多少GPU小时以及即将到来的实时流量。这些都是预测而非输入,调度器的质量取决于预测的准确性。单一通用估计器不起作用,因为四种工作负载类型具有质的不同成本驱动因素。

训练不是一个工作负载,它沿着两个独立、自由组合的轴变化。策略确定更新多少模型参数(全量微调对比LoRA等参数高效方法)。技术确定优化目标和训练循环(SFT、DPO、RLHF、RLVR、CPT)。差异不是边缘的:LoRA将可训练参数减少高达10000倍,GPU内存减少约3倍,对比全量微调,针对相同的基础模型。DPO移除了RLHF的奖励模型和采样循环。仅从模型大小估算会平均化差异几个数量级的运行,恰好在调度器决定的两个数量上:持续时间和GPU计数。

量化是一个可调度的作业,而不是后台任务。量化单个大模型可能消耗数小时GPU时间,而其他工作正在等待硬件。它有自己的预测,从参数计数的校准层构建,每种算法(bitsandbytes、AWQ、GPTQ)的特殊处理和向上舍入到整GPU小时前的安全余量。该领域的先前工作完全将量化置于调度范围之外。

allocation_annotated-1

实时推理根本不按作业估算。它被预测为连续重新校准的周需求配置文件,从小时流量历史重建并映射到GPU计数,与正式模型执行的相同交换成本。预测和优化器因此就转换成本达成一致,而不是分歧和相互对抗。这个预测就是取代峰值预留的东西。每时间步需求曲线是让调度器在低谷期间释放GPU并有信心在下一个峰值前重新获取它们的唯一方法。

这种设计回到排序论证。更好的需求估计是使优先级感知放置成为可能的基础,没有对消耗量的了解就无法很好地排序作业。预测错误的处理通过端到端世界效应的概念来解决。无法看到地平线末端的优化器做出破坏紧接地平线外时间步的当前决策,因为对模型而言,地平线结束后的任何东西都不存在。

架构同时回答两个问题。调度器优化24小时地平线,但只承诺当前时间步,并每30到60分钟重新运行。9点运行时,9点分配是真实的;10点到下午5点的计划仅存在以便9点决策由知道未来存在的模型做出。真正的10点分配来自10点运行,针对新鲜数据。结果是预测误差通过重新优化吸收而不是复合。每次运行继承实际运行的内容并将其固定,因此连续计划更新而不是震荡。

次要收益是地平线计划本身就是预测产品:它在到达前显示实时覆盖风险和可预测的空闲窗口,无论这些特定分配是否被承诺都很有用。这也是时间衰减权重存在的原因。到下次运行时,工作负载混合将发生变化。

航空业没有通过计算最优时间表解决利用率问题。他们通过将操作纪律编码到事件发生顺序(周转序列、维护窗口、机组人员安排)并将这种纪律复合来解决。同样的事情在这里发生了。在最难打包的场景中33个百分点的利用率,平均52%更多的优先级加权输出,在相同硬件上,具有相同工作负载,在几毫秒内,来自将集群物理允许的内容编码到决策制作顺序中。结构胜过复杂性。

GPU已经安装、承诺、折旧。收益在于我们选择如何花费它们。这种创新方法不仅解决了硬件资源闲置问题,更重要的是通过优先级排序将利用率转化为实际价值,为企业AI基础设施管理提供了全新的实践路径。随着企业AI应用的不断扩展,这种约束感知分配技术将成为GPU资源管理的标准实践,推动整个行业向更高效、更经济的资源利用模式发展。