首页> 中国专利> 一种面向高性能计算系统故障日志的故障预测方法

一种面向高性能计算系统故障日志的故障预测方法

摘要

本发明公开一种面向高性能计算系统故障日志的故障预测方法,包括以下步骤:获取高性能计算系统的故障日志数据,并根据所述故障日志数据分析获取故障时间序列,其中,所述故障时间序列适用于LSTM模型;采用K‑means算法对上述故障日志数据中包含的故障类型进行聚类处理;基于上述故障时间序列搭建FD‑LSTM模型;基于上述FD‑LSTM模型分别对每一故障类型的聚类结果进行故障发生节点位置和故障提前时间的预测,并根据系统体系结构对预测结果进行统计分析。本发明通过对故障分类预测,可有效提高高性能计算系统的故障分析精确率,加强及其运维高效性,有效提高了系统的可靠性。

著录项

  • 公开/公告号CN112306981A

    专利类型发明专利

  • 公开/公告日2021-02-02

    原文格式PDF

  • 申请/专利权人 广州科泽云天智能科技有限公司;

    申请/专利号CN202011211555.2

  • 发明设计人 刘锋;侯晓东;朱肖雄;

    申请日2020-11-03

  • 分类号G06F16/18(20190101);G06F16/28(20190101);G06F16/2458(20190101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);G06F17/18(20060101);

  • 代理机构44384 深圳市中科创为专利代理有限公司;

  • 代理人彭西洋;梁炎芳

  • 地址 511457 广东省广州市南沙区南沙街进港大道8号1202-1204房

  • 入库时间 2023-06-19 09:46:20

说明书

技术领域

本发明涉及数据处理技术领域,尤其涉及一种面向高性能计算系统故障日志的故障预测方法。

背景技术

为了追求更高的模拟精度以及获得更多的计算细节,科学家们越来越依赖高性能计算机来处理空前庞大的数据集和复杂的模拟仿真。高性能计算机从最初的单芯片系统一直发展到拥有成千上万处理器的集群系统(Cluster),实现了飞速发展;而直到目前为止,提高计算机性能的主要手段仍然是增加处理器数,这导致高性能计算机的规模迅速扩大。与此同时,对系统包括软件和硬件应对突发性错误事件的能力,即容错能力也有了更高的要求。特别是处理节点的增加,导致整个系统的平均无故障时间(Mean Time BetweenFailure,简称MTBF)大幅下降,例如,Intel公司为美国能源部研制的ASCI Red系统共有9000多个计算节点,虽然每个计算节点的MTBF都大于10年,但全系统的MTBF仅10小时(尚不含偶发性故障)。而像IBM的BlueGene/L这样处理器数目超过10万的大规模系统,MTBF会降到只有几十分钟甚至更短。

目前大规模的科学与工程计算问题,如空间飞行研究和核物理研究,往往需要连续运行几天甚至是几个月,而很多高性能计算机的MTBF已经变得比运行在该系统上的科学计算应用的执行时间更短。为了解决这一问题,迫切需要提高系统的容错能力。

为了提高系统的容错能力,已经在异常检测和故障预测方面投入了大量的研究工作。对于大规模的计算系统而言,存在一些故障特征,以及针对异常检测的机器学习解决方案,过去的解决方法是通过几个小时的准备时间识别出了逐渐失效的部件的故障,但是大多数故障发生在更短的时间内;因此,现有技术缺乏两个关键方面;首先,即使提前时间很短(以分钟为单位),也需要预测故障以及准确的故障位置,换句话说,针对即将发生的故障的组件(例如某个节点)并及时这样做,以便采取主动的恢复行动(例如作业迁移或隔离不健康的节点)也同样重要;其次,极大规模高性能计算的大规模组件数量给支持向量机(SVM)或主成分分析(PCA)等数据挖掘技术带来了挑战,因为预测必须实时执行,而且必须在实际故障发生之前得到结果。因此,需要新颖的可扩展和优化的数据挖掘解决方案。此外,计算系统生成的非结构化日志的自然语言也引起了两个问题;首先,由于数据缺乏任何结构和标签,传统的机器学习技术在处理数据时受到限制,例如,形成特征向量或分类器是非平凡的;其次,从高维数据中快速推断复杂的模式是不可行的,除非对数据进行处理并提供适当的输入表示。近年来,深度学习在这些方面取得了巨大的进步,尤其是在自然语言理解方面。这激发了在节点故障预测上下文中探索可扩展的无监督深度学习技术的需求。研究人员一致认为,故障预测是有用的,即使不完美,精度有限。假设50%的节点故障被正确预测,而剩下的节点故障被错误预测(假阳性),那么我们就可以避免一半的昂贵的检查点重新启动,这往往需要通过更廉价的进程迁移进行全局协调。

HPC系统在硬件、软件和应用程序层面上遭受各种各样的故障。虽然有些故障是可以检测的并且很明显可以检测到,比如内核恐慌,但是大多数异常都不容易跟踪。哪个组件将会失败,以及它将如何影响系统,目前还不清楚。系统中观察到的异常症状可能反映,也可能不反映确切的根本原因,例如,内核恐慌可能由Lustre文件系统错误或硬件机器检查异常引起。然而,如果通过结合快速数据挖掘技术提前检测到异常模式,那么节点故障、作业流产等不必要的后果可以得到缓解。

综上所述,在通往E级系统的道路上,可靠性(仅次于并行管理和能源效率)被视为三大挑战之一,而能够准确预测故障就可以提高系统的可靠性;它能够在系统仍在工作时进行响应,从而简化任何缓解机制;它消除了频繁存储应用程序状态的需要;结合热交换硬件,它可以简化系统管理和增加应用。因此,如何面向高性能计算系统设计准确有效的基于日志的故障预测方法是亟需解决问题。

因此,现有技术存在缺陷,需要改进。

发明内容

本发明的目的是克服现有技术的不足,提供一种面向高性能计算系统故障日志的故障预测方法。

本发明的技术方案如下:

一种面向高性能计算系统故障日志的故障预测方法,包括以下步骤;

步骤S1,获取高性能计算系统的故障日志数据,并根据所述故障日志数据分析获取故障时间序列,其中,所述故障时间序列适用于LSTM模型;

步骤S2,采用K-means算法对上述故障日志数据中包含的故障类型进行聚类处理;

步骤S3,基于上述故障时间序列搭建FD-LSTM模型;

步骤S4,基于上述FD-LSTM模型分别对每一故障类型的聚类结果进行故障发生节点位置和故障提前时间的预测,并根据系统体系结构对预测结果进行统计分析。

进一步地,所述步骤S1的具体实现方式包括以下步骤:

步骤S101,获取高性能计算系统的故障日志数据,并根据该故障日志数据分析获取时间数据集;

步骤S102,将故障发生的第一时间作为LSTM模型的时间序列索引,并根据该时间序列索引对上述时间数据集中的数据按先后顺序进行排序;

步骤S103,按时间先后顺序计算上述时间数据集中相邻故障发生的间隔时间数,并保存为time-interval列;

步骤S104,对上述间隔时间数进行分析处理,并去掉时间间隔过大的异常数据;

步骤S105,统计分析所述计算系统的节点的故障分布状况;其中,如果故障主要集中分布在某个节点,说明故障分布极不均匀,需单独考虑该节点的故障预测,其余节点再进行故障预测;而如果故障分布较为均匀,则可以使用LSTM模型进行故障预测。

进一步地,所述步骤S2的具体实现方式包括以下步骤:

步骤S201,根据手肘法确定k值,其中,误差平方差和SSE的公式为:

步骤S202,从上述时间数据集中随机选择k个数据点作为质心;

步骤S203,计算上述时间数据集中每一数据点与每一质心的距离,并将每一数据点划分到与其距离最小的质心所属的集合中,从而获得k个集合;

步骤S204,重新计算上述k个集合中每一集合的质心;

步骤S205,判断所述步骤S204重新计算的质心与原先的质心之间的距离是否小于设定值,其中,如果重新计算出来的质心与原先的质心之间的距离大于或等于某一设定的阈值,则需要跳转回步骤S203,反之,说明重新计算出来的质心的位置变化不大,趋于稳定,或者说收敛,可以认为聚类处理已经达到期望的结果,K-means算法终止。

进一步地,所述步骤S3中的FD-LSTM模型包括输入层、隐藏层、输出层、以及分别与所述输入层、隐藏层和输出层通过网络连接的网络训练模块;所述输入层用于对原始故障时间序列进行初步处理,包括划分时间数据集,通过所述输入层分割上述时间数据集得到新的故障时间序列X1、X2~Xt以满足网络输入要求;所述输出层用于提供预测结果P1、P2~Pt,且所述输出层内嵌有网络预测模块,所述网络预测模块采用迭代的方式对预测结果进行反标准化预测以获取与测试集所对应的故障发生时间或节点位置;所述网络训练模块采用Adam优化算法计算模型输出与理论输出的损失,并采用BPTT算法进行训练。

进一步地,所述步骤S3的具体实现方式包括以下步骤:

步骤S301,计算遗忘门的输出值f

步骤S302,计算输入门的值i

步骤S303,采用公式C

步骤S304,计算输出门的值o

步骤S305,采用最小化代价函数对FD-LSTM模型的参数进行反向调整,使得输出值尽可能逼近目标值,其中,假设RUL(t)为t时刻的RUL真实值,RUL

进一步地,所述步骤S4的具体实现方式包括以下步骤:

步骤S401,根据所述步骤S3中的FD-LSTM模型分别对每一故障类型的聚类结果进行故障发生节点位置和故障提前时间的预测,并计算得到预测结果的平均间隔时间t

步骤S402,计算故障提前时间的RMSE,即为均方根误差;

步骤S403,计算精确率ppv,其中,采用公式

步骤S404,计算召回率tpr,其中,采用公式

进一步地,所述故障类型包括软件故障、硬件故障、人为故障以及不明原因故障。

进一步地,所述步骤S101中的时间数据集为具有26个字段的数据集,且该时间数据集有16个字段为NULL,只取不常为空值的10个字段进行分析处理。

采用上述方案,本发明具有以下有益效果:

本发明通过对故障分类预测,可有效提高高性能计算系统的故障分析精确率,加强及其运维高效性,有效提高了系统的可靠性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为本发明面向高性能计算系统故障日志的故障预测方法的流程图;

图2本发明步骤S201中手肘法的k与SSE的关系图;

图3为本发明步骤S3搭建的FD-LSTM模型的整体框架图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

以下结合附图和具体实施例,对本发明进行详细说明。

参照图1至图3所示,本发明提供一种面向高性能计算系统故障日志的故障预测方法,包括以下步骤:

步骤S1,获取高性能计算系统的故障日志数据,并根据所述故障日志数据分析获取故障时间序列,其中,所述故障时间序列适用于LSTM模型;

步骤S2,采用K-means算法对上述故障日志数据中包含的故障类型进行聚类处理,其中,所述故障类型包括软件故障、硬件故障、人为故障以及不明原因故障;

步骤S3,基于上述故障时间序列搭建FD-LSTM模型;

步骤S4,基于上述FD-LSTM模型分别对每一故障类型的聚类结果进行故障发生节点位置和故障提前时间的预测,并根据系统体系结构对预测结果进行统计分析。

在本实施例中,所述步骤S1的具体实现方式包括以下步骤:

步骤S101,获取高性能计算系统的故障日志数据,并根据该故障日志数据分析获取时间数据集,其中,该时间数据集为具有26个字段的数据集,且该时间数据集有16个字段为NULL(即常为空值),因此,在后续的数据处理过程中,只取不常为空值的10个字段进行分析处理;

步骤S102,将故障发生的第一时间作为LSTM模型的时间序列索引,并根据该时间序列索引对上述时间数据集中的数据按先后顺序进行排序;

步骤S103,按时间先后顺序计算上述时间数据集中相邻故障发生的间隔时间数(单位为秒),并保存为time-interval列;

步骤S104,对上述间隔时间数进行分析处理,并去掉时间间隔过大的异常数据;

步骤S105,统计分析所述计算系统的节点的故障分布状况;其中,如果故障主要集中分布在某个节点,说明故障分布极不均匀,需单独考虑该节点的故障预测,其余节点再进行故障预测;而如果故障分布较为均匀,则可以使用LSTM模型进行故障预测。

在本实施例中,所述步骤S2的具体实现方式包括以下步骤:

步骤S201,根据手肘法确定k值,其中,误差平方差和SSE的公式为:

步骤S202,从上述时间数据集中随机选择k个数据点作为质心;

步骤S203,计算上述时间数据集中每一数据点与每一质心的距离,并将每一数据点划分到与其距离最小的质心所属的集合中,从而获得k个集合;其中,该距离可以是欧式距离;

步骤S204,重新计算上述k个集合中每一集合的质心;

步骤S205,判断所述步骤S204重新计算的质心与原先的质心之间的距离是否小于设定值,其中,如果重新计算出来的质心与原先的质心之间的距离大于或等于某一设定的阈值,则需要跳转回步骤S203,反之,说明重新计算出来的质心的位置变化不大,趋于稳定,或者说收敛,可以认为聚类处理已经达到期望的结果,K-means算法终止。

在本实施例中,所述步骤S3中的FD-LSTM模型包括输入层1、隐藏层2、输出层3、以及分别与所述输入层1、隐藏层2和输出层3通过网络连接的网络训练模块4;所述输入层1用于对原始故障时间序列(即步骤S1获取的故障时间序列)进行初步处理,包括划分时间数据集,通过所述输入层分割上述时间数据集得到新的故障时间序列X1、X2~Xt以满足网络输入要求;所述输出层3用于提供预测结果P1、P2~Pt,且所述输出层内嵌有网络预测模块31,所述网络预测模块31采用迭代的方式对预测结果进行反标准化预测以获取与测试集所对应的故障发生时间或节点位置;所述网络训练模块4采用Adam优化算法计算模型输出与理论输出的损失,并采用BPTT算法进行训练,包括遗忘训练、输入训练和输出训练;

进一步的,所述步骤S3的具体实现方式包括以下步骤:

步骤S301,计算遗忘门的输出值f

步骤S302,计算输入门的值i

步骤S303,采用公式C

步骤S304,计算输出门的值o

步骤S305,采用最小化代价函数对FD-LSTM模型的参数进行反向调整,使得输出值尽可能逼近目标值,其中,假设RUL(t)为t时刻的RUL真实值,RUL

在本实施例中,所述步骤S4的具体实现方式包括以下步骤:

步骤S401,根据所述步骤S3中的FD-LSTM模型分别对每一故障类型的聚类结果进行故障发生节点位置和故障提前时间的预测,并计算得到预测结果的平均间隔时间t

步骤S402,计算故障提前时间的RMSE(即均方根误差);

步骤S403,计算精确率ppv,其中,采用公式

步骤S404,计算召回率tpr,其中,采用公式

与现有技术相比,本发明具有以下有益效果:

本发明通过对故障分类预测,可有效提高高性能计算系统的故障分析精确率,加强及其运维高效性,有效提高了系统的可靠性。

以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号