一种测试SSD一致性的方法与流程

文档序号:13282003阅读:2271来源:国知局

本发明涉及服务器硬盘测试领域,具体涉及一种测试ssd一致性的方法。该方法是先在具体测试每个模块前自动进行预处理动作,然后对需要测试的盘进行读写测试,分析设定时间段内带宽或者iops的一致性,最终得到测试结果。使用本发明所述的方法可以快速满足操作需求,操作简单,实用性较强,能够节省人力,会更效率的满足测试需求,满足产品的多元化要求。



背景技术:

随着互联网不断发展,服务器市场已经囊括各个领域,用户对存储的需求越来越大,对服务器硬盘要求也越来越高。用户从一开始关注服务器硬盘性能到现在更多地关注性能在时间段内的变化情况。作为众多服务器产品提供商之一,如何能满足用户多样化的需求,确保各种系统的稳定、可靠是我们必须面临和考虑的问题。因此对于硬盘在我们服务器上使用,必须进行全面的功能性、稳定性及性能等的测试和验证,从而确保该产品的质量。

固态硬盘(solidstatedrives),简称固盘,固态硬盘(solidstatedrive)用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(flash芯片、dram芯片)组成。固态硬盘采用闪存作为存储介质,读取速度相对机械硬盘更快。固态硬盘不用磁头,寻道时间几乎为0。持续写入的速度非常惊人。固态硬盘的快绝不仅仅体现在持续读写上,随机读写速度也极快。固态硬盘没有机械马达和风扇,工作时噪音值为0分贝。基于闪存的固态硬盘在工作状态下能耗和发热量较低。内部不存在任何机械活动部件,不会发生机械故障,也不怕碰撞、冲击、振动。低功耗、无噪音、抗震动、低热量、体积小、工作温度范围大。

用户对ssd的各种要求越来越高,这主要表现在对硬盘的性能要求方面。无论是ssd刚引入的选型测试还是现场对硬盘的测试,硬盘的性能都是用户最关注的一点,性能波动一致性的变化是测试的重要一环,因为硬盘性能的波动情况会直接影响用户数据读取、写入速度,性能抖动太大会直接影响用户的实际使用。因此对ssd的一致性测试无论是引入测试还是出厂前测试都是必不可少的。另外,在处理用户性能问题时也可以通过观察读写速率和iops在单位时间内的变化情况来判断问题出现的地方,及时定位故障位置。故测试ssd一致性在选型测试和问题处理方面都是必不可少的一环。

但是,目前的情况是,厂家在推出ssd时,一般只会测试ssd在sata接口的性能而且每个blocksize的测试时间较多,一般为十分钟,是取十分钟的平均值给各家参考,用户无法看到超过十分钟或者更长时间的性能变化。而用户在实际使用时会不断的进行io吞吐,如果只提供一个短时间段内的均值,无法看到整个时间段内的性能变化情况还是远远不够的。因为有可能在某个时间段内,硬盘的性能会很低,但是从整个时间段的平均性能上看是还是可以的,这样就会漏掉这个性能很低的点,如果用户正是在这个时间点进行重要文件的io吞吐,写速率突然降低,对用户造成有可能造成不可预料的损失。

针对上述问题,本申请发明一种测试ssd一致性的方法。该方法可以对测试时间进行设定,能够对选型测试、兼容性测试、产线出厂前的测试进行全方位覆盖,同时对处理用户发生的问题也可以及时定位,有助于用户问题的处理。该方法简单易行,容易使用,无论是对测试人员、还是产线生产人员都可以做到更全面的测试。



技术实现要素:

本申请发明一种测试ssd一致性的方法,具体实现方式是采用fio工具,先在具体测试每个模块前自动进行预处理动作,此次预处理不是根据设定的时间进行预处理而是利用loop来打圈进行预处理,这样保证了预处理动作一定是让ssd跑满一遍,因为常用的设定时间的测试法并不是十分精确,ssd中一些模块可能测试不到,无法确定ssd已经进入稳态。通过loop可以保证ssd在跑完两圈后一定进入了一个稳态,保证了顺序读写、随机测试的精确性。同时,该测试方法中每个模块的测试和预处理都是一个独立的部分,是使用ssdtestnew.sh链接起来的,这样保证了各个测试块都是独立的,可以根据需求修改任意模块的线程或者队列深度而不影响其他模块的运行,在验证一致性时也可以做到变量唯一,大大增加了测试的灵活度。待测试结束后,将测试得到的log数据进行分析,通过使用excle表或者其他手段,查看硬盘性能的一致性,如果发现存在问题,可以及时处理。

具体地,本申请请求保护一种测试ssd一致性的方法,其特征在于,该方法具体包括如下步骤:

顺序读写硬盘两遍;

顺序写硬盘测试预定时间;

顺序读硬盘测试预定时间;

随机读写硬盘两遍;

随机写硬盘测试预定时间;

随机读硬盘测试预定时间;

对生成的log文件进行一致性分析。

如上所述的测试ssd一致性的方法,其特征还在于,测试的预定时间是2个小时。

如上所述的测试ssd一致性的方法,其特征还在于,顺序写测试、顺序读测试、随机写测试和随机读测试分别生成一个log文件。

如上所述的测试ssd一致性的方法,其特征还在于,对生成的log文件进行一致性分析具体包括分析设定时间段内带宽或者iops的一致性。

如上所述的测试ssd一致性的方法,其特征还在于,对生成的log文件进行一致性分析可以使用excle表。

附图说明

图1、本发明所述测试ssd一致性的流程示意图

具体实施方式

下面将结合附图1对本发明所述的方法做进一步地详细描述。

在具体测试每个模块前先自动进行预处理:

1、顺序读写预处理两遍;

2、顺序写测试预定时间,比如2个小时;

3、顺序读测试预定时间,比如2个小时;

4、随机读写预处理两遍;

5、随机写测试预定时间,比如2个小时;

6、随机读测试预定时间,比如2个小时。

具体实施例是在linux64位系统下安装fio-2.1.10工具,make&makeinstall安装。下面以intels35201.2tssd为例,实施例中具体指令如下:

查看硬盘是否被系统识别到,一般sda盘为系统盘,具体命令为:fdisk–l

如果要测试的盘是/dev/sdb,则在运行程序中将硬盘名字filename=/dev/sda改为要测试的盘,同时把bs=2m改为要测试的blocksize大小。

运行上述修改过的新的运行程序进行测试;

测试结束后,会生成4个log文件;

根据log文件中的内容,分别分析设定时间段内带宽或者iops的一致性,最终得到测试结果。

如果测试结果的一致性分析不符合要求,则可以及时定位查询,进行问题处理。

分析时间段内带宽或者iops的一致性可以使用excle表将数据导出形成表格,直观分析。

显而易见地,上面所示的仅仅是本发明的一个具体实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据该具体实施例获得其他的技术方案,都属于本发明保护的范围。

此方法是利用运行预先处理读写以及规定时间的读写测试,将测试后的log数据进行分析,通过使用excle表或者其他手段,查看硬盘性能的一致性,如果发现存在问题,可以及时处理。该方法可以快速满足操作需求,操作简单,实用性较强,能够节省人力,会更效率的满足测试需求,可以满足产品的多元化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1