一种服务器内存压力测试方法及系统技术方案

技术编号:36342845 阅读:15 留言:0更新日期:2023-01-14 17:56
本发明专利技术提供一种服务器内存压力测试方法及系统,涉及服务器测试技术领域,将待测服务器的物理内存按照预设容量分配为多个内存块;响应于预设的第一格雷码排序方式,将第一格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;依次读取每个内存块中的格雷码信息,检查是否按照第一格雷码排序排列;如果是则继续进行测试;如果为否,则报错,测试停止。本发明专利技术基于格雷码利用内存内部调用函数定制相应的读写方式,将格雷码信息写入内存,再读取内存的格雷码信息,从而达到对内存老化测试的目的。的目的。的目的。

【技术实现步骤摘要】
一种服务器内存压力测试方法及系统


[0001]本专利技术涉及服务器测试
,尤其涉及一种服务器内存压力测试方法及系统。

技术介绍

[0002]服务器生产过程中产生的电能消耗,越来越受到人们的关注,以服务器生产商I为例,某年共消耗电力3361万KWH,按户均432.7KWH的年用电量计算,I生产商一年的用电量相当于77677个家庭一年的用电量。I厂商某年度用电量的83%左右为工厂生产用电,而这80%的其中62%为老化压力用电,也就是说I厂商某年服务器,存储,交换机等产品就老化压力测试消耗掉大约1729万KWH的电力。可见降低老化压力测试的电力消耗量对节能减排及企业效益至关重要。以某款服务器为例,其中内存的能耗占到整个机器能耗的40.02%,所以降低内存老化测试中的能耗对整个老化能耗影响巨大,本专利技术就是针对老化测试中内存能耗的降低所做的专利技术。
[0003]下面主要以通用X86平台服务器为例分析老化内存测试存在的问题。目前内存老化压力的主要方法为:首先,分配一个自定义的内存块(64K/128K/32M)。成功后,超这个定义的内存块每8个bit写入数据pattern0xA5(1010 0101)。等待写入成功后,读取相应的内存块的数据。读取成功后,检查每个内存块的数据是否按照0xA5分布。检查成功后,超这个定义的内存块每8个bit写入数据pattern 0x5A(0101 1010);等待写入成功后,读取相应的内存块的数据。写入成功后检查每个内存块的数据是否按照0xA5分布。继续分配剩余的内存,如果还能分配,继续进行第(1)~(7),如果没有剩余内存可以分配,第一个测试循环结束。重新从(1)开始下一个循环测试。中间如果有任何一部失败,测试停止,抛出测试log。目前这种测试方法比较容易实现,但缺点也比较明显,一个是测试时间比较较长,因为需要不断分配内存,在以前服务器内存比较小(比如32G)时候比较适用,目前的服务器的内存一般都在128G以上,这样不断分布内存,使的测试时间太长,甚至会超出老化的总的测试时间(12/16/24小时)。
[0004]第二是虽然在写入的数据pattern(0xA5及0x5A)时,能将相邻的bit设为0和1,这样能覆盖到每个内存cell的每个bit都能到设到高低电平,测试覆盖率高。但是这样也造成了能耗的上升。因为内存能耗的主要来源于自载电容的充放电电流,根据公式:其中,C
l
是内存电路单个线的负载电容值,V
dd
是内存的电压值,T
l
是电平从0到1或者1到0的翻转次数。因为负载电容值及电压值在内存制造时已确定,服务器生产上无法更改,故要想降低内存测试的能耗,只能降低翻转的次数。
[0005]根据上述测试方式可以看出产线进行内存压力测试时,电力能耗太多,不符合节能减排的大方向,而且测试成本过高。
[0006]而且单个测试时长过长,导致在老化时间中,扫描每个cell的次数过少,降低了内存测试实际覆盖率。

技术实现思路

[0007]本专利技术提供一种服务器内存压力测试方法,测试方法可以通过减少电平翻转的次数来达到降低能耗的目的。
[0008]服务器内存压力测试方法包括:
[0009]步骤一、将待测服务器的物理内存按照预设容量分配为多个内存块;
[0010]步骤二、响应于预设的第一格雷码排序方式,将第一格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;
[0011]步骤三、依次读取每个内存块中的格雷码信息,检查是否按照第一格雷码排序排列;
[0012]步骤四、如果为否,则报错,测试停止。
[0013]进一步需要说明的是,如果为是,则响应于预设的第二格雷码排序方式,将第二格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;
[0014]写入完成后,依次读取每个内存块中的格雷码信息,检查是否按照第二格雷码排序排列;
[0015]如果为是,则响应于预设的第三格雷码排序方式,将第三格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;
[0016]写入完成后,依次读取每个内存块中的格雷码信息,检查是否按照第三格雷码排序排列;
[0017]依次类推,直到达到预设循环次数,完成压力测试进程,并显示测试结果。
[0018]进一步需要说明的是,每次检查是否按照格雷码排序排列过程中,如果为否,则报错,测试停止。
[0019]进一步需要说明的是,方法采用Pattern调用函数读取每个内存块中的格雷码信息。
[0020]进一步需要说明的是,步骤一中,按照128个bit作为一个内存块。
[0021]进一步需要说明的是,在第一格雷码排序队列中设置有多个测试数位,测试数位以十进制为排序队列计数规则,每个测试数位对应设置有一格雷码。
[0022]进一步需要说明的是,将多个内存块进行编码,并进行排序。
[0023]进一步需要说明的是,第二格雷码排序方式和第三格雷码排序方式分别是将第一格雷码排序方式进行重新排序。
[0024]进一步需要说明的是,第一格雷码排序队列中设置有测试数位大于内存块的数量。
[0025]本专利技术还提供一种服务器的压力测试系统,系统包括:内存容量分配模块、格雷码排序模块、格雷码分配模块、信息读取模块以及压力测试模块;
[0026]内存容量分配模块,用于将待测服务器的物理内存按照预设容量分配为多个内存块;
[0027]格雷码排序模块,用于设置有多个测试数位,将多个测试数位以预设的顺序进行排序形成第一格雷码排序队列;
[0028]格雷码分配模块,用于按照第一格雷码排序方式将格雷码信息依次写入到每个内存块中;
[0029]信息读取模块,用于依次读取每个内存块中的格雷码信息;
[0030]压力测试模块,用于对读取的内存块中的格雷码信息进行检测,判断是否按照第一格雷码排序排列;如果是则继续进行测试;
[0031]如果为否,则报错,测试停止。
[0032]从以上技术方案可以看出,本专利技术具有以下优点:
[0033]本专利技术基于格雷码利用内存内部调用函数定制相应的读写方式,将格雷码信息写入内存,再读取内存的格雷码信息,从而达到对内存老化测试的目的。
[0034]服务器的压力测试系统解决了进行内存压力测试时,电力能耗多,测试成本过高的问题。测试时长相比现有的方式,解决了单个测试时长过长,导致在老化时间中,扫描每个cell的次数过少,降低了内存测试实际覆盖率的问题。本专利技术可以覆盖内存全部储存位置进行测试,满足测试要求。
附图说明
[0035]为了更清楚地说明本专利技术的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0036]图1为服务器内存压力测试方法流程图;
[0037]图2本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务器内存压力测试方法,其特征在于,方法包括:步骤一、将待测服务器的物理内存按照预设容量分配为多个内存块;步骤二、响应于预设的第一格雷码排序方式,将第一格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;步骤三、依次读取每个内存块中的格雷码信息,检查是否按照第一格雷码排序排列;步骤四、如果为否,则报错,测试停止。2.根据权利要求1所述的服务器内存压力测试方法,其特征在于,如果为是,则响应于预设的第二格雷码排序方式,将第二格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;写入完成后,依次读取每个内存块中的格雷码信息,检查是否按照第二格雷码排序排列;如果为是,则响应于预设的第三格雷码排序方式,将第三格雷码排序方式所对应的格雷码信息依次写入到每个内存块中;写入完成后,依次读取每个内存块中的格雷码信息,检查是否按照第三格雷码排序排列;依次类推,直到达到预设循环次数,完成压力测试进程,并显示测试结果。3.根据权利要求2所述的服务器内存压力测试方法,其特征在于,方法中,每次检查是否按照格雷码排序排列过程中,如果为否,则报错,测试停止。4.根据权利要求1或2所述的服务器内存压力测试方法,其特征在于,方法中,采用Pattern调用函数读取每个内存块中的格雷码信息。5.根据权利要求1或2所述的服务器内存压力测试方法,其特征在于,方法中,步骤一中,按照128个bit作为一...

【专利技术属性】
技术研发人员:田周鹏
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1