CN117407207A - 一种内存故障处理方法、装置、电子设备及存储介质 - Google Patents

一种内存故障处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117407207A
CN117407207A CN202311709088.XA CN202311709088A CN117407207A CN 117407207 A CN117407207 A CN 117407207A CN 202311709088 A CN202311709088 A CN 202311709088A CN 117407207 A CN117407207 A CN 117407207A
Authority
CN
China
Prior art keywords
memory
server
fault
abnormality
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311709088.XA
Other languages
English (en)
Other versions
CN117407207B (zh
Inventor
张传玺
张秀波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311709088.XA priority Critical patent/CN117407207B/zh
Publication of CN117407207A publication Critical patent/CN117407207A/zh
Application granted granted Critical
Publication of CN117407207B publication Critical patent/CN117407207B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及计算机技术领域,公开了一种内存故障处理方法、装置、电子设备及存储介质,该方法包括:在服务器未发生宕机的情况下,获取服务器的内存异常状态信息;根据内存异常状态信息,确定服务器的内存异常诊断信息;基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果;在服务器发生宕机的情况下,获取服务器的寄存器信息;根据寄存器信息,对内存权重矩阵进行迭代优化。上述方案提供的方法,通过在服务器未发生宕机的情况下,对其进行内存故障预警,以提前发现并避免故障,从而降低了服务器内存故障发生率。

Description

一种内存故障处理方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种内存故障处理方法、装置、电子设备及存储介质。
背景技术
目前,随着大数据技术的发展,服务器部署规模越来越大,服务器故障主要集中在内存等部件问题,因此如何对服务器进行内存故障检测成为了重点研究内容。
在相关技术中,通常是在服务器宕机后,通过收集寄存器分析故障源,无法提前发现故障,也就无法降低服务器内存故障发生率。
发明内容
本申请提供一种内存故障处理方法、装置、电子设备及存储介质,以解决相关技术无法降低服务器内存故障发生率等缺陷。
本申请第一个方面提供一种内存故障处理方法,应用于BMC,包括:
在服务器未发生宕机的情况下,获取所述服务器的内存异常状态信息;
根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息;
基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果;
在所述服务器发生宕机的情况下,获取所述服务器的寄存器信息;
根据所述寄存器信息,对所述内存权重矩阵进行迭代优化。
在一种可选的实施方式中,所述获取所述服务器的内存异常状态信息,包括:
获取服务器中断系统发送的内存异常告警信号;
根据所述内存异常告警信号,获取所述服务器的内存异常状态信息;
其中,所述服务器中断系统在检测到内存发生预设异常时,生成所述内存异常告警信号。
在一种可选的实施方式中,所述根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息,包括:
根据所述内存异常状态信息,确定若干个故障内存及各所述故障内存对应的故障特征信息;
针对任一所述故障内存,根据该故障内存的故障特征信息,确定该故障内存在单位时间内的异常次数和异常类型,得到所述服务器的内存异常诊断信息。
在一种可选的实施方式中,所述针对任一所述故障内存,根据该故障内存的故障特征信息,确定该故障内存在单位时间内的异常次数和异常类型,得到所述服务器的内存异常诊断信息,包括:
针对任一所述故障内存,根据该故障内存的故障特征信息,确定所述故障内存最近异常发生时间和异常计数结果;
根据所述故障内存最近异常发生时间和异常计数结果,确定所述故障内存在单位时间内的异常次数;
结合所述故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,得到所述服务器的内存异常诊断信息。
在一种可选的实施方式中,所述方法还包括:
针对任一所述故障内存的异常计数结果,若该故障内存在单位时间内未发生异常,则该故障内存的异常计数值减1;
其中,所述异常计数结果包括异常计数值和单位时间内每次异常的发生时间。
在一种可选的实施方式中,所述基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果,包括:
基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率;
根据所述服务器的内存故障率,确定所述服务器的内存故障预警结果。
在一种可选的实施方式中,所述基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率,包括:
基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率;
根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数达到预设次数阈值时,更新所述服务器的内存故障率,以增加所述内存故障率。
在一种可选的实施方式中,所述根据所述寄存器信息,对所述内存权重矩阵进行迭代优化,包括:
根据所述寄存器信息,分析所述服务器的宕机原因;
当所述服务器的宕机原因为内存故障时,根据所述寄存器信息表征的述内存异常诊断信息与内存故障之间的关系,对所述内存权重矩阵进行迭代优化。
在一种可选的实施方式中,还包括:
当所述服务器的内存故障预警结果满足预设内存修复条件时,对所述服务器进行内存故障修复。
在一种可选的实施方式中,所述对所述服务器进行内存故障修复,包括:
获取故障内存的逻辑地址;
根据所述逻辑地址,确定所述故障内存的目标修复策略;
按照所述目标修复策略,修复所述故障内存。
在一种可选的实施方式中,所述根据所述逻辑地址,确定所述故障内存的目标修复策略,包括:
根据所述逻辑地址,判断所述故障内存是否有对应的备份内存;
在确定所述故障内存有对应的备份内存的情况下,基于所述备份内存进行故障内存替换;
其中,所述目标修复策略包括故障内存替换策略。
在一种可选的实施方式中,所述方法还包括:
在确定所述故障内存没有对应的备份内存的情况下,对所述故障内存进行内存隔离;
其中,所述目标修复策略包括内存隔离策略。
本申请第二个方面提供一种内存故障处理装置,应用于BMC,包括:
第一获取模块,用于在服务器未发生宕机的情况下,获取所述服务器的内存异常状态信息;
诊断模块,用于根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息;
预警模块,用于基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果;
第二获取模块,用于在所述服务器发生宕机的情况下,获取所述服务器的寄存器信息;
优化模块,用于根据所述寄存器信息,对所述内存权重矩阵进行迭代优化。
本申请第三个方面提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一个方面以及第一个方面各种可能的设计所述的方法。
本申请第四个方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一个方面以及第一个方面各种可能的设计所述的方法。
本申请技术方案,具有如下优点:
本申请提供一种内存故障处理方法、装置、电子设备及存储介质,该方法包括:在服务器未发生宕机的情况下,获取服务器的内存异常状态信息;根据内存异常状态信息,确定服务器的内存异常诊断信息;基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果;在服务器发生宕机的情况下,获取服务器的寄存器信息;根据寄存器信息,对内存权重矩阵进行迭代优化。上述方案提供的方法,通过在服务器未发生宕机的情况下,对其进行内存故障预警,以提前发现并避免故障,从而降低了服务器内存故障发生率。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例基于的内存故障处理系统的结构示意图;
图2为本申请实施例提供的内存故障处理方法的流程示意图;
图3为本申请实施例提供的示例性的内存异常状态信息的结构示意图;
图4为本申请实施例提供的示例性的预设内存权重矩阵的结构示意图;
图5为本申请实施例提供的示例性的服务器宕机处理流程示意图;
图6为本申请实施例提供的内存故障处理装置的结构示意图;
图7为本申请实施例提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。在以下各实施例的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
在相关技术中,伴随着AI、“元宇宙”、区块链等技术的飞速发展,未来,服务器需要更大规模的部署,服务器故障问题也会暴露的越来越频繁,当前服务器故障主要集中在内存等部件问题。主流服务器供应商对于内存的诊断主要有两个方面,一是宕机后通过收集寄存器来分析故障源;二是通过在BIOS下设置漏斗值对内存进行阈值判断,进而触发内存告警等操作。这些操作缺乏对内存的提前诊断,不可避免内存故障发生,也就无法降低服务器内存故障发生率。并且,内存的诊断和修复在系统侧完成,BIOS检测故障完成后调用系统的内存隔离函数去做修复等动作,整个过程给系统带来了大量的负载。
针对上述问题,本申请实施例提供一种内存故障处理方法、装置、电子设备及存储介质,该方法包括:在服务器未发生宕机的情况下,获取服务器的内存异常状态信息;根据内存异常状态信息,确定服务器的内存异常诊断信息;基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果;在服务器发生宕机的情况下,获取服务器的寄存器信息;根据寄存器信息,对内存权重矩阵进行迭代优化。上述方案提供的方法,通过在服务器未发生宕机的情况下,对其进行内存故障预警,以提前发现并避免故障,从而降低了服务器内存故障发生率。
下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明实施例进行描述。
首先,对本申请所基于的内存故障处理系统的结构进行说明:
本申请实施例提供的内存故障处理方法、装置、电子设备及存储介质,适用于对服务器的内存故障进行预警和修复。如图1所示,为本申请实施例基于的内存故障处理系统的结构示意图,主要包括内存和内存故障处理装置,该内存故障处理装置可以部署于BMC,具体地,可以基于该故障内存处理装置在服务器未发生宕机的情况下,获取服务器的内存异常状态信息,进而根据得到的内存异常状态信息,对服务器的内存故障进行预警和修复等。
本申请实施例提供了一种内存故障处理方法,应用于BMC,用于对服务器的内存故障进行预警和修复。本申请实施例的执行主体为电子设备,比如服务器、台式电脑、笔记本电脑、平板电脑及其他可用于对服务器的内存故障进行预警和修复的电子设备。
如图2所示,为本申请实施例提供的内存故障处理方法的流程示意图,该方法包括:
步骤201,在服务器未发生宕机的情况下,获取服务器的内存异常状态信息。
具体地,在服务器未发生宕机的情况下,可以按照预设周期,获取服务器的内存异常状态信息。
具体地,在一实施例中,可以获取服务器中断系统发送的内存异常告警信号;根据内存异常告警信号,获取服务器的内存异常状态信息。
其中,服务器中断系统在检测到内存发生预设异常时,生成内存异常告警信号。
需要说明的是,服务器中断系统具体指服务器SMI中断系统,本申请实施提供的方法通过访问服务器内存CE的入口,采集得到服务器的内存异常状态信息。其中,异常告警信号具体指CE报警(内存可纠正性错误报警),内存异常状态信息至少包括当前发生异常的内存的位置信息。
进一步地,在得到服务器的内存异常状态信息后,可以对内存异常状态信息进行格式化处理,格式化规则为key-value键值对形式,key为内存位置坐标,value为内存的物理地址和逻辑地址,并记录在H2B中,H2B是BMC和Host的共享内存空间,以使本申请可以基于BMC读取内存异常状态信息,进而利用BMC资源进行后续的内存故障进行预警和修复工作。
步骤202,根据内存异常状态信息,确定服务器的内存异常诊断信息。
具体地,可以通过对共享内存空间(H2B)保存的格式化处理后的内存异常状态信息进行整理和记录,确定服务器的内存异常发生频率等特征信息,以得到服务器的内存异常诊断信息。
步骤203,基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果。
需要说明的是,预设内存权重矩阵包括若干种内存故障预警规则。
具体地,可以根据服务器当前的内存异常诊断信息,在预设内存权重矩阵中筛选其对应的内存故障预警规则,进而基于该内存故障预警规则,确定服务器的内存故障预警结果。
步骤204,在服务器发生宕机的情况下,获取服务器的寄存器信息。
其中,该寄存器信息至少包括CSR寄存器信息和MCA寄存器信息。
步骤205,根据寄存器信息,对内存权重矩阵进行迭代优化。
具体地,可以根据寄存器信息表征的内存故障实际诊断结果,对内存权重矩阵进行迭代优化,以不断提高服务器的内存故障预警结果的准确性。
在上述实施例的基础上,作为一种可实施的方式,在一实施例中,根据内存异常状态信息,确定服务器的内存异常诊断信息,包括:
步骤2021,根据内存异常状态信息,确定若干个故障内存及各故障内存对应的故障特征信息;
步骤2022,针对任一故障内存,根据该故障内存的故障特征信息,确定该故障内存在单位时间内的异常次数和异常类型,得到服务器的内存异常诊断信息。
需要说明的是,如图3所示,为本申请实施例提供的示例性的内存异常状态信息的结构示意图,即内存异常状态信息可以以全局内存表的方式表示,可以通过周期性轮询全局内存表,读取内存异常状态信息。故障内存的故障特征包括内存单元坐标、CE标志、CE数量、内存物理地址和内存逻辑地址。其中,CE标志用于表征内存为故障内存,CE数量即为故障内存在单位时间内的异常次数。
其中,异常类型可以根据服务器中断系统生成的内存异常告警信号确定。
具体地,在一实施例中,针对任一故障内存,可以根据该故障内存的故障特征信息,确定故障内存最近异常发生时间和异常计数结果;根据故障内存最近异常发生时间和异常计数结果,确定故障内存在单位时间内的异常次数;结合故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,得到服务器的内存异常诊断信息。
其中,异常计数结果包括异常计数值和单位时间内每次异常的发生时间。异常计数值具体可以指内存在当前生命周期内发生异常的次数,也是出现的CE告警次数。
具体地,针对任一故障内存,该故障内存在单位时间内每发生一次CE告警,其对应的异常计数值便加1。
相应地,在一实施例中,针对任一故障内存的异常计数结果,若该故障内存在单位时间内未发生异常,则该故障内存的异常计数值减1。
在上述实施例的基础上,作为一种可实施的方式,在一实施例中,基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果,包括:
步骤2031,基于预设内存权重矩阵,根据内存异常诊断信息表征的故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,确定服务器的内存故障率;
步骤2032,根据服务器的内存故障率,确定服务器的内存故障预警结果。
具体地,可以在服务器的内存故障率达到预设内存故障率阈值时,确定服务器的内存故障预警结果为故障,并报出相应的预警信号。
具体地,在一实施例中,可以基于预设内存权重矩阵,根据内存异常诊断信息表征的故障内存最近异常发生时间及最近异常对应的异常类型,确定服务器的内存故障率;根据内存异常诊断信息表征的故障内存在单位时间内的异常次数达到预设次数阈值时,更新服务器的内存故障率,以增加内存故障率。
其中,如图4所示,为本申请实施例提供的示例性的预设内存权重矩阵的结构示意图,诊断流程即为内存异常诊断信息。异常类型至少分为主线结果、分支诊断(严重)、回溯历史和分支诊断(提示)等。
具体地,还可以根据故障内存最近异常发生时间及最近异常对应的异常类型,确定服务器的内存故障率,在确定的内存故障率未预设内存故障率阈值的情况下,若故障内存在单位时间内的异常次数达到预设次数阈值,则确定服务器的内存故障预警结果为故障,并报出相应的预警信号。
在上述实施例的基础上,作为一种可实施的方式,在一实施例中,根据寄存器信息,对内存权重矩阵进行迭代优化,包括:
步骤2051,根据寄存器信息,分析服务器的宕机原因;
步骤2052,当服务器的宕机原因为内存故障时,根据寄存器信息表征的述内存异常诊断信息与内存故障之间的关系,对内存权重矩阵进行迭代优化。
具体地,可以将系统中MC bank信息和CSR寄存器信息导入内存权重矩阵,输出结果再反馈到内存权重矩阵,不断迭代优化内存权重矩阵。
其中,如图5所示,为本申请实施例提供的示例性的服务器宕机处理流程示意图,服务器宕机时Intel CPU会拉低CatErr Pin,BMC检测到该Pin拉低后,BMC主动收集CPU寄存器,并将寄存器信息存储到json文件中,之后再调用故障诊断规则库,诊断出故障后生成日志。其主要模块分别为检测IERR信号模块,需要检测CatErr Pin状态, CatErr Pin拉低说明系统宕机并出现了IERR信号,此时要进行故障诊断;寄存器收集模块存储所需收集寄存器的参数表,例如寄存器名称、PECI命令参数、存储位置等,获取不同寄存器需要构造不同的PECI命令格式,收到PECI命令的响应依次存储在json中;寄存器信息收集完成后调用故障诊断规则库,故障诊断规则库主要分析CSR寄存器和MCA寄存器,MCA寄存器中存在内存控制器状态寄存器信息,能够查询到具体内存位置,同时core中指令和数据寄存器也能推到出异常的内存信息,CSR寄存器有含有故障源信息也是规则库检查的重点;诊断结果再反馈到内存权重矩阵,不断优化训练内存权重矩阵。
具体地,可以根据MCA寄存器信息,判断服务器的宕机原因是否为内存故障,在服务器的宕机原因为内存故障的情况下,进一步根据CSR寄存器信息确定内存异常诊断信息与内存故障之间的关系,以优化内存权重矩阵,如升高或降低某种诊断流程对应的故障率等。
在上述实施例的基础上,为进一步降低服务器内存故障发生率,作为一种可实施的方式,在一实施例中,该方法还包括:
步骤301,当服务器的内存故障预警结果满足预设内存修复条件时,对服务器进行内存故障修复。
其中,预设内存修复条件可以为内存故障预警结果为故障,也可以是服务器的内存故障率达到预设内存修复阈值。
具体地,在一实施例中,可以获取故障内存的逻辑地址;根据逻辑地址,确定故障内存的目标修复策略;按照目标修复策略,修复故障内存。
其中,目标修复策略包括故障内存替换策略和内存隔离策略。
具体地,可以根据故障内存的逻辑地址所表征的内存属性特征,确定故障内存对应的目标修复策略。
具体地,在一实施例中,可以根据逻辑地址,判断故障内存是否有对应的备份内存;在确定故障内存有对应的备份内存的情况下,基于备份内存进行故障内存替换。
需要说明的是,内存替换是针对特定有备份内存的系统,内存替换函数是系统应用程序提前对内存预设内存替换区,当系统收到BMC发送来的逻辑地址后,匹配逻辑地址跟内存替换区地址,匹配成功后进行替换,替换成功后逻辑地址对应的具体物理地址将替换成预设内存替换区的物理地址。
相应地,在一实施例中,可以在确定故障内存没有对应的备份内存的情况下,对故障内存进行内存隔离。
具体地,系统启动后会触发一个内存修复应用程序,该程序通过LPC接口给BMC提供内存修复函数,BMC发现内存故障(满足预设内存修复条件)后,将逻辑地址作为入参启动内存修复函数并发送给内存修复应用程序,系统收到BMC送来的逻辑地址后对该地址进行隔离,后续不再访问该逻辑地址。
本申请实施例提供的内存故障处理方法,通过在服务器未发生宕机的情况下,获取服务器的内存异常状态信息;根据内存异常状态信息,确定服务器的内存异常诊断信息;基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果;在服务器发生宕机的情况下,获取服务器的寄存器信息;根据寄存器信息,对内存权重矩阵进行迭代优化。上述方案提供的方法,通过在服务器未发生宕机的情况下,对其进行内存故障预警,以提前发现并避免故障,从而降低了服务器内存故障发生率。并且,通过采用内存隔离和替换等故障内存修复手段,提高了系统的健壮性,进一步降低了服务器内存故障发生率,同时给用户提供了对风险的控制,避免服务器因内存故障而导致宕机,提高了服务器的稳定性、可靠性和可用性。
本申请实施例提供了一种内存故障处理装置,用于执行上述实施例提供的内存故障处理方法。
如图6所示,为本申请实施例提供的内存故障处理装置的结构示意图。该内存故障处理装置60包括:第一获取模块601、诊断模块602、预警模块603、第二获取模块604和优化模块605。
其中,第一获取模块,用于在服务器未发生宕机的情况下,获取服务器的内存异常状态信息;诊断模块,用于根据内存异常状态信息,确定服务器的内存异常诊断信息;预警模块,用于基于预设内存权重矩阵,根据内存异常诊断信息,确定服务器的内存故障预警结果;第二获取模块,用于在服务器发生宕机的情况下,获取服务器的寄存器信息;优化模块,用于根据寄存器信息,对内存权重矩阵进行迭代优化。
关于本实施例中的内存故障处理装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例提供的内存故障处理装置,用于执行上述实施例提供的内存故障处理方法,其实现方式与原理相同,不再赘述。
本申请实施例提供了一种电子设备,用于执行上述实施例提供的内存故障处理方法。
如图7所示,为本申请实施例提供的电子设备的结构示意图。该电子设备70包括:至少一个处理器71和存储器72。
存储器存储计算机执行指令;至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如上实施例提供的内存故障处理方法。
本申请实施例提供的电子设备,用于执行上述实施例提供的内存故障处理方法,其实现方式与原理相同,不再赘述。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上任一实施例提供的内存故障处理方法。
本申请实施例提供的包含计算机可执行指令的存储介质,可用于存储前述实施例中提供的内存故障处理方法的计算机执行指令,其实现方式与原理相同,不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (15)

1.一种内存故障处理方法,应用于BMC,其特征在于,包括:
在服务器未发生宕机的情况下,获取所述服务器的内存异常状态信息;
根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息;
基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果;
在所述服务器发生宕机的情况下,获取所述服务器的寄存器信息;
根据所述寄存器信息,对所述内存权重矩阵进行迭代优化。
2.根据权利要求1所述的方法,其特征在于,所述获取所述服务器的内存异常状态信息,包括:
获取服务器中断系统发送的内存异常告警信号;
根据所述内存异常告警信号,获取所述服务器的内存异常状态信息;
其中,所述服务器中断系统在检测到内存发生预设异常时,生成所述内存异常告警信号。
3.根据权利要求1所述的方法,其特征在于,所述根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息,包括:
根据所述内存异常状态信息,确定若干个故障内存及各所述故障内存对应的故障特征信息;
针对任一所述故障内存,根据该故障内存的故障特征信息,确定该故障内存在单位时间内的异常次数和异常类型,得到所述服务器的内存异常诊断信息。
4.根据权利要求3所述的方法,其特征在于,所述针对任一所述故障内存,根据该故障内存的故障特征信息,确定该故障内存在单位时间内的异常次数和异常类型,得到所述服务器的内存异常诊断信息,包括:
针对任一所述故障内存,根据该故障内存的故障特征信息,确定所述故障内存最近异常发生时间和异常计数结果;
根据所述故障内存最近异常发生时间和异常计数结果,确定所述故障内存在单位时间内的异常次数;
结合所述故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,得到所述服务器的内存异常诊断信息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
针对任一所述故障内存的异常计数结果,若该故障内存在单位时间内未发生异常,则该故障内存的异常计数值减1;
其中,所述异常计数结果包括异常计数值和单位时间内每次异常的发生时间。
6.根据权利要求1所述的方法,其特征在于,所述基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果,包括:
基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率;
根据所述服务器的内存故障率,确定所述服务器的内存故障预警结果。
7.根据权利要求6所述的方法,其特征在于,所述基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数、最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率,包括:
基于预设内存权重矩阵,根据所述内存异常诊断信息表征的故障内存最近异常发生时间及最近异常对应的异常类型,确定所述服务器的内存故障率;
根据所述内存异常诊断信息表征的故障内存在单位时间内的异常次数达到预设次数阈值时,更新所述服务器的内存故障率,以增加所述内存故障率。
8.根据权利要求1所述的方法,其特征在于,所述根据所述寄存器信息,对所述内存权重矩阵进行迭代优化,包括:
根据所述寄存器信息,分析所述服务器的宕机原因;
当所述服务器的宕机原因为内存故障时,根据所述寄存器信息表征的述内存异常诊断信息与内存故障之间的关系,对所述内存权重矩阵进行迭代优化。
9.根据权利要求1所述的方法,其特征在于,还包括:
当所述服务器的内存故障预警结果满足预设内存修复条件时,对所述服务器进行内存故障修复。
10.根据权利要求9所述的方法,其特征在于,所述对所述服务器进行内存故障修复,包括:
获取故障内存的逻辑地址;
根据所述逻辑地址,确定所述故障内存的目标修复策略;
按照所述目标修复策略,修复所述故障内存。
11.根据权利要求10所述的方法,其特征在于,所述根据所述逻辑地址,确定所述故障内存的目标修复策略,包括:
根据所述逻辑地址,判断所述故障内存是否有对应的备份内存;
在确定所述故障内存有对应的备份内存的情况下,基于所述备份内存进行故障内存替换;
其中,所述目标修复策略包括故障内存替换策略。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
在确定所述故障内存没有对应的备份内存的情况下,对所述故障内存进行内存隔离;
其中,所述目标修复策略包括内存隔离策略。
13.一种内存故障处理装置,应用于BMC,其特征在于,包括:
第一获取模块,用于在服务器未发生宕机的情况下,获取所述服务器的内存异常状态信息;
诊断模块,用于根据所述内存异常状态信息,确定所述服务器的内存异常诊断信息;
预警模块,用于基于预设内存权重矩阵,根据所述内存异常诊断信息,确定所述服务器的内存故障预警结果;
第二获取模块,用于在所述服务器发生宕机的情况下,获取所述服务器的寄存器信息;
优化模块,用于根据所述寄存器信息,对所述内存权重矩阵进行迭代优化。
14.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至12任一项所述的方法。
CN202311709088.XA 2023-12-13 2023-12-13 一种内存故障处理方法、装置、电子设备及存储介质 Active CN117407207B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311709088.XA CN117407207B (zh) 2023-12-13 2023-12-13 一种内存故障处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311709088.XA CN117407207B (zh) 2023-12-13 2023-12-13 一种内存故障处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN117407207A true CN117407207A (zh) 2024-01-16
CN117407207B CN117407207B (zh) 2024-03-08

Family

ID=89489352

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311709088.XA Active CN117407207B (zh) 2023-12-13 2023-12-13 一种内存故障处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117407207B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514068A (zh) * 2012-06-28 2014-01-15 北京百度网讯科技有限公司 内存故障自动定位方法
CN115629905A (zh) * 2022-12-21 2023-01-20 苏州浪潮智能科技有限公司 一种内存故障预警方法、装置、电子设备及可读介质
CN116501705A (zh) * 2023-04-13 2023-07-28 苏州浪潮智能科技有限公司 基于ras的内存信息收集解析方法、系统、设备及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514068A (zh) * 2012-06-28 2014-01-15 北京百度网讯科技有限公司 内存故障自动定位方法
CN115629905A (zh) * 2022-12-21 2023-01-20 苏州浪潮智能科技有限公司 一种内存故障预警方法、装置、电子设备及可读介质
CN116501705A (zh) * 2023-04-13 2023-07-28 苏州浪潮智能科技有限公司 基于ras的内存信息收集解析方法、系统、设备及介质

Also Published As

Publication number Publication date
CN117407207B (zh) 2024-03-08

Similar Documents

Publication Publication Date Title
CN108388489B (zh) 一种服务器故障诊断方法、系统、设备及存储介质
US9720758B2 (en) Diagnostic analysis tool for disk storage engineering and technical support
US7409594B2 (en) System and method to detect errors and predict potential failures
US7475387B2 (en) Problem determination using system run-time behavior analysis
CN111414268B (zh) 故障处理方法、装置及服务器
CN111104293A (zh) 用于支持盘故障预测的方法、设备和计算机程序产品
EP3591485B1 (en) Method and device for monitoring for equipment failure
CN113708986B (zh) 服务器监控装置、方法及计算机可读存储介质
WO2018233170A1 (zh) 日志记录方法、装置、计算机设备及存储介质
CN108572895B (zh) 一种Linux下自动检查软硬件配置的稳定性测试方法
CN114758714A (zh) 一种硬盘故障预测方法、装置、电子设备及存储介质
US8984333B2 (en) Automatic computer storage medium diagnostics
CN114860487A (zh) 一种内存故障识别方法及一种内存故障隔离方法
CN113010341A (zh) 一种故障内存定位的方法和设备
CN117407207B (zh) 一种内存故障处理方法、装置、电子设备及存储介质
CN111209129A (zh) 基于amd平台的内存优化方法和装置
CN116501705A (zh) 基于ras的内存信息收集解析方法、系统、设备及介质
CN113468029A (zh) 日志管理方法、装置、电子设备和可读存储介质
Taerat et al. Using log information to perform statistical analysis on failures encountered by large-scale HPC deployments
ChuahM et al. Failure diagnosis for cluster systems using partial correlations
CN118656307B (zh) 基板管理控制器的故障检测方法、服务器、介质和产品
CN115695159B (zh) 一种设备诊断方法、装置、设备和存储介质
CN118132323B (zh) 一种服务器故障诊断方法、装置、电子设备及存储介质
CN113037550B (zh) 一种服务故障监控方法、系统及计算机可读存储介质
CN115913895B (zh) 一种服务器故障诊断告警的方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant