Thin Provisioning Performance Test - NTFS (LOGO)

This automated test evaluates the NTFS performance of the Unmap command for thin provisioning LUNs.

Test details

Associated requirements

Device.Storage.Hd.ThinProvisioning.BasicFunction

See the device hardware requirements.

Platforms

Windows Server 2012 (x64) Windows Server 2012 R2

Expected run time

~180 minutes

Categories

Certification Reliability

Type

Automated

 

Running the test

Before you run the test, complete the test setup as described in the test requirements: Hard Disk Drive Testing Prerequisites.

The test requires a thin provisioned LUN device setup on the client machine. The LUN must satisfy the following requirements:

  • The drive should be a non-boot drive. The test is destructive. It will prepare the disk with correct partition and formatting for the test.

  • The drive must support UNMAP (10) command. The VPD B0h page’s LBPU bit is set to 1. The test will send down Unmap commands by using the DATA SET MANAGEMENT’s Trim command.

  • Make sure that there is a separate drive available to be used as a logger drive. The test will automatically pick the logging drive. It is important to minimize the amount of activity that occurs on the drive (outside of the logo test). Because this is a performance test, outside activity can affect the results.

Troubleshooting

For troubleshooting information, see Troubleshooting Device.Storage Testing.

Error Description/Workaround

Test failed and went to check WTT Trace

How to check log files upon test failure:

  • View child job results of Run Trim Performance Test.

  • View job logs of Run Trim Performance Test – Library.

  • Open the log file TrimPerf.wtl and check for messages that might describe/resolve the problem.

  • Copy the .wtl log file. This is the WTT trace that is described in the WTT Trace section.

No metrics found

The test depends on Storport ETW tracing being enabled to get the command completion metrics.

Make sure that no other Storport ETW traces are currently logging. Only one Storport ETW trace can be active at a time.

Test failed with a “write protected” error

  • Make sure that the thin provisioned LUN is not write-protected.

  • Make sure that the thin provisioned LUN is always online while the test is running. “Write protected” usually means the LUN goes offline.

Test warns: “The test drive does not support trim”.

  • Check the thin provisioned LUN to make sure VPD B0h page’s LBPU bit is set to one (or run Thin Provisioning SCSI Compliance Test (LOGO) to verify the compliance of the LUN).

  • Try to send an Unmap command by using DATA SET MANAGEMENT’s Trim command.

  • Run the test again.

Test warns: “Read/write max latency exceeds logo requirement of 500.0 ms”.

The test sends IO together with Unmap when it measures the max IO latency. The virtual address of IO and Unmap are not interleaving.

 

More information

Parameters

Parameter Description

StorageDriveNumber

The drive number of the thin provisioned LUN which test is to run on. Example: 2.

LogDriveLetter

The drive letter of the disk on which to keep logs. Example: E:.

DeviceType

The type of the device under test.

Default value: StorEnterprise

Scenario

The scenario of the test (Performance or Compliance).

Default value: Performance

DiskSize

The part of the disk on which to run the test. If this parameter is 0, then the test will run on the entire disk.

Default value: 0

Cooldown

The cool down time in seconds between test cases

Default value: 2

 

Test metrics

Command Test metrics

Unmap command

All Unmap commands shall be completed in less than 500ms.

IO command(with Unmap sending at the same time)

  • All Read/Write commands shall be completed in less than 500ms.

  • 98.5% of IO commands shall be completed in less than 100ms.

 

Currently this test only gives warnings if the thin provisioned LUN under test fails to meet the bar described in the preceding table. The test never fails on this, but you must make sure that the LUN supports UNMAP (10) command, and that the LUN never goes offline when the test is running.

To manually reproduce the test

  1. Open the Registry Editor and follow the path: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\Disk&Ven_[name of drive under test]\[device instance path of the thin provisioned LUN]\Device Parameters\Storport

  2. Right click Storport, click New, and click DWORD (32-bit) Value.

  3. Name the key EnableLogoETW, and set the value to 1.

  4. Replug the drive under test or reboot the machine to enable the registry key.

  5. Copy TrimPerf.exe, EtwProcessor.dll, Wex.Common.dll, and Wex.Communication.dll files to the local drive.

  6. Run the test on a command line (see Command Syntax).

Command syntax

Command option Description

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

Runs the test.

 

Note  

For command line help for this test binary, type /h.

 

File list

File Location

TrimPerf.exe

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

EtwProcessor.dll

<[WHCK\TAEFBinRoot]>\

Wex.Common.dll

<[WHCK\TAEFBinRoot]>\

Wex.Communication.dll

<[WHCK\TAEFBinRoot]>\

 

 

 

Send comments about this topic to Microsoft