本技术涉及计算,尤其涉及一种故障检测方法以及计算设备。
背景技术:
1、动态随机存取存储器(dynamic random access memory,dram)(俗称内存)是一种在计算技术领域必备且使用数量较多的用于存储的元器件之一。dram与中央处理器(central processing unit,cpu)通过内存条金手指、内存插槽、主板pcb走线、cpu底座、cpu针脚组成的物理链路来实现信息交互。当上述物理链路发生故障(例如金手指粉尘污染、内存插槽短路/开路等)时,内存会发生读取异常的故障;当内存存在自身故障时,内存也会发生读取异常的故障,因此如何高效、准确地确定该故障是否为物理链路故障很重要。
技术实现思路
1、本技术实施例提供了一种故障检测方法以及计算设备,可实现存储模块物理链路故障的自动化、智能化检测。
2、第一方面,本技术实施例提供了一种故障检测方法,应用于控制单元,所述控制单元设置于计算设备中,所述计算设备中还包括存储模块,所述方法包括:
3、获取对所述存储模块的故障检测数据,并根据故障判定规则对所述故障检测数据进行检测,所述故障检测数据包括所述存储模块在指定时间阈值范围内的可纠正错误ce信息、错误检查和纠正ecc奇偶寄存器信息;
4、若所述故障检测数据满足所述故障判定规则,则确定所述存储模块的故障类型为物理链路故障,并生成故障告警信息。
5、进一步地,所述根据故障判定规则对所述故障检测数据进行检测,包括:
6、根据所述ce信息获取在所述指定时间阈值范围内发生的第一ce数量;
7、通过判断所述第一ce数量是否大于第一阈值来确定所述存储模块是否发生物理链路故障。
8、进一步地,所述通过判断所述第一ce数量是否大于第一阈值来确定所述存储模块是否发生物理链路故障,包括:
9、根据所述spd信息确定所述存储模块的存储类型,所述存储类型包括多位宽粒度集合rank或单rank;
10、当所述存储模块的存储类型为多rank时,获取在所述指定时间阈值范围内发生的各个ce的rank编号,当所述各个ce的rank编号存在不相同时,根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障;
11、当所述存储模块的存储类型为单rank时,根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障。
12、进一步地,所述根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障,包括:
13、根据所述ce信息以及ecc奇偶寄存器信息,确定所述各个ce的ce地址聚类信息、ecc奇偶校验寄存器聚类信息;
14、根据所述ce地址聚类信息确定所述各个ce的第一类编号和第二类编号;
15、根据所述第一类编号、第二类编号以及ecc奇偶校验寄存器聚类信息,确定所述存储模块是否发生物理链路故障。
16、进一步地,所述根据所述第一类编号、第二类编号以及ecc奇偶校验寄存器聚类信息,确定所述存储模块是否发生物理链路故障,包括:
17、当所述各个ce的第一类编号相同时,检测所述各个ce的第二类编号是否存在不相同;
18、当检测到所述各个ce的第二类编号存在不相同时,根据所述ecc奇偶校验寄存器聚类信息确定所述存储模块是否发生物理链路故障。
19、进一步地,所述根据所述ecc奇偶校验寄存器聚类信息确定所述存储模块是否发生物理链路故障,包括:
20、获取所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字;
21、当所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字相同时,获取所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字的数量;
22、根据所述不为0的数字的数量确定所述存储模块是否发生物理链路故障。
23、进一步地,所述根据所述不为0的数字的数量确定所述存储模块是否发生物理链路故障,包括:
24、获取所述不为0的数字的数量大于第二阈值的第二ce数量;
25、当所述第二ce数量大于或等于第三阈值时,确定所述存储模块发生物理链路故障。
26、进一步地,所述第一类编号包括channel编号、dimm编号以及device编号,所述第二类编号包括bankgroup编号和bank编号。
27、进一步地,所述控制单元包括基本输入输出系统bios,所述控制单元与所述存储模块连接;所述获取所述存储模块的故障检测数据,包括:
28、从所述存储模块中获取所述故障检测数据。
29、进一步地,所述计算设备中还包括输入输出单元,所述控制单元通过所述输入输出单元与所述存储模块连接;所述获取所述存储模块的故障检测数据,包括:
30、获取所述输入输出单元发送的所述故障检测数据,所述故障检测数据是所述输入输出单元从所述存储模块获取到的。
31、进一步地,所述控制单元包括单板管理控制器bmc,所述输入输出单元包括基本输入输出系统bios。
32、进一步地,所述存储模块包括动态随机存取存储器dram。
33、进一步地,所述故障检测数据包括所述存储模块的串行存在检测spd信息。
34、本技术实施例通过获取存储模块的故障检测数据,并根据故障判定规则对故障检测数据进行检测,若故障检测数据满足故障判定规则,则确定存储模块的故障类型为物理链路故障,实现了存储模块物理链路故障的在线、实时定位,不仅减少了存储模块物理链路故障定位的操作步骤,节省了存储模块物理链路故障定位的时间,提高了存储模块物理链路故障定位的时间的效率,降低维护成本。通过生成故障告警信息,有助于提醒用户及时切换业务,防止关键业务因存储模块的物理链路故障的持续上报而导致中止或卡顿,提高了系统的可用性。
35、第二方面,本技术实施例提供了一种计算设备,该计算设备包括控制单元和存储模块,所述控制单元用于获取对所述存储模块的故障检测数据,并根据故障判定规则对所述故障检测数据进行检测,所述故障检测数据包括所述存储模块在指定时间阈值范围内的可纠正错误ce信息、错误检查和纠正ecc奇偶寄存器信息;若所述故障检测数据满足所述故障判定规则,则确定所述存储模块的故障类型为物理链路故障,并生成故障告警信息。
36、进一步地,所述控制单元根据故障判定规则对所述故障检测数据进行检测时,具体用于:
37、根据所述ce信息获取在所述指定时间阈值范围内发生的第一ce数量;
38、通过判断所述第一ce数量是否大于第一阈值来确定所述存储模块是否发生物理链路故障。
39、进一步地,所述控制单元通过判断所述第一ce数量是否大于第一阈值来确定所述存储模块是否发生物理链路故障时,具体用于:
40、根据所述spd信息确定所述存储模块的存储类型,所述存储类型包括多位宽粒度集合rank或单rank;
41、当所述存储模块的存储类型为多rank时,获取在所述指定时间阈值范围内发生的各个ce的rank编号,当所述各个ce的rank编号存在不相同时,根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障;
42、当所述存储模块的存储类型为单rank时,根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障。
43、进一步地,所述控制单元根据所述ce信息以及ecc奇偶寄存器信息确定所述存储模块是否发生物理链路故障时,具体用于:
44、根据所述ce信息以及ecc奇偶寄存器信息,确定所述各个ce的ce地址聚类信息、ecc奇偶校验寄存器聚类信息;
45、根据所述ce地址聚类信息确定所述各个ce的第一类编号和第二类编号;
46、根据所述第一类编号、第二类编号以及ecc奇偶校验寄存器聚类信息,确定所述存储模块是否发生物理链路故障。
47、进一步地,所述控制单元根据所述第一类编号、第二类编号以及ecc奇偶校验寄存器聚类信息,确定所述存储模块是否发生物理链路故障时,具体用于:
48、当所述各个ce的第一类编号相同时,检测所述各个ce的第二类编号是否存在不相同;
49、当检测到所述各个ce的第二类编号存在不相同时,根据所述ecc奇偶校验寄存器聚类信息确定所述存储模块是否发生物理链路故障。
50、进一步地,所述控制单元根据所述ecc奇偶校验寄存器聚类信息确定所述存储模块是否发生物理链路故障时,具体用于:
51、获取所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字;
52、当所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字相同时,获取所述各个ce的ecc奇偶校验寄存器聚类信息中不为0的数字的数量;
53、根据所述不为0的数字的数量确定所述存储模块是否发生物理链路故障。
54、进一步地,所述控制单元根据所述不为0的数字的数量确定所述存储模块是否发生物理链路故障时,具体用于:
55、获取所述不为0的数字的数量大于第二阈值的第二ce数量;
56、当所述第二ce数量大于或等于第三阈值时,确定所述存储模块发生物理链路故障。
57、进一步地,所述第一类编号包括channel编号、dimm编号以及device编号,所述第二类编号包括bankgroup编号和bank编号。
58、进一步地,所述控制单元包括基本输入输出系统bios,所述控制单元与所述存储模块连接;所述控制单元获取所述存储模块的故障检测数据时,具体用于:
59、从所述存储模块中获取所述故障检测数据。
60、进一步地,所述计算设备中还包括输入输出单元,所述控制单元通过所述输入输出单元与所述存储模块连接;所述控制单元获取所述存储模块的故障检测数据时,具体用于:
61、获取所述输入输出单元发送的所述故障检测数据,所述故障检测数据是所述输入输出单元从所述存储模块获取到的。
62、进一步地,所述控制单元包括单板管理控制器bmc,所述输入输出单元包括基本输入输出系统bios。
63、进一步地,所述故障检测数据还包括所述存储模块的串行存在检测spd信息。
64、进一步地,所述存储模块包括动态随机存取存储器dram。
65、本技术实施例通过获取存储模块的故障检测数据,并根据故障判定规则对故障检测数据进行检测,若故障检测数据满足故障判定规则,则确定存储模块的故障类型为物理链路故障,实现了存储模块物理链路故障的在线、实时定位,不仅减少了存储模块物理链路故障定位的操作步骤,节省了存储模块物理链路故障定位的时间,提高了存储模块物理链路故障定位的时间的效率,降低维护成本。通过生成故障告警信息,有助于提醒用户及时切换业务,防止关键业务因存储模块的物理链路故障的持续上报而导致中止或卡顿,提高了系统的可用性。