TDR2 - Long Running Graphics Packet Expect TDR (PoliceDdi)
TDR2 - Long Running Graphics Packet Expect TDR (PoliceDdi, NonInteractive)
TDR2 - Multiple TDR Compute Lockout and Recovery Test (Enumerated Adapter)
TDR2 - Multiple TDR Compute Lockout and Recovery Test (NULL Adapter)
TDR2 - Multiple TDR Graphics Lockout and Recovery Test (Enumerated Adapter)
TDR2 - Multiple TDR Graphics Lockout and Recovery Test (NULL Adapter)
TDR2 - Scheduler WLK Validate WDDM1.2 drivers say they support per engine resets
TDR2 - Standard Two Device Test Graphics (Uninterrupted when another app TDRs)
Test details
Specifications
Device.Graphics.WDDM12.Render.TDRResiliency
Platforms
Windows 10, client editions (x86)
Windows 10, client editions (x64)
Windows Server 2016 (x64)
Windows 10, client editions (Arm64)
Supported Releases
Windows 10
Windows 10, version 1511
Windows 10, version 1607
Windows 10, version 1703
Windows 10, version 1709
Windows 10, version 1803
Windows 10, version 1809
Windows 10, version 1903
Next update to Windows 10
Expected run time (in minutes)
2
Category
Compatibility
Timeout (in minutes)
120
Requires reboot
false
Requires special configuration
false
Type
automatic
Additional documentation
Tests in this feature area might have additional documentation, including prerequisites, setup, and troubleshooting information, that can be found in the following topic(s):
The TDR2 test validates that the video driver functions correctly when GPU workloads, as direct memory access (DMA) packets, are processed for longer periods than expected or wanted.
Terms that you'll find in the titles of the jobs for this test include:
Interactive (standard behavior). The application doesn't schedule larger workloads. TDRs (at 2 seconds) are expected if the workload is too big.
NonInteractive (new functionality). The application may schedule workloads that take longer than 2 seconds to finish. A typical scenario here is a Compute application that will run a large calculation in the background. With NonInteractive workloads, the scheduler will not interrupt its processing if no other GPU work must be performed at the same time.
PoliceDdi. When resets occur, the test jobs track all device driver interface (DDI) calls to measure a reasonable responsiveness from the driver and hardware. Generally, DDI calls that take over a quarter second are flagged as excessive.
These test jobs also exercise engine-reset functionality where appropriate. The older TDR functionality performed an adapter-wide reset, whereas the new TDR functionality attempts an engine reset before an adapter-wide reset.
The testing process requires running multiple binaries at the same time. One or more applications generate workloads while another application monitors the effect that these workloads have on the system. The command lines that the test jobs use to start the applications allow for cross-process communication, so running the test jobs in scripts is the preferred technique.
Note
You must run all test jobs by using administrator credentials. All the test binaries generate log files that shouldn't contain test failures.
Command syntax
TDR2 test jobs are divided into these areas:
Long Running Graphics Packet test jobs
Long Running Compute Packets test jobs
Multiple TDR Lockout and Recovery test jobs
Uninterrupted Application test job
Large Payload Penalty test jobs
Miscellaneous test job
Scripts control actions that occur during individual test jobs. The following tables list these scripts. If you're manually reproducing the test jobs, you must run these scripts.
Note
For test combination command lines, see individual script files.
The following Long Running Graphics Packet test jobs run test situations that should and shouldn't cause a TDR, based on whether the test acts like an interactive application. These test jobs also make sure that DDI calls respond in a reasonable amount of time.
Test job
Command script
TDR2 - Long Running Graphics Packet Expect NO TDR (Interactive - win7)
TDR_Long_Graphics_5.cmd
TDR2 - Long Running Graphics Packet Expect NO TDR (Interactive - win7, PoliceDdi)
TDR2 - Long Running Graphics Packet Expect TDR (PoliceDdi)
TDR_Long_Graphics_3.cmd
TDR2 - Long Running Graphics Packet Expect TDR (PoliceDdi, NonInteractive)
TDR_Long_Graphics_4.cmd
The following Long Running Compute Packet test jobs run test situations that should and shouldn't cause a TDR, based on whether the test acts like an interactive application. These test jobs also validate that DDI calls respond in a reasonable amount of time.
TDR2 - Long Running Compute Packet Expect TDR (PoliceDdi)
TDR_Long_Compute_3.cmd
TDR2 - Long Running Compute Packet Expect TDR (PoliceDdi, NonInteractive)
TDR_Long_Compute_4.cmd
TDR2 - Long Running Compute Packet Expect NO TDR (Interactive - win7, PoliceDdi)
TDR_Long_Compute_5.cmd
TDR2 - Long Running Compute Packet Expect NO TDR (Interactive - win7)
TDR_Long_Compute_6.cmd
In the following Multiple TDR Lockout and Recovery test jobs, the application runs workloads that cause a TDR. The test jobs then validate that after 6 TDRs in a particular period, the application can no longer open the hardware device.
Test job
Command script
TDR2 - Multiple TDR Compute Lockout and Recovery Test (Enumerated Adapter)
TDR_Multiple_4.cmd
TDR2 - Multiple TDR Compute Lockout and Recovery Test (NULL Adapter)
TDR_Multiple_3.cmd
TDR2 - Multiple TDR Graphics Lockout and Recovery Test (Enumerated Adapter)
TDR_Multiple_2.cmd
TDR2 - Multiple TDR Graphics Lockout and Recovery Test (NULL Adapter)
TDR_Multiple_1.cmd
The following Uninterrupted Application test job makes sure that when an engine reset occurs, an application that currently has the device open continues to function without a device lost.
Test job
Command script
TDR2 - Standard Two Device Test Graphics (Uninterrupted when another app TDRs)
TDR_Standard_1.cmd
The following Large Payload Penalty test jobs run workloads that are just under the TDR threshold. The test jobs validate that the scheduler correctly delays the application.
Test job
Command script
TDR2 - Large Payload Penalty Compute Application Test
TDR_Large_Payload_Compute.cmd
TDR2 - Large Payload Penalty Graphics Application Test
TDR_Large_Payload_Graphics.cmd
The following Miscellaneous test job validates that the driver sets appropriate flags.
Test job
Command script
TDR2 - Scheduler WLK Validate WDDM1.2 drivers say they support per engine resets
Azure HPC is a purpose-built cloud capability for HPC & AI workload, using leading-edge processors and HPC-class InfiniBand interconnect, to deliver the best application performance, scalability, and value. Azure HPC enables users to unlock innovation, productivity, and business agility, through a highly available range of HPC & AI technologies that can be dynamically allocated as your business and technical needs change. This learning path is a series of modules that help you get started on Azure HPC - you