CN107562593A - 一种验证内存ecc功能的自动化测试方法与系统 - Google Patents
一种验证内存ecc功能的自动化测试方法与系统 Download PDFInfo
- Publication number
- CN107562593A CN107562593A CN201710739379.1A CN201710739379A CN107562593A CN 107562593 A CN107562593 A CN 107562593A CN 201710739379 A CN201710739379 A CN 201710739379A CN 107562593 A CN107562593 A CN 107562593A
- Authority
- CN
- China
- Prior art keywords
- internal memory
- ecc
- error
- mistake
- log
- 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.)
- Pending
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明提供一种验证内存ECC功能的自动化测试方法与系统,所述方法包括:对当前插入的内存逐个注错,直至达到correctable ECC阈值,引起报错;判断日志记录中的内存位置和错误类型是否与实际一致;如果全部符合则输出PASS;否则输出FAIL,并将错误信息保存到log文件中;判断是否对所有内存完成注错。通过对当前服务器插入的内存和位置进行自动识别以及注错,当达到correctable ECC阈值时,将日志记录中的内存位置和错误类型信息与实际内存信息进行比对,自动输出错误信息记录,从而自动化完成内存ECC功能测试,提高了测试效率,免去了人工逐步查看的过程,节省了人工成本。
Description
技术领域
本发明涉及计算机技术领域,特别是一种验证内存ECC功能的自动化测试方法与系统。
背景技术
RAS特性是为了维持服务器稳定性而推出的一系列措施,是指机器的可靠性(Reliability)、可用性(Availability)和可服务性(Serviceability),RAS性能是综合性指标,对于不同行业用户而言,其对RAS性能的要求不尽相同,而服务器内存的RAS特性最为关键,内存的好坏决定了服务器能否正常工作。
内存ECC(Error Correcting Code)技术是服务器最常用的RAS特性,在此技术的支持下,服务器能够自动识别并纠正内存的单比特类型的错误,使服务器能够正常运转;或者识别多比特错误,将服务器宕机的原因标识出来,以供后续debug调试使用。鉴于此功能的重要性,服务器测试中是必不可少的测试项目。当前服务器上针对此技术的测试需要人工对当前服务器插了多少内存以及其位置和Correctable ECC的报错阈值进行设置和识别;然后对插入的内存逐个进行注错,直至到达报错阈值,然后查看系统下和BMC(Baseboard Management Controller,基板管理控制器)下是否记录了相应的日志,以及记录的日志是否能够正确反映出当前测试的内存的位置和错误类型。
但是上述操作需要人工一步一步查看,效率低下,而且人工操作容易出现遗漏的情况,且测试过程不连贯。
发明内容
本发明的目的是提供一种验证内存ECC功能的自动化测试方法与系统,通过自动化完成内存ECC功能测试,免去人工一步一步查看过程,极大提高测试效率,节省人工成本。
为达到上述技术目的,本发明提供了一种验证内存ECC功能的自动化测试方法,其特征在于:包括以下步骤:
对当前插入的内存逐个注错,直至达到correctable ECC阈值,引起报错;
判断日志记录中的内存位置和错误类型是否与实际一致;
如果全部符合则输出PASS;否则输出FAIL,并将错误信息保存到log文件中;
判断是否对所有内存完成注错,如果是则结束测试,否则转至下一内存进行注错。
优选地,在所述对当前插入的内存逐个注错之前还包括以下步骤:
安装配置工具;
识别当前服务器插入的内存及其位置;
识别所述服务器correctable ECC阈值。
优选地,所述配置工具包括ipmitool和idk。
优选地,采用Dmidecode工具识别当前服务器插入的内存及其位置;采用所述ipmitool工具识别所述服务器correctable ECC阈值;采用所述idk工具用于对当前插入的内存逐个注错。
优选地,所述日志记录包括BMC下的SEL日志记录和操作系统下的MCELOG日志记录。
优选地,所述日志记录的内容包括CPU位置、CHANNEL位置和DIMM位置。
本发明还提供了一种验证内存ECC功能的自动化测试系统,包括:
配置工具安装模块,用于安装配置工具ipmitool和idk;
内存识别模块,用于采用Dmidecode工具识别当前服务器插入的内存和位置;
阈值识别模块,用于采用ipmitool工具识别所述服务器correctable ECC阈值;
注错模块,用于采用idk工具对所述内存逐个注错,直至达到correctableECC阈值,引起报错;
内存比对模块,用于比对日志记录中的内存位置和错误类型是否与实际一致;
错误信息输出模块,用于将内存位置和错误类型与实际不一致的错误信息记录保存至log文件中;
判断模块,用于判断是否对所有内存完成注错。
优选地,所述日志记录包括BMC下的SEL日志记录和操作系统下的MCELOG日志记录。
优选地,所述日志记录的内容包括CPU位置、CHANNEL位置和DIMM位置。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
与现有技术相比,本发明通过对当前服务器插入的内存和位置进行自动识别以及注错,当达到correctable ECC阈值时,将日志记录中的内存位置和错误类型信息与实际内存信息进行比对,自动输出错误信息记录,从而自动化完成ECC功能测试,提高了测试效率,免去了人工逐步查看的过程,节省了人工成本。
附图说明
图1为本发明实施例中所提供的一种验证内存ECC功能的自动化测试方法流程图;
图2为本发明实施例中所提供的一种验证内存ECC功能的自动化测试系统整体框图。
具体实施方式
为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
下面结合附图对本发明实施例所提供的一种验证内存ECC功能的自动化测试方法与系统进行详细说明。
如图1所示,本发明实施例提供了一种验证内存ECC功能的自动化测试方法:
首先,安装自动化测试所需的配置工具ipmitool和idk。Ipmitool是一个查看ipmi(Intelligent Platform Management Interface)协议,通过该工具可以查看BIOS的选项设置,以及查看BMC的SEL日志(系统事件日志)。idk是Intel推出的基于Intel的CPU的内存注错工具,使用该工具可以对指定的内存槽位进行持续的指定类型的注错。
在Linux,通过解压缩命令对安装包进行解压缩,并进行配置工具的安装。
通过Dmidecode工具识别当前服务器插入的内存大小以及位置。
Dmidecode是Linux系统下集成的一个读取DMI(Desktop Management Interface)信息的工具,允许在Linux系统下获取有关硬件方面的信息。在本发明实施例中,通过Dmidecode命令识别到所有的内存及其槽位,读取所有内存的大小、位置和序列号等信息。通过对Dmidecode工具读取出的信息进行截取,能够获取到当前机器上插入内存的槽位所在的CPU号、CHANNEL(硬盘数据传输通道)号、DIMM(Dual Inline Memory Modules,双列直插式存储模块)号,以供后续使用。
获取所有内存条序列号的列表,以及获取包含CPU位置编号、CHANNEL位置编号、DIMM位置编号列表。根据内存条序列号来判断插槽上是否有内存,序列号为NO DIMM,则表示插槽上没有内存;其他信息则表示插槽上存在内存。通过循环指令,对序列号列表中的所有内存来完成内存信息读取。
通过ipmitool工具对BIOS当前的correctable ECC阈值进行识别。
通过idk工具对内存条进行逐个注错,直至达到correctable ECC的阈值,引起报错。
每当完成一条内存的注错达到阈值,通过ipmitool读取SEL日志,判断日志记录的内存位置是否与实际一致;通过读取操作系统的MCELOG来判断记录的log文件中的内存位置是否与实际一致。
通过在BMC和系统下查看是否有日志记录,分析是否符合当前注错内存的位置和错误类型,如果上一步骤操作中的日志记录一致,则输出PASS信息;如果有任何一处不一致,则输出FAIL信息,并将当前测试的内存位置和信息记录到log文件中保存。
所述日志记录包括CPU位置、CHANNEL位置和DIMM位置。
通过上述操作,完成内存ECC功能的自动化测试。由于通过对当前服务器插入的内存和位置进行自动识别以及注错,当达到correctable ECC阈值时,将日志记录中的内存位置和错误类型信息与实际内存信息进行比对,自动输出错误信息记录,从而自动化完成ECC功能测试,提高了测试效率,免去了人工逐步查看的过程,节省了人工成本。
如图2所示,本发明实施例还提供了一种验证内存ECC功能的自动化测试系统,包括:
配置工具安装模块,用于安装配置工具ipmitool和idk;
安装自动化测试所需的配置工具ipmitool和idk。通过ipmitool可以查看BIOS的选项设置,以及查看BMC的SEL日志(系统事件日志);通过idk可以对指定的内存槽位进行持续的指定类型的注错。
内存识别模块,用于采用Dmidecode工具识别当前服务器插入的内存和位置;
通过Dmidecode命令识别到所有的内存及其槽位,读取所有内存的大小、位置和序列号等信息。通过对Dmidecode工具读取出的信息进行截取,能够获取到当前机器上插入内存的槽位所在的CPU号、CHANNEL号、DIMM号,以供后续使用。
阈值识别模块,用于采用ipmitool工具识别所述服务器correctable ECC阈值;
通过识别BIOS当前的correctable ECC的阈值,以供内存注错使用。
注错模块,用于采用idk工具对所述内存逐个注错,直至达到correctableECC阈值,引起报错;
内存比对模块,用于比对日志记录中的内存位置和错误类型是否与实际一致;
每当完成一条内存的注错达到阈值,通过ipmitool读取SEL日志,判断日志记录的内存位置是否与实际一致;通过读取操作系统的MCELOG来判断记录的log文件中的内存位置是否与实际一致。
所述日志记录的内容包括CPU位置、CHANNEL位置和DIMM位置。
错误信息输出模块,用于将内存位置和错误类型与实际不一致的错误信息记录保存至log文件中。
判断模块,用于判断是否对所有内存完成注错。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种验证内存ECC功能的自动化测试方法,其特征在于,包括以下步骤:
对当前插入的内存逐个注错,直至达到correctable ECC阈值,引起报错;
判断日志记录中的内存位置和错误类型是否与实际一致;
如果全部符合则输出PASS;否则输出FAIL,并将错误信息保存到log文件中;
判断是否对所有内存完成注错,如果是则结束测试,否则转至下一内存进行注错。
2.根据权利要求1所述的一种验证内存ECC功能的自动化测试方法,其特征在于,在所述对当前插入的内存逐个注错之前还包括以下步骤:
安装配置工具;
识别当前服务器插入的内存及其位置;
识别所述服务器correctable ECC阈值。
3.根据权利要求2所述的一种验证内存ECC功能的自动化测试方法,其特征在于,所述配置工具包括ipmitool和idk。
4.根据权利要求3所述的一种验证内存ECC功能的自动化测试方法,其特征在于,采用Dmidecode工具识别当前服务器插入的内存及其位置;采用所述ipmitool工具识别所述服务器correctable ECC阈值;采用所述idk工具用于对当前插入的内存逐个注错。
5.根据权利要求1-4任意一项所述的一种验证内存ECC功能的自动化测试方法,其特征在于,所述日志记录包括BMC下的SEL日志记录和操作系统下的MCELOG日志记录。
6.根据权利要求1-4任意一项所述的一种验证内存ECC功能的自动化测试方法,其特征在于,所述日志记录的内容包括CPU位置、CHANNEL位置和DIMM位置。
7.一种验证内存ECC功能的自动化测试系统,其特征在于,包括:
配置工具安装模块,用于安装配置工具ipmitool和idk;
内存识别模块,用于采用Dmidecode工具识别当前服务器插入的内存和位置;
阈值识别模块,用于采用ipmitool工具识别所述服务器correctable ECC阈值;
注错模块,用于采用idk工具对所述内存逐个注错,直至达到correctableECC阈值,引起报错;
内存比对模块,用于比对日志记录中的内存位置和错误类型是否与实际一致;
错误信息输出模块,用于将内存位置和错误类型与实际不一致的错误信息记录保存至log文件中;
判断模块,用于判断是否对所有内存完成注错。
8.根据权利要求7所述的一种验证内存ECC功能的自动化测试系统,其特征在于,所述日志记录包括BMC下的SEL日志记录和操作系统下的MCELOG日志记录。
9.根据权利要求7或8所述的一种验证内存ECC功能的自动化测试系统,其特征在于,所述日志记录的内容包括CPU位置、CHANNEL位置和DIMM位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710739379.1A CN107562593A (zh) | 2017-08-25 | 2017-08-25 | 一种验证内存ecc功能的自动化测试方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710739379.1A CN107562593A (zh) | 2017-08-25 | 2017-08-25 | 一种验证内存ecc功能的自动化测试方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107562593A true CN107562593A (zh) | 2018-01-09 |
Family
ID=60976995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710739379.1A Pending CN107562593A (zh) | 2017-08-25 | 2017-08-25 | 一种验证内存ecc功能的自动化测试方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107562593A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918254A (zh) * | 2019-02-27 | 2019-06-21 | 苏州浪潮智能科技有限公司 | 一种AEP内存Error Detection功能测试方法、系统、终端及存储介质 |
CN112241346A (zh) * | 2020-10-23 | 2021-01-19 | 浪潮电子信息产业股份有限公司 | 对bios内存故障检测能力的测试方法、装置及系统 |
CN114116330A (zh) * | 2021-10-22 | 2022-03-01 | 苏州浪潮智能科技有限公司 | 服务器性能测试方法、系统、终端及存储介质 |
CN114116330B (zh) * | 2021-10-22 | 2024-05-24 | 苏州浪潮智能科技有限公司 | 服务器性能测试方法、系统、终端及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120284396A1 (en) * | 2009-11-04 | 2012-11-08 | Inria Institut National De Recherche En Informatique Et En Automatique | Diagnostic tool for broadband networks |
CN103198000A (zh) * | 2013-04-02 | 2013-07-10 | 浪潮电子信息产业股份有限公司 | 一种linux系统下的故障内存位置定位方法 |
CN104182288A (zh) * | 2014-08-18 | 2014-12-03 | 浪潮电子信息产业股份有限公司 | 一种服务器集群系统功耗自动化测试的方法 |
CN104615521A (zh) * | 2015-01-05 | 2015-05-13 | 浪潮电子信息产业股份有限公司 | 一种测试bmc蓝屏捕获功能的方法 |
-
2017
- 2017-08-25 CN CN201710739379.1A patent/CN107562593A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120284396A1 (en) * | 2009-11-04 | 2012-11-08 | Inria Institut National De Recherche En Informatique Et En Automatique | Diagnostic tool for broadband networks |
CN103198000A (zh) * | 2013-04-02 | 2013-07-10 | 浪潮电子信息产业股份有限公司 | 一种linux系统下的故障内存位置定位方法 |
CN104182288A (zh) * | 2014-08-18 | 2014-12-03 | 浪潮电子信息产业股份有限公司 | 一种服务器集群系统功耗自动化测试的方法 |
CN104615521A (zh) * | 2015-01-05 | 2015-05-13 | 浪潮电子信息产业股份有限公司 | 一种测试bmc蓝屏捕获功能的方法 |
Non-Patent Citations (3)
Title |
---|
CSDN: "linux下查看主板内存槽与内存信息(dmidecode)", 《HTTPS://BLOG.CSDN.NET/D12345678A/ARTICLE/DETAILS/53908889》 * |
百度文库: "IDK User’s Guide", 《HTTPS://WENKU.BAIDU.COM/VIEW/3AA3622D0242A8956AECE466.HTML》 * |
脚本之家: "linux查看主板内存槽与内存信息的命令dmidecode方法", 《HTTPS://WWW.JB51.NET/ARTICLE/97156.HTM》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918254A (zh) * | 2019-02-27 | 2019-06-21 | 苏州浪潮智能科技有限公司 | 一种AEP内存Error Detection功能测试方法、系统、终端及存储介质 |
CN112241346A (zh) * | 2020-10-23 | 2021-01-19 | 浪潮电子信息产业股份有限公司 | 对bios内存故障检测能力的测试方法、装置及系统 |
CN112241346B (zh) * | 2020-10-23 | 2023-03-03 | 浪潮电子信息产业股份有限公司 | 对bios内存故障检测能力的测试方法、装置及系统 |
CN114116330A (zh) * | 2021-10-22 | 2022-03-01 | 苏州浪潮智能科技有限公司 | 服务器性能测试方法、系统、终端及存储介质 |
CN114116330B (zh) * | 2021-10-22 | 2024-05-24 | 苏州浪潮智能科技有限公司 | 服务器性能测试方法、系统、终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9141519B2 (en) | Accurate identification of software tests based on changes to computer software code | |
US7801719B2 (en) | Processor-based system analysis automation | |
CN107391333B (zh) | 一种osd磁盘故障测试方法及系统 | |
CN110727597B (zh) | 一种基于日志排查无效代码补全用例的方法 | |
US10049031B2 (en) | Correlation of violating change sets in regression testing of computer software | |
US20100218049A1 (en) | Method of Creating Signatures for Classifying Program Failures | |
JP7404839B2 (ja) | ソフトウェアプログラム不良位置の識別 | |
CN109324961B (zh) | 系统自动测试方法、装置、计算机设备及存储介质 | |
CN107590017B (zh) | 一种电子设备的检测方法和装置 | |
CN111104246B (zh) | 提升dram的错误检测与纠错的验证效率的方法、装置、计算机设备及存储介质 | |
CN107908490B (zh) | 一种服务器dc测试中gpu寄存器可靠性验证方法与系统 | |
CN107562593A (zh) | 一种验证内存ecc功能的自动化测试方法与系统 | |
CN107832176A (zh) | 一种Windows下硬盘压力自动测试方法及系统 | |
CN110716843A (zh) | 系统故障分析处理方法、装置、存储介质及电子设备 | |
CN106648969B (zh) | 一种磁盘中损坏数据巡检方法及系统 | |
CN111124894B (zh) | 代码覆盖率的处理方法、装置和计算机设备 | |
CN107562565A (zh) | 一种验证内存Patrol Scurb功能的方法 | |
CN112256532A (zh) | 测试界面生成方法、装置、计算机设备及可读存储介质 | |
CN112395195A (zh) | 自动化测试数据的处理方法、装置、设备及存储介质 | |
CN110162729B (zh) | 建立浏览器指纹以及识别浏览器类型的方法、装置 | |
US20220188221A1 (en) | Regression testing method and regression testing apparatus | |
CN115757099A (zh) | 平台固件保护恢复功能自动测试方法和装置 | |
US10481969B2 (en) | Configurable system wide tests | |
CN115878400A (zh) | 测试方法、装置、计算机设备、存储介质和程序产品 | |
CN112231159B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180109 |