[论文解读] Deep Reinforcement Agent for Scheduling in HPC
本文提出 DRAS,一种基于深度强化学习的高性能计算(HPC)调度代理,采用分层神经网络动态优化作业调度,整合资源预留与回填机制。DRAS 自动学习并适应工作负载变化,与现有启发式及优化方法相比,将平均作业等待时间减少高达 45%,同时防止作业饥饿并保持较低的运行时开销。
Cluster scheduler is crucial in high-performance computing (HPC). It determines when and which user jobs should be allocated to available system resources. Existing cluster scheduling heuristics are developed by human experts based on their experience with specific HPC systems and workloads. However, the increasing complexity of computing systems and the highly dynamic nature of application workloads have placed tremendous burden on manually designed and tuned scheduling heuristics. More aggressive optimization and automation are needed for cluster scheduling in HPC. In this work, we present an automated HPC scheduling agent named DRAS (Deep Reinforcement Agent for Scheduling) by leveraging deep reinforcement learning. DRAS is built on a novel, hierarchical neural network incorporating special HPC scheduling features such as resource reservation and backfilling. A unique training strategy is presented to enable DRAS to rapidly learn the target environment. Once being provided a specific scheduling objective given by system manager, DRAS automatically learns to improve its policy through interaction with the scheduling environment and dynamically adjusts its policy as workload changes. The experiments with different production workloads demonstrate that DRAS outperforms the existing heuristic and optimization approaches by up to 45%.
研究动机与目标
- 解决复杂、动态的 HPC 环境中静态、人工调优的调度启发式方法的局限性。
- 在高度可变且不可预测的工作负载下,减少作业等待时间并防止作业饥饿。
- 在无需人工干预的情况下,自动化策略学习与自适应过程。
- 通过从历史作业轨迹中学习并适应系统负载变化,实现长期性能优化。
- 在保证公平性、作业优先级与资源效率的前提下,实现高系统利用率。
提出的方法
- 设计一种具有两级神经网络的分层深度强化学习代理(DRAS):一级负责选择立即执行或预留执行的作业,二级负责选择可回填的作业。
- 将 HPC 特有的调度特性——资源预留与回填——直接整合到强化学习框架中。
- 提出一种三阶段训练策略,从简单到复杂的工作负载场景逐步推进,实现快速且稳定的收敛。
- 使用来自生产级 HPC 系统(Cori 和 Theta)的历史作业轨迹训练 DRAS,以学习系统与工作负载相关的调度策略。
- 采用近端策略优化(PPO)与深度 Q 学习(DQL)作为训练算法,基于调度目标优化累积奖励。
- 在推理过程中动态调整网络参数,以适应系统负载变化,确保在工作负载激增时仍具备稳健性能。
实验结果
研究问题
- RQ1深度强化学习代理是否能有效超越静态启发式与优化方法,实现 HPC 调度的优化?
- RQ2DRAS 在保持高系统利用率和低平均作业等待时间的同时,如何有效防止作业饥饿?
- RQ3DRAS 在无需人工重新调优的情况下,能在多大程度上根据动态工作负载变化自适应调整其调度策略?
- RQ4在真实 HPC 工作负载下,DRAS 与 FCFS、BinPacking 和 Decima 等现有方法相比,性能表现如何?
- RQ5DRAS 的运行时开销是多少?是否适合在生产级 HPC 环境中进行在线部署?
主要发现
- 与现有启发式及优化方法相比,DRAS 在 Cori 和 Theta 的真实 HPC 轨迹上,将平均作业等待时间减少高达 45%。
- DRAS 显著优于 FCFS、Decima-PG 和 Optimization 方法,在高负载下对就绪作业与回填作业的等待时间减少效果尤为突出。
- 分层设计使 DRAS 能够有效预留大型作业,防止饥饿——与其他方法相比,此类作业的等待时间可减少 2 倍至 10 倍。
- DRAS 在工作负载激增期间动态调整其策略,相比依赖固定策略的静态方法,实现了更大的等待时间减少。
- DRAS-PG 与 DRAS-DQL 均表现出较低的运行时开销,单次更新的推理时间在标准个人计算机上低于 2 秒,适合在线部署。
- 三阶段训练过程使 DRAS 能够快速收敛,并在包括罕见与复杂场景在内的多样化工作负载模式下具有良好泛化能力。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。