在众多固态硬盘测试工具当中,IOMeter在玩家群体中的知名度并不算很高,但能够满足专业SSD测试中你所需要的一切功能。上一期内容已经为大家介绍了IOMeter的界面,并用它测试了固态硬盘的顺序读取,今天我们来看如何用IOMeter进行随机存取测试。
固态硬盘厂商标称的顺序读写和随机读写IOPS,大都是将IOMeter作为指定测试工具。
IOPS随机读写性能测试:
通常来说,固态硬盘厂商标称的IOPS|每秒输出输出次数)是理想状态下4K随机读写峰值,即队列深度和测试线程尽可能大,但又不会引起副作用的设定。通常测试设置可以像下面这样进行:4KB区块、100%随机、100%读取、4KB对齐。
测试范围:8GB LBA。数据模型:伪随机|使用Full random完全随机经常引发错误,而且伪随机对于SSD主控来说已经是不可压缩的了)。队列深度(Outstanding I/Os)设置为32。虽然NVMe协议允许65535队列长度,但消费级SSD的主控通常支持不了那么高。
然后我们将上面设置好的这个Worker|测试线程)复制一下,一共复制出8个Worker,也就是同时使用8个测试线程,每个测试线程都执行QD8队列长度的4KB随机读取,以此来充分挖掘NVMe固态硬盘的随机存取IOPS潜能。
点击绿色旗帜按钮开始测试:测试结果中我们关注的是Total I/Os per second,即每秒的读写IO总数,IOPS。IOMeter生成的记录文件可以通过Excel打开并根据需要制成表格。
点击Total I/Os per Second右侧的>按钮,可以以图形化方式展示IOPS数值。下图中测得的随机读取IOPS为685412,优于厂商标称值640000 IOPS。
随机读写QD队列深度测试:
前面的测试只测量了4KB一种读写区块的随机读写能力,而且是基于高QD队列深度下的峰值表现。电脑在实际使用中硬盘需要面对各种不同区块大小、各种队列深度的使用条件。所以接下来我们将通过IOMeter测试不同队列深度下不同区块的随机读取|RR)和随机写(RW)性能。
在设置好测试项目之后,切换到Test Setup选项卡,于Cycling Option循环选项中选择Cycle #Outstanding I/Os –run step outstanding I/Os on all disks at a time.测试队列深度从1开始,到128结束,每次循环结束后测试队列深度数值翻倍:
测试完成后使用Excel打开IOMeter生成的测试结果文件,可以利用它来制作各种数据图表。
下图是制作好的NVMe SSD不同区块的随机读写QD趋势图表,其中展示了SSD随QD队列深度增长的良好性能成长性。
以上就是固态硬盘评测中常用的IOMeter测试项目。此外IOMeter还可用作填盘测试工具,用于在SSD内生成指定大小的不可压缩数据文件,然后通过其他测试软件评估SSD在不同盘内空间占用率下是否存在掉速。