What is ACPI Stress? And How Do I Use It?

Summary

ACPI Stress is a suite of stress tests that are designed to exercise each possible sleep state the system supports and each sleep state individual devices support.  Before and after each sleep cycle the devices in the system are tested for functionality through Win32 interfaces and also through standard methods like accessing the disk or pinging various machines on the network.  During this testing if a device node is found to be having a problem or if at some point something hangs a particular test due to the device not powered anymore or the device just stops working then ACPI Stress can break into the attached kernel debugger so the issue can then be debugged.

Note: ACPI Stress works only with Windows 2000 and Windows XP.

Using ACPI Stress

          There are two methods to launching PMTE.  The first method is by using the batch file called pmteauto.bat and the second method is to manually launch pmte.exe.

1.  Using the batch file called "pmteauto.bat"

The first method is designed to automate the launching of PMTE where it will test every device on the system will cycling through the support sleeps states.  After it has tested every device and every supported sleep state once, it then will repeat this 99 more times.  Once that is completed then execute pmteauto.bat which will kick off PMTE to automatically test every device in your system through every sleep state that is reported as being supported.

   

2.  Manually launching pmte.exe 

The second method is to allow you to have full control over how PMTE executes.  To launch PMTE execute pmte.exe in the %ddkroot%\tools\pmte folder.  At this point you should be presented with a dialog box.  In this dialog box you will be presented with three tabs labeled “Device to Test”, “Script Run” and “Advanced”.

In the “Device to Test” tab all of the device that are to be tested is selected.  If you don’t want to run this test against a specific device then deselect the device.

In the “Script Run” tab you can select the scripts that are available to use.  You can then set how long you want run PMTE by specifying how longs in days, hours, and minutes or by how many days and until which time or by how many cycles to cycle through.  Here you can also specify which sleep states you do not want to test perhaps to knowing about some specific bug that exists at a particular sleep state. 

Finally in the “Advanced” tab you can modify several different types of settings.  You can have the hard disk spin down after x number of minutes.  You can instruct PMTE to use the reset option after hibernate to help automate hibernate testing on machines that don’t support an RTC wake from S4.  You can have PMTE ignore any reported RTC capabilities.  You can also specify which network share to test the network I/O against in case you want to make sure it can reach a share that exists.  If a network share is not specified then a “net view” is done and any systems found are pinged to test network functionality found.  And finally on Windows 2000 you can have control what PMTE will do when a test instance hangs.  You can have it break into the debugger, or terminate the test process or just ignore that test.

Once you have configured PMTE to run the way you want it to run just click on ok and it will start up with the parameters you provided it.

Feedback

We welcome your comments, problem reports and wish-list requests. Please submit them by pointing your Internet browser to http://www.microsoft.com/ddk.

© Microsoft Corporation 2000