CN107562583A - 一种在x86平台上自动测试内存ras特性的方法 - Google Patents
一种在x86平台上自动测试内存ras特性的方法 Download PDFInfo
- Publication number
- CN107562583A CN107562583A CN201710599409.3A CN201710599409A CN107562583A CN 107562583 A CN107562583 A CN 107562583A CN 201710599409 A CN201710599409 A CN 201710599409A CN 107562583 A CN107562583 A CN 107562583A
- Authority
- CN
- China
- Prior art keywords
- test
- memory
- platforms
- ras
- server
- 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
本发明涉及服务器测试领域,具体涉及一种在X86平台上自动测试内存RAS特性的方法。该方法通过使用Intel平台的ITP测试工具对内存子系统进行连续注错测试,直到超过阈值,然后根据RAS的功能项设置,检查相应的寄存器信息是否变化,从而达到判断RAS特性是否生效。该测试内存RAS的方法使用方便,操作简单,能够有效的节省测试环节的产品开发时间,并减少测试人员误操作的概率。
Description
技术领域
本发明涉及服务器测试领域,具体涉及一种在X86平台上自动测试内存RAS特性的方法。该方法通过使用Intel平台的ITP测试工具对内存子系统进行连续注错测试,直到超过阈值,待注错超过阈值后,将注错产生的日志重定向到文件中,根据RAS的功能项设置,检查相应的寄存器信息是否变化,从而达到判断RAS特性是否生效。该测试内存RAS的方法使用方便,操作简单,能够有效的节省测试环节的产品开发时间,并减少测试人员误操作的概率。
背景技术
X86是由Intel推出的一种复杂指令集,用于控制芯片的运行的程序,现在X86已经广泛运用到了家用PC领域。X86架构于1978年推出的Intel 8086中央处理器中首度出现,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004的。8086在三年后为IBM PC所选用,之后X86便成为了个人计算机的标准平台,成为了历来最成功的CPU架构。
ITP(Integration Test Platform)集成测试工具是面向接口的集成测试自动化工具,涵盖接口用例设计、自动化测试脚本执行、自动化测试执行的计划及任务分配、接口测试管理、自动化测试人员管理等功能。
随着云计算和大数据技术的不断发展,传统信息化服务以及日趋强大的云计算服务对服务器的稳定性要求越来越高,服务器的安全性主要体现在RAS性能上。RAS性能是指服务器的可靠性(Reliability)、可用性(Availability)以及可服务性(Serviceability),而内存子系统的RAS特性是服务器稳定性的重中之重。
内存的RAS特性是指在内存ECC校验技术的基础上发展出的用于提升内存容错能力、可靠性、可用性以及诊断功能的关键性技术,用于保证服务器长期稳定运行。作为高端服务器产品提供商,一款服务器在研发阶段需要对产品进行内存的RAS特性进行测试,更是内存子系统的主要测试项,但是对服务器内容的测试比较复杂,步骤多,所耗时间长。
针对这种情况,本申请发明了一种基于Intel X86平台的ITP工具自动测试内存RAS特性的方法。
对此,本申请发明一种。
发明内容
本发明通过python脚本实现服务器开发阶段的内存RAS自动测试,主要是使用ITP工具模拟内存连续发生ECC错误,从而触发内存的镜像、sparing等模式的功能,大大简化了内存RAS注错测试的操作流程,特别是对于高端服务器,能够轻松实现对内存子系统各个功能RAS的测试。使用本方法能够有效缩减测试流程,大大提高了测试效率和测试的准确性。
Python是一种面向对象、解释型计算机程序设计语言,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
具体地,本申请请求保护一种在X86平台上自动测试内存RAS特性的方法,其特征在于,该方法具体包括如下步骤:
在服务器上安装ITP工具;
设置服务器内存RAS功能;
对服务器内存子系统进行连续注错测试;
判断注错是否超过阈值;
如果没有超过阈值,则继续注错测试,直至超过阈值;
如果超过阈值,则检查内存对应设置的寄存器的信息是否有变化,如果内存对应设置的寄存器没有变化,则提示报错信息。
如上所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,对服务器内存子系统进行连续注错测试,是使用ITP工具模拟内存连续发生ECC错误。
如上所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,该方法是使用python工具完成。
如上所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,该阈值可以预先设置。
附图说明
图1、本发明所述自动测试内存RAS流程图
具体实施方式
下面将结合附图1对本发明所述的方法做进一步地详细描述。
本申请发明的测试方法主要是利用python脚本进行自动化注错和自动分析结果。
首先在服务器上安装ITP工具;
设置服务器内存RAS功能;
对服务器内存子系统进行连续注错测试,具体实现手段是使用ITP工具模拟内存连续
发生ECC错误;
判断注错是否超过阈值;
如果没有超过阈值,则重复进行注错测试直至超过设定阈值;
如果超过阈值,则检查内存对应设置的寄存器的信息是否有变化,如果有,则证明服务器内存RAS功能工作正常;如果没有变化,则判断服务器内存RAS功能不正常工作,提示报错信息。
按照本申请所述测试方法实现的具体实施例中部分相关代码如下:
#注错:
#ei.injectMemError(socket=2,channel=[1,1],dimm=2,rank=0,errType=″ce″)
#计数器检查:
#sv.socket2.uncore0.imcl-cl-correrrcnt_3.show
#寄存器信息检查:
#sv.socket0.uncore0.imc0_c0_devtag-cntl_0.show
显而易见地,上面所示的仅仅是本发明的一个具体实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据该具体实施例获得其他的技术方案,都属于本发明保护的范围
本发明通过python脚本自动化的实现服务器开发阶段的内存RAS测试,大大简化了内存RAS注错测试的操作流程,特别是对于高端服务器,轻松实现了对内存子系统各个功能RAS的测试。使用本方法有效的缩减了测试流程,有效的提高了测试效率和测试的准确性。
Claims (4)
1.一种在X86平台上自动测试内存RAS特性的方法,其特征在于,该方法具体包括如下步骤:
在服务器上安装ITP工具;
设置服务器内存RAS功能;
对服务器内存子系统进行连续注错测试;
判断注错是否超过阈值;
如果没有超过阈值,则继续注错测试,直至超过阈值;
如果超过阈值,则检查内存对应设置的寄存器的信息是否有变化,如果内存对应设置的寄存器没有变化,则提示报错信息。
2.如权利要求1所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,对服务器内存子系统进行连续注错测试,是使用ITP工具模拟内存连续发生ECC错误。
3.如权利要求2所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,该方法是使用python工具完成。
4.如权利要求3所述的在X86平台上自动测试内存RAS特性的方法,其特征还在于,该阈值可以预先设置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710599409.3A CN107562583A (zh) | 2017-07-21 | 2017-07-21 | 一种在x86平台上自动测试内存ras特性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710599409.3A CN107562583A (zh) | 2017-07-21 | 2017-07-21 | 一种在x86平台上自动测试内存ras特性的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107562583A true CN107562583A (zh) | 2018-01-09 |
Family
ID=60974561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710599409.3A Pending CN107562583A (zh) | 2017-07-21 | 2017-07-21 | 一种在x86平台上自动测试内存ras特性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107562583A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108962335A (zh) * | 2018-07-26 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种内存循环注错的测试装置及方法 |
CN109101353A (zh) * | 2018-08-24 | 2018-12-28 | 联想(北京)有限公司 | 一种电子设备部件的特性检测方法和电子设备 |
CN111767241A (zh) * | 2019-04-02 | 2020-10-13 | 鸿富锦精密电子(天津)有限公司 | 一种PCIe注错测试方法、装置以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050160272A1 (en) * | 1999-10-28 | 2005-07-21 | Timecertain, Llc | System and method for providing trusted time in content of digital data files |
CN104268052A (zh) * | 2014-10-21 | 2015-01-07 | 浪潮电子信息产业股份有限公司 | 一种基于ITP工具的Memory Rank Spare测试方法 |
CN104317690A (zh) * | 2014-10-21 | 2015-01-28 | 浪潮电子信息产业股份有限公司 | 一种基于ITP工具的Memory Demand Scrub测试方法 |
CN104484274A (zh) * | 2014-12-24 | 2015-04-01 | 浪潮电子信息产业股份有限公司 | 一种基于itp工具的内存轮巡检查功能测试方法 |
CN105138438A (zh) * | 2015-08-26 | 2015-12-09 | 浪潮电子信息产业股份有限公司 | 一种memory patrol scrub测试方法 |
CN105302686A (zh) * | 2015-12-09 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种存储器目标测试方法 |
-
2017
- 2017-07-21 CN CN201710599409.3A patent/CN107562583A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050160272A1 (en) * | 1999-10-28 | 2005-07-21 | Timecertain, Llc | System and method for providing trusted time in content of digital data files |
CN104268052A (zh) * | 2014-10-21 | 2015-01-07 | 浪潮电子信息产业股份有限公司 | 一种基于ITP工具的Memory Rank Spare测试方法 |
CN104317690A (zh) * | 2014-10-21 | 2015-01-28 | 浪潮电子信息产业股份有限公司 | 一种基于ITP工具的Memory Demand Scrub测试方法 |
CN104484274A (zh) * | 2014-12-24 | 2015-04-01 | 浪潮电子信息产业股份有限公司 | 一种基于itp工具的内存轮巡检查功能测试方法 |
CN105138438A (zh) * | 2015-08-26 | 2015-12-09 | 浪潮电子信息产业股份有限公司 | 一种memory patrol scrub测试方法 |
CN105302686A (zh) * | 2015-12-09 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种存储器目标测试方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108962335A (zh) * | 2018-07-26 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种内存循环注错的测试装置及方法 |
CN109101353A (zh) * | 2018-08-24 | 2018-12-28 | 联想(北京)有限公司 | 一种电子设备部件的特性检测方法和电子设备 |
CN109101353B (zh) * | 2018-08-24 | 2021-04-13 | 联想(北京)有限公司 | 一种电子设备部件的特性检测方法和电子设备 |
CN111767241A (zh) * | 2019-04-02 | 2020-10-13 | 鸿富锦精密电子(天津)有限公司 | 一种PCIe注错测试方法、装置以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021098148A1 (zh) | 一种软件编译方法、装置及电子设备和存储介质 | |
Schäfer et al. | An empirical evaluation of using large language models for automated unit test generation | |
US9122804B2 (en) | Logic validation and deployment | |
US20130311827A1 (en) | METHOD and APPARATUS for automatic testing of automation software | |
CN104484274B (zh) | 一种基于itp工具的内存轮巡检查功能测试方法 | |
CN111459495B (zh) | 单元测试代码文件生成方法、电子装置及存储介质 | |
CN104268052B (zh) | 一种基于ITP工具的Memory Rank Spare测试方法 | |
CN109726136A (zh) | 数据库的测试方法、装置、设备和存储介质 | |
WO2020019490A1 (zh) | 一种接口测试方法、电子设备及存储介质 | |
CN107562583A (zh) | 一种在x86平台上自动测试内存ras特性的方法 | |
US9183122B2 (en) | Automated program testing to facilitate recreation of test failure | |
CN115952758A (zh) | 芯片验证方法、装置、电子设备及存储介质 | |
CN110516447A (zh) | 一种识别终端模拟器的方法与设备 | |
CN109710479B (zh) | 一种处理方法及第一设备、第二设备 | |
Chen et al. | Automated bug detection and replay for COTS linux kernel modules with concolic execution | |
CN107562565A (zh) | 一种验证内存Patrol Scurb功能的方法 | |
CN109857583B (zh) | 一种处理方法及装置 | |
Aponte-Moreno et al. | MiFIT: A fault injection tool to validate the reliability of microprocessors | |
CN113378502B (zh) | 验证信号走向配码的测试方法、装置、介质及设备 | |
CN108804328A (zh) | 一种安卓应用兼容性测试的方法 | |
CN115687108A (zh) | 基于uvm与fpv相结合的验证方法、平台、终端及存储介质 | |
US11740875B2 (en) | Type inference in dynamic languages | |
CN115374017A (zh) | 一种仿真运行可执行文件时抓取现场的方法及计算设备 | |
CN102508697B (zh) | 一种Java实现8位嵌入式CPU仿真运行环境的方法 | |
CN115185638A (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 |
Application publication date: 20180109 |
|
RJ01 | Rejection of invention patent application after publication |