论文部分内容阅读
近年来各领域对高性能计算的需求与日俱增,服务商为了迎合计算需求通常需要在硬件资源上投入大量资金,而大部分平台的资源利用率却并不高,故集群资源的有效利用成为一个亟待解决的问题。众所周知,调度策略是联系上层作业和底层硬件资源的中枢,其对资源利用以及用户体验影响显著。而目前国内大部分高性能计算集群通常采用先来先服务等传统的作业调度方法,因为此类调度方法实现简单、实用性很强。然而,为了保证公平性原则,当需要调度一个资源需求较大而现有空闲资源不能满足的大作业时,往往需要为其预留资源,这就容易产生大量闲置的资源碎片。针对上述问题,一种比较普遍的策略是使用回填,它优化了资源碎片的利用,但好的回填依赖于对作业执行时间的预知,而由于作业预估执行时间的缺失使得回填调度很难在生产系统中运用,故对作业执行时间的预测也是亟待解决的问题。 鉴于vasp是国内应用最普及的高性能计算应用软件之一,在我校TC4600平台上,其作业数占比约43%,机时占比约50%,故对vasp作业时长进行预测具有重要意义。本文分析了vasp作业特性,通过解析日志及输入文件来抽取相应的作业特征集,基于这些特征集提出一种基于stacking模型的二次学习算法IRPA,对vasp作业进行时长的预测,该算法在多个子模型预测结果的基础上进行二次训练,结合各个子预测模型的优势,以此达到更高的预测准确性。之后进一步提出基于径向基网络的预测算法BRBF,该算法主要是利用径向基网络对未知非线性函数拟合的优越性。 我们利用我校TC4600平台上的真实的vasp作业数据集对IRPA以及BRBF算法进行测试验证。实验结果和其他几个基本方法进行对比,表明了IRPA以及BRBF在粗粒度下具有较高的预测性能。最后,我们将BRBF算法对vasp作业的预测结果与回填调度相结合,用TC4600平台上真实的工作负载进行仿真模拟,实验结果和几个基准方法对比,进一步表明了我们工作的价值和意义。