固态硬盘认证和性能测试方法

固态硬盘认证和性能测试方法

Link Protocol Testing – 针对设备进行链路层协议测试

Transaction Protocol Testing – 针对设备进行传输层协议测试

Platform BIOS Testing – 针对平台BIOS进行测试,能否识别并正确配置设备

通过PCIe SIG的测试同样可以加入Integrators List。

官方网站上提供Test Guide下载,包括测试描述,规格,流程以及相关的工具

https://pcisig.com/developers/compliance-program

UNH IOL NVMe Test

UNH-IOL全称是 University of New Hampshire InterOperability Laboratory,是业界著名的公开实验室,提供多个领域的测试服务。

看一下图感受下这个实验室涉及的领域:

图2 IOL交互性测试实验室涉及领域

UNH-IOL定义了NVMe Test Suites, 包括:

· NVMe Conformance Test Suite

· NVMe Interoperability Test Suite

Test Suite会跟着NVMe Spec更新持续更新,厂商可以自行下载使用

链接:https://www.iol.unh.edu/testing/storage/nvme/test-suites

UNH-IOL贴心的提供了NVMe 的测试工具

· IOL INTREACT PC EDITION Software: 基于UNH-IOL自己的NVMe Conformance Test Suite开源项目的工具,图形界面上手容易。

· IOL INTERACT Teledyne-LeCroy EDITION Software:高级版本,必须配合LeCroy的PCIe Exerciser和Analyzer使用,能够自动跑完NVMe Conformance Test Suite里面要求的测试,而且能够自动抓取trace以供分析。

链接:https://www.iol.unh.edu/solutions/test-tools/interact

免费是为了更好的收费,UNH-IOL的测试服务,完成下列指定项目,加入NVMe Integrators List:

· Conformance testing using IOL INTREACT PC EDITION Software

· Conformance testing using IOL INTERACT Teledyne-LeCroy EDITION Software

· Interoperability testing using VDbench software

链接:https://www.iol.unh.edu/testing/storage/nvme

SSD 性能测试

SNIA给Client SSD与Enterprise SSD都制定了Performance test (性能测试)的规范,可以到其网站 www.snia.org 下载。

要进行SSD的Performance Test,首先要理解几个关键概念。

FOB:Fresh Out of Box, 指的是刚开封全新的盘,此时SSD的性能类似于悟饭同学的愤怒形态,战斗力爆表但不持久,并不是这块盘在未来正常使用过程中的真实能力。

Transition:经过一段的读写,战斗力逐步降低,逐步趋向于稳定状态,这个过程称为转换状态。

Steady State: 战斗力数值稳定在一个区间,Performance相关的数据,例如Throughput(吞吐量),IOPS,Latency(延迟)都必须在Steady State下获取,据此判断到底是超级赛亚人,还是战五渣。

看看图,不同的盘Performance数据有所不同,但趋势一样:爆表à下降à稳定。

图1-3 SSD性能变化趋势

Steady Stage的官方计算方法 (x为测量窗口内某个时刻的Performance值):

鄙人数学是体育老师教的,把原文贴在这里,供读者参考。

Slop(x)is less than 10%: Max(x)-Min(x), where Max(x) and Min(x) are the maximum and minimum values on the best linear curve fit of the x-values within the measure windows, is within 10% of Ave(x) value within the measurement window.

接下来,另外几个概念:

Purge (擦除): 每次进行Performance test前都必须进行Purge动作,目的是消除测试前的其他操作(读写,其他测试)带来的影响(比如,一段小BS的随机读写之后立即进行大BS的顺序读写,这时候大BS的数据会比较差),从而保证每次测试时盘都是从一个已知的,相同的状态下开始。简单来说,可以把Purge理解为:让盘回到FOB状态。

实现的Purge方法可以是:

· ATA:Security Erase, SANTIZIE Device (Block Erase Ext)

· SCSI:FORMAT UNIT

· Vendor specific method (厂商的工具)

Precondition:通过对盘进行IO使其逐步进入Stead State的过程,分两步进行.

· Workload Independent Preconditioning (WIPC):第一步,读写时不使用测试的Workload

· Workload Dependent Preconditioning (WDPC): 第二步,读写时使用测试的Workload

Active Range: 测试过程中对盘上LBA发送IO命令的范围。

图1-4 SSD性能测试有效测试范围

Data pattern: Performance测试必须使用random data pattern (指向闪存中写入的数据)。

基本测试流程

1.Purge the device – 擦除SSD

2.Run Workload Independent Precondition – 比如用128K的BS顺序把盘写两遍

3.Run Test (包括Workload Dependent Precondition)-- 设置好相关参数(OIO/Thread, Thread count, Data Pattern等)开始进行Workload Dependent Precondition,最多跑25个round

4.假设25个round以内达到了Steady Status,例如第x次。那么:

•Round 1:x 称为Steady Status收敛区间

•Round (x-4):4 称为测量区间(Measure Window)

如果25个round还没有达到Steady Status, 可以选择:

•继续步骤3直到达到Steady Status并记录x

•直接取x=25

注意事项: 步骤2到步骤3之间不可以中断,停顿。

Performance测试项目包括,IOPS测试,Throughput 测试,Latency测试和饱和写测试(可选)。

以IOPS测试为例说明一下步骤:

1.Purge SSD

2.Workload Independent Preconditioning -- 用128K的BS把SSD写两遍

3.Workload Dependent Preconditioning and Test

•用RW Mix(100/0, 95/5, 65/35, 50/50, 35/65, 5/95,0/100), BS(1024K, 128K, 64K, 32K, 16K, 8K, 4K, 512B)组合进行Random IO

•每个Round包括7*8=56个组合,每个组合跑一分钟并记录结果

•以R/W Mix=0/100, BS=4K这个组合的IOPS结果判断是否到达Steady Status (参考前文Steady Status判断标准)

•在测量区间(Measure Window)记录相关数据

Throughput测试和Latency测试的步骤大致相同,需要注意的是:

•Throughput测试:只有两个组合,BS=1024K Sequence Write和BS=1024K Sequence Read,用Sequence Write的值来判断Steady Status

•Latency测试:只使用3种RW Mix组合(100/0,65/35,0/100)和3种BS(8K,4K, 512Byte),另外需要把队列数和线程数都设为1

饱和写测试Write Saturation (WSAT) test,对SSD进行长时间的Random 4K写操作,评测其经过长期写入以后的Performance表现。

关于饱和写测试,国外知名网站TechReport.com的弟兄们曾经花了18个月,拿了6块不同厂商的SSD进行了惨无人道的,超过2PB的连续写入操作。

原文链接:http://techreport.com/review/24841/introducing-the-ssd-endurance-experiment

中文链接(蛋蛋版):http://www.ssdfans.com/?p=672

Performance测试项目配置总结

表1SSD性能测试配置

测试项目

读写比例

数据块大小

随机/顺序

Benchmark

IOPS

100/0~0/100

512B~1M

随机

WriteBS=4K

吞吐量

100/00/100

1M

顺序

WriteBS=1M

时延

100/0, 65/5, 0/100

512M, 4K, 8K

写饱和

0/100

4K

随机

N/A

本文节选自《深入浅出SSD:固态存储核心技术、原理与实战》一书

www.ssdfans.com

返回搜狐,查看更多

相关推荐

手机电池查看全攻略:从设置、软件到外部观察与保养建议
一分钟秒懂!微信牛房卡如何购买/鸿运大厅正版房卡在哪买”!获取房卡教程-知乎
FGO八周年福袋選哪個
365BET导航

FGO八周年福袋選哪個

📅 07-21 👁️ 9053
王者荣耀新英雄盖聂 剑圣盖聂英雄技能解读
365bet投注盘口

王者荣耀新英雄盖聂 剑圣盖聂英雄技能解读

📅 07-13 👁️ 8717
历届世界杯决赛罚牌情况
365BET导航

历届世界杯决赛罚牌情况

📅 07-21 👁️ 7373
法国队公布世界杯号码分配 10号球衣归属姆巴佩
365bet投注盘口

法国队公布世界杯号码分配 10号球衣归属姆巴佩

📅 07-09 👁️ 884