UAS Stress Reset logo test
This test verifies compliance with the USB UASP version 1.04 specification, the SCSI SPC 4 specification, and SBC3 for USB UASPStorage devices.
Test details
Associated requirements |
Device.Storage.Hd.Uas.Compliance |
Platforms |
Windows RT (ARM-based) Windows 8 (x64) Windows 8 (x86) Windows Server 2012 (x64) Windows RT 8.1 Windows 8.1 x64 Windows 8.1 x86 Windows Server 2012 R2 |
Expected run time |
~50 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.
Troubleshooting
For troubleshooting information, see Troubleshooting Device.Storage Testing.
We require devices to support a minimum of 16 streams on Data-out, Data-in, and Status pipes. During Stream configuration discovery scenario, if more than 16 streams are found to be configured, the same number of streams is tested.
More information
Stream utilization
Windows expects the device to support 16 streams. The test blasts IO to the device and measures the amount of streams used on different stream pipes. At any single point of time, 16 streams should be used.
For stream utilization for writes, Data-Out and Status pipe should use 16 streams.
For stream utilization for reads, Data-In and Status pipe should use 16 streams.
Reset detection for different IO workloads
Different types of IO workloads are showed on the drive. The test detects if are LUN/Target/Bus resets. LUN reset is new to UAS devices. This becomes costly in the event a reset needs to be performed. This is because a LUN reset to the device would timd out, after which a target reset would be sent to the device. The time lapse causes the drive to become unusable. Scenarios include:
Synchronous workloads with varying transfer sizes for longer duration
Asynchronous workloads with varying number of outstanding packets for shorter duration
Asynchronous workloads with maximum number of outstanding packets and maximum transfer size for longer duration
Parameters
Parameter | Description |
---|---|
Version |
The USB version. The values can be either 2 or 3. |
StorageDriveLetter |
The drive letter of the device. |
StorageDriveNumber |
The driver number of the device. |
QueryUASMaxTransferSize |
The maximum transfer size supported by the device (in bytes). |
Streams |
The minimum number of streams supported by the device. Default value: 16 |
UAS_Adapter_ID |
The adapter device instance ID. |
Command syntax
Command option | Description |
---|---|
powershell .\StressReset.ps1 /scenario “uas” /version [Version] /driveletter [StorageDriveLetter] /drivenumber [StorageDriveNumber] /iosize [QueryUASMaxTransferSize] /streams [Streams] /pnpDeviceID “[UAS_Adapter_ID]” |
Runs the test. |
Note
For command-line help for this test binary, type /h.
File list
File | Location |
---|---|
csvresultparser.dll |
<[testbinroot]>\nttest\basetest\core_file_services\performance\diskspd\ |
diskspd.exe |
<[testbinroot]>\nttest\basetest\core_file_services\performance\diskspd\ |
iorequestgenerator.dll |
<[testbinroot]>\nttest\basetest\core_file_services\performance\diskspd\ |
resultparser.dll |
<[testbinroot]>\nttest\basetest\core_file_services\performance\diskspd\ |
StressReset.ps1 |
<[testbinroot]>\nttest\DriversTest\storage\wdk\ |