[论文解读] Predicting batch queue job wait times for informed scheduling of urgent HPC workloads
本文提出一种基于提升树与随机队列状态建模的机器学习方法,以高精度预测HPC作业的开始时间,在ARCHER2和Cirrus系统上,有65–76%的预测结果在实际开始时间的1分钟以内,相比Slurm的估计器,准确度最高提升18倍。该方法通过引入动态队列状态和多阶段分类-回归流程,显著提升了预测性能。
There is increasing interest in the use of HPC machines for urgent workloads to help tackle disasters as they unfold. Whilst batch queue systems are not ideal in supporting such workloads, many disadvantages can be worked around by accurately predicting when a waiting job will start to run. However there are numerous challenges in achieving such a prediction with high accuracy, not least because the queue's state can change rapidly and depend upon many factors. In this work we explore a novel machine learning approach for predicting queue wait times, hypothesising that such a model can capture the complex behaviour resulting from the queue policy and other interactions to generate accurate job start times. For ARCHER2 (HPE Cray EX), Cirrus (HPE 8600) and 4-cabinet (HPE Cray EX) we explore how different machine learning approaches and techniques improve the accuracy of our predictions, comparing against the estimation generated by Slurm. We demonstrate that our techniques deliver the most accurate predictions across our machines of interest, with the result of this work being the ability to predict job start times within one minute of the actual start time for around 65\% of jobs on ARCHER2 and 4-cabinet, and 76\% of jobs on Cirrus. When compared against what Slurm can deliver, this represents around 3.8 times better accuracy on ARCHER2 and 18 times better for Cirrus. Furthermore our approach can accurately predicting the start time for three quarters of all job within ten minutes of the actual start time on ARCHER2 and 4-cabinet, and for 90\% of jobs on Cirrus. Whilst the driver of this work has been to better facilitate placement of urgent workloads across HPC machines, the insights gained can be used to provide wider benefits to users and also enrich existing batch queue systems and inform policy too.
研究动机与目标
- 为解决HPC批处理队列中作业等待时间不可预测的关键挑战,特别是针对紧急灾难响应模拟场景。
- 改进Slurm内置的队列等待时间估计机制,该机制常因系统间差异而产生不准确且不一致的预测结果。
- 开发一种机器学习模型,以捕捉复杂的队列动态,包括波动的工作负载和调度策略。
- 使用户和HPC中心能够基于可靠的开始时间预测,对作业配置和资源分配做出明智决策。
- 提供一种可扩展、数据驱动的解决方案,适用于具有不同工作负载和调度策略的多样化HPC系统。
提出的方法
- 该方法利用来自三个生产级HPC系统——ARCHER2、Cirrus和一个4机柜HPE Cray EX——的历史作业数据,训练机器学习模型。
- 采用随机抽样技术,基于实际与请求的运行时间分布,为每个作业生成100个具有代表性的队列工作负载状态,以建模提交时刻的队列负载不确定性。
- 采用两阶段流程,结合分类(预测作业是否会在目标时间窗口内开始)与回归(预测确切开始时间),以提升预测精度。
- 模型采用梯度提升树(如XGBoost)来处理作业参数与队列行为之间的非线性关系。
- 队列状态特征包括当前运行作业、排队作业及其请求的运行时间,通过动态采样反映实时不可预测性。
- 该方法通过与Slurm的后向填充插件估计器进行对比验证,采用平均绝对误差和预测窗口准确率等指标。
实验结果
研究问题
- RQ1与Slurm的内置估计器相比,机器学习模型能否显著提升HPC作业等待时间预测的准确性?
- RQ2在高度可变的HPC工作负载中,引入动态、随机的队列状态表示如何增强预测准确性?
- RQ3多阶段分类-回归模型在预测确切作业开始时间方面,相较于单模型方法,其性能提升程度如何?
- RQ4在具有不同工作负载和调度策略的多种HPC系统上,预测准确性如何变化?
- RQ5该模型能否为用户提供可操作的洞察,以优化作业配置(如节点数量、运行时间)来缩短等待时间?
主要发现
- 在ARCHER2和4机柜系统上,该模型有65%的预测结果在实际开始时间的1分钟以内,Cirrus系统上达到76%,显著优于Slurm。
- 在10分钟的预测窗口内,该模型在ARCHER2和4机柜系统上正确预测了75%的作业,在Cirrus系统上达到90%,而Slurm的表现则远低于此。
- 在1分钟窗口内,该模型在ARCHER2上的准确率提升3.8倍,在Cirrus上提升18倍。
- 多阶段分类-回归方法通过更有效地利用作业特定模式和队列状态动态,显著降低了误差。
- 随机队列状态采样方法有效建模了现实世界中的不可预测性,增强了模型在多样化工作负载下的鲁棒性。
- 该模型已集成至VESTEC紧急计算系统,证明其在动态、时间敏感的HPC工作负载中具备实际应用价值。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。