SAS SSD 修整性能测试

此测试对串行连接 SCSI (SAS) 固态驱动器 (SSD) 的修整命令性能进行评估。

测试详细信息

   
规范
  • Device.Storage.Hd.Sas.ComplyWithIndustrySpec
平台
  • Windows 10,客户端版本 (x86)
  • Windows 10,客户端版本 (x64)
  • Windows Server 2016 (x64)
支持的版本
  • Windows 10
  • Windows 10 版本 1511
  • Windows 10 版本 1607
  • Windows 10 版本 1703
  • Windows 10 版本 1709
  • Windows 10 版本 1803
  • Windows 10 版本 1809
  • Windows 10 版本 1903
  • Windows 10 的下一次更新
预计运行时间(以分钟为单位) 180
类别 兼容性
超时(以分钟为单位) 10800
需要重启 false
需要特殊配置 false
类型 automatic

 

其他文档

此功能区域中的测试可能会有其他文档,包括先决条件、设置和故障排除信息,这些内容可在以下主题中找到:

运行测试

在运行测试之前,请按照测试要求(硬盘驱动器测试先决条件)中所述完成测试设置。

测试需要将 SAS SSD 设备连接到 SAS 控制器。 驱动器还必须满足以下要求:

  • 驱动器应为非启动驱动器。 测试具有破坏性。 将用正确的分区和格式化准备磁盘,以进行测试。

  • 驱动器必须支持修整命令。 标识设备数据 word 169 位 0 必须设置为 1(参阅 ACS-2 部分 7.18.7.71)。 该测试将使用 DATA SET MANAGEMENT 命令发送 Trim 命令。

  • 确保有单独的驱动器可以用作记录器驱动器。 测试将自动选取日志记录驱动器。 尽可能减少驱动器上发生徽标测试范围外的活动非常重要。 由于这是性能测试,因此范围外的活动可能会影响结果。

故障排除

有关 HLK 测试失败的常规故障排除,请参阅排查 Windows HLK 测试失败问题

有关故障排除信息,请参阅排查 Device.Storage 测试的问题

如果要检查 WTT 跟踪,请执行以下操作:

  • 查看运行修整性能测试的子作业结果。

  • 查看运行修整性能测试库的作业日志。

  • 打开日志文件 TrimPerf.wtl。

  • 检查可能解决问题的消息。

  • 复制 .wtl 日志文件。 这是 WTT 跟踪部分所述的 WTT 跟踪。

如果未找到指标,请尝试以下操作:

  • 启用 Storport ETW 跟踪

  • 请确保当前没有其他 Storport ETW 跟踪正在日志记录。 一次只能有一个 Storport ETW 跟踪处于活动状态。

如果收到错误消息“测试驱动器不支持修整”,请尝试以下选项:

  • 确保将 SAS SSD IDENTIFY DEVICE 数据字 169 位 0 设置为 1。

  • 尝试通过 DATA SET MANAGEMENT 发送修整命令。

  • 再次运行测试。

如果由于读取和写入最大延迟超过 500 毫秒而导致测试失败,请尝试以下解决方法:

  • 在不发送 Trim 命令的情况下检查 IO 延迟。 尝试将延迟降低至 500 毫秒以下。

  • 在发送 Trim 命令的情况下检查 IO 延迟。 尝试将延迟降低至 500 毫秒以下。

如果想要通过运行特定测试用例来调试失败,可以尝试以下命令行选项:

  • 用编号显示所有测试用例:TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType SasSsd /PrintTestCaseName

  • 按测试用例编号运行特定测试用例:TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType SasSsd /Precondition F /TestCase [TestCaseNumber]

如果想要通过运行特定纯修整方案来调试失败,可以尝试以下命令行选项:

  • 二进制文件具有单元测试选项:TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType SasSsd /Precondition F /UnitTest T /RangeCount [NumberOfRangesPerTrim] /SizeCount [SizeOfEachRange] /SizeUnit [Slab | Sector] /TrimCount [NumberOfTrims]

  • /RangeCount:每个修整命令的范围数

  • /SizeCount:/SizeUnit 中每个范围的大小

  • /SizeUnit:/SizeCount的粒度,可以是碎片(最佳非映射粒度)或扇区

  • /TrimCount:测试用例中发送的修整数。

如果想要更快地调试失败,请尝试通过添加 /Precondition F 参数来禁用预处理(将驱动器填满到 90%,时间较长),如下所示:

  • TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType SasSsd /Scenario Performance /DiskSize 0 /Cooldown 2 /Precondition F

更多信息

测试命令如下所示:

修整命令

  • 所有修整命令都应在 500 毫秒内完成。

IO 命令(同时修整发送)

  • 所有读取和写入命令都在 500 毫秒内完成。

  • 98.5% 的 I/O 命令在 100 毫秒内完成。

命令语法

命令 说明

TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType [DeviceType] /Scenario [Scenario] /DiskSize [DiskSize] /Cooldown [Cooldown]

运行测试。

 

文件列表

文件 位置

trimperf.exe

<[testbinroot]>\nttest\driverstest\storage\wdk\

Etwprocessor.dll

<[taefbinroot]>\

Wex.common.dll

<[taefbinroot]>\

Wex.communication.dll

<[taefbinroot]>\

 

参数

参数名称 参数说明
WDKDeviceID 要测试的设备的实例路径。
LLU_NetAccessOnly 用于访问测试文件共享的用户帐户。
LLU_LclAdminUsr 用于运行测试的用户帐户。
Destructive (0,1) 0=被动,1=破坏性
StorageDriveNumber 存储驱动器号