基于二维长短期记忆神经网络的超级计算机工作负载预测方法技术

技术编号:21913767 阅读:18 留言:0更新日期:2019-08-21 12:22
本发明专利技术公开了一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法。第一步,建立具有日期与时间二维时间序列特征的超级计算机工作负载x

Supercomputer workload forecasting method based on two-dimensional long-term and short-term memory neural network

【技术实现步骤摘要】
基于二维长短期记忆神经网络的超级计算机工作负载预测方法
本专利技术属于计算机软件以及大规模超级计算机资源管理
,涉及一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法。
技术介绍
随着社会经济和科学技术的进步,高能物理计算、核聚变模拟、航空宇宙计算、飓风预测等高计算需求与复杂应用成为高性能超级计算系统发展的主要动力,推动着以我国“神威太湖之光”、“Tianhe-2”和美国“Titan”为代表的超级计算机向大规模、异构化方向发展。例如,TOP500排名第四的“Tianhe-2”由IntelXeonE5-269212C多核CPU与IntelXeonPhiMIC众核处理器构成,总计312万处理核,计算能力达33862.7TFLOP/S;排名第九的“Titan”由AMDOpteron6274多核CPU与NVIDIATeslaK20XGPU众核处理器构成,总计560640处理核,计算能力达17590TFLOP/S;“Tianhe-1A”由XeonX5670多核CPU与NVIDIATeslaC2050GPU众核处理器构成,总计186368处理核,计算能力也达2566TFLOP/S。然而,随着超级计算机规模持续扩大、计算能力不断增强、应用越来越复杂,系统面临可靠性墙、能耗墙、并行墙等大量挑战性问题,导致复杂并行应用程序应用效率低下,如大规模基因组预测软件只能利用4000核进行并行计算,而无法利用超级计算机的上百万核。另外,超级计算机系统可用性与能耗也是制约其应用效率的重要键性因素,如“Tianhe-2”功耗为17808KW,其耗电量相当于广州大学城5所大学的总和;“Tianhe-1A”在实际应用中其平均无故障时间仅约为7小时。解决这些问题的有效方法是提高超级计算机的资源管理效率,对系统资源进行动态管理。而超级计算机资源动态管理的核心是工作负载,高负载时需要大量资源,低负载时资源空闲量大,通过关闭这些闲置资源将节省能耗。因而如何正确预测超级计算机工作负载则成为动态管理资源的关键。然而,大多数现有工作负载预测模型,如ARIMAR、RNN、LSTM都假设所训练数据是一维时间序列特征。也就是说,超级计算系统未来工作负载只与前面一维工作负载信息相关。然而,对于超级计算机,其系统工作负载具有时间、日期和季节的周期性。实际上,每天工作时间系统工作负载量可能大,其他时间的工作负载相对较低。各周相同时间段,工作负载具有相似处,并且工作负载可能随季节变化很大。因而,我们认为超级计算机工作负载具有日期与时间二维时间序列特征。
技术实现思路
本专利技术针对大规模超级计算机面临可靠性墙、能耗墙、并行墙等大量挑战性问题导致复杂并行应用程序应用效率低下问题,需要高效的资源管理技术。而超级计算机资源有效动态管理的关键是对未来工作负载精确预测。传统计算系统工作负载预测都是基于一维时间序列,没有充分考虑超级计算机工作负载特性。为解决上述问题,本专利技术所采用的技术方案为:一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,包括如下步骤:步骤1:基于超级计算机系统处理器的总核数、用于执行任务的核数和执行任务的时间,建立具有日期与时间二维时间序列特征的超级计算机工作负载模型;步骤2:设置包括输入门、遗忘门、输出门和存储器在内的二维长短期记忆神经网络Cell结构,神经网络包括输入层、隐含层和输出层,且神经网络前一隐含层向下一隐含层同时传递隐含层日期维计算信息hd-1,t和时间维计算信息hd,t-1,其中d表示日期、t表示时间;步骤3:将步骤1中得到的以二维形式表达的工作负载转换为一维数据来进行训练,将训练数据输入至二维长短期记忆神经网络Cell结构的输入门、遗忘门、输出门和存储器中的实现公式为:It=W(i)Xt+h(d-1,t)UD(i)+h(d,t-1)UH(i)Gt=W(c)Xt+h(d-1,t)UD(c)+h(d,t-1)UH(c)Ft=W(f)Xt+h(d-1,t)UD(f)+h(d,t-1)UH(f)Ot=W(o)Xt+h(d-1,t)UD(o)+h(d,t-1)UH(o)Ct=σ(It)*tanh(Gt)+σ(Ft)*Ct-1ht=σ(Ot)*tanh(Ct)其中,i、f、o和c分别表示输入门、遗忘门、输出门和存储器,符号It、Ft、Ot和Gt分别是输入门、遗忘门、输出门和存储器在时刻t的输出结果,并由激活函数控制;Ct是t时刻状态信息,ht是t时刻输出结果,激活函数采用sigmoid函数,其中激活函数σ为:另一激活函数tanh为W、UD、UH分别是输入层到隐含层权重、前一隐含层向下一隐含层传送日期hd-1,t的权重、前一隐含层向下一隐含层传送时间hd,t-1二维隐含层计算信息的权重,符号C和h分别是二维长短期记忆神经网络Cell结构状态值和隐含层计算值,最后,所有隐含层信息向输出层转化,产生预测值yt,形式表示为:yt=σ(W(out)ht)。步骤4:对于t时刻,预测误差E(t)是时刻t和t-1的系统实际工作负载与预测值yt、yt-1的标准方差,即步骤5:在误差反向传播阶段中进行参数权重更新,通过利用偏导数的大小来实现误差反向传播,并在每次迭代训练后确定神经网络Cell结构W、UD、UH和隐含层到输出层W(out)参数权值,其中隐含层计算值ht偏导数相对于t时刻训练误差的偏导为:这里W(out)表示隐含层到输出层参数,则二维长短期记忆神经网络预测模型Cell结构的状态量C的偏导为同时,上一时刻t-1的状态值Ct-1接收来自ht-1和下一隐含层状态Ct的梯度,则二维长短期记忆神经网络误差向隐含层状态Ct-1的反向传播更新为二维LSTM神经网络输出层参数权重通过如下偏导实现计算:其中,α是学习率,表示每次迭代训练成长的速率,则对于LSTM神经网络隐含层的输入门、遗忘门、输出门和存储器,相应参数W、UD、UH的权重值通过以下公式计算:其中ΔW(α),ΔUD(α),ΔUH(α)中的(α)表示i、f、o或c中的一个;步骤6:检测所有训练数据是否全部训练完毕,如果训练完毕则转步骤7,执行超级计算机工作负载预测;否则转步骤3,继续进行二维长短期记忆神经网络训练;步骤7:利用二维长短期记忆神经网络预测方法进行超级计算机工作负载预测,其数据是前n+1天的t时刻和m+1个时间序列系统工作负载。所述的一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,所述的步骤1中,用于执行任务的核数和执行任务的时间是分析通过超级计算机系统中的管理日志文件得到的。所述的一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,所述的步骤1中,分析管理日志文件时,通过分析应用软件执行信息来获得实际执行核数,包括统计用户、应用程序、任务、计算核心、开始时间、完成时间和计算节点,并根据统计结果获得实际执行核数。所述的一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,所述的步骤1中,超级计算机工作负载为其中,x为超级计算机工作负载,totalcores表示超级计算机系统总核数,executioncores表示实际执行核数,建立具有日期与时间二维时间序列特征的超级计算机工作负载模型为xd,t,其中d表示日期、t表示时间。所述的一种基于二维长短期记忆本文档来自技高网
...

【技术保护点】
1.一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,其特征在于,包括如下步骤:步骤1:基于超级计算机系统处理器的总核数、用于执行任务的核数和执行任务的时间,建立具有日期与时间二维时间序列特征的超级计算机工作负载模型;步骤2:设置包括输入门、遗忘门、输出门和存储器在内的二维长短期记忆神经网络Cell结构,神经网络包括输入层、隐含层和输出层,且神经网络前一隐含层向下一隐含层同时传递隐含层日期维计算信息h

【技术特征摘要】
1.一种基于二维长短期记忆神经网络的超级计算机工作负载预测方法,其特征在于,包括如下步骤:步骤1:基于超级计算机系统处理器的总核数、用于执行任务的核数和执行任务的时间,建立具有日期与时间二维时间序列特征的超级计算机工作负载模型;步骤2:设置包括输入门、遗忘门、输出门和存储器在内的二维长短期记忆神经网络Cell结构,神经网络包括输入层、隐含层和输出层,且神经网络前一隐含层向下一隐含层同时传递隐含层日期维计算信息hd-1,t和时间维计算信息hd,t-1,其中d表示日期、t表示时间;步骤3:将步骤1中得到的以二维形式表达的工作负载转换为一维数据来进行训练,将训练数据输入至二维长短期记忆神经网络Cell结构的输入门、遗忘门、输出门和存储器中的实现公式为:It=W(i)Xt+h(d-1,t)UD(i)+h(d,t-1)UH(i)Gt=W(c)Xt+h(d-1,t)UD(c)+h(d,t-1)UH(c)Ft=W(f)Xt+h(d-1,t)UD(f)+h(d,t-1)UH(f)Ot=W(o)Xt+h(d-1,t)UD(o)+h(d,t-1)UH(o)Ct=σ(It)*tanh(Gt)+σ(Ft)*Ct-1ht=σ(Ot)*tanh(Ct)其中,i、f、o和c分别表示输入门、遗忘门、输出门和存储器,符号It、Ft、Ot和Gt分别是输入门、遗忘门、输出门和存储器在时刻t的输出结果,并由激活函数控制;Ct是t时刻状态信息,ht是t时刻输出结果,激活函数采用sigmoid函数,其中激活函数σ为:另一激活函数tanh为W、UD、UH分别是输入层到隐含层权重、前一隐含层向下一隐含层传送日期hd-1,t的权重、前一隐含层向下一隐含层传送时间hd,t-1二维隐含层计算信息的权重,符号C和h分别是二维长短期记忆神经网络Cell结构状态值和隐含层计算值,最后,所有隐含层信息向输出层转化,产生预测值yt,形式表示为:yt=σ(W(out)ht)。步骤4:对于t时刻,预测误差E(t)是时刻t和t-1的系统实际工作负载与预测值yt、yt-1的标准方差,即步骤5:在误差反向传播阶段中进行参数权重更新,通过利用偏导数的大小来实现误差反向传播,并在每次迭代训练后确定神经网络Cell结构W、UD、UH和隐含层到输出层W(out)参数权值,其中隐含层计算值ht偏导数相对于t时刻训练误...

【专利技术属性】
技术研发人员:唐小勇
申请(专利权)人:湖南农业大学
类型:发明
国别省市:湖南,43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1