Subscribe to Windows IT Pro
July 28, 2008 12:00 AM

3 Steps to Troubleshooting Device Drivers

How to recognize, diagnose, and solve DPC problems
Windows IT Pro
InstantDoc ID #99312
Rating: (4)

The Kernel Profiling Tool has many arguments you can use, but for our purposes, you can run it without any arguments, with the command

kernrate
After running this command, you first receive output like that in Figure 4. Wait for about 30 seconds or so, then press Ctrl+C. While the Kernel Profiling Tool runs, keep an eye on DPC activity in Process Explorer or Performance Monitor to ensure the CPU usage remains consistently high during the sample.

Figure 5 shows an excerpt from the second part of the sample output. As you can see in the “Results for Kernel Mode” section, the problematic driver is intelppm, the Intel processor driver that’s part of the OS load. This driver throttles the CPU in order to conserve power consumption to extend battery life. The Intel processor driver probably wasn’t the cause of the problem; instead, the problem was likely due an interoperability issue with this driver and other hardware or drivers installed on my system. Regardless, it’s not required on a nonportable computer where battery life is of no concern.

3. How to Solve the Problem
The options for solving a DPC problem are to reinstall, update, or disable the driver that’s causing the problem. Which option you choose depends on the driver. For example, you can’t disable a driver that your system needs or update a driver when no updates exist. In my case, because the Intel processor driver isn’t a required driver for my system, I decided to disable it.

There are several ways you can disable drivers, including through the registry, Device Manager, and Recovery Console (RC). I opted to disable the Intel processor driver through the registry. If you’re interested in using RC or Device Manager to disable a driver, see the articles referenced in the “Learning Path.”

The registry data for the Intel processor driver is in the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Services\intelppm subkey. To disable this driver, I changed the Start entry from a value of 1 to a value of 4. Table 1 shows the Start values you can use for subkeys under the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet Services key. For more information about how to read and change entries in these subkeys, see the Microsoft article “CurrentControlSet\Services Subkey Entries” (support.microsoft.com/kb/ 103000).

As Microsoft continually reminds us, it’s important that you understand how to restore the registry before you edit it. It’s also important to reboot before and after editing the registry. Rebooting before a change is important to ensure a clean Last Known Good Configuration in case you need to restore the registry. (The Last Known Good Configuration includes everything under CurrentControlSet key and is updated after a successful logon.) Rebooting after a change is necessary for the change to take effect.

3 Simple Steps Is All It Takes
If your applications are loading slowly or don’t load at all, the culprit might be a device driver and the DPCs it makes. By using tools such as Windows Task Manager, Performance Monitor, Process Explorer, the Kernel Profiling Tool, and the registry, you can quickly recognize, diagnose, and solve driver performance problems.

Related Content:

ARTICLE TOOLS

Comments
  • ALFRED
    4 years ago
    Sep 25, 2008

    I found this article great. I have already used its infomration just to have a look at driver processes. I have another similar problem but it occurs before login, or even before the login screen is available. How do you test for slowdowns and slow bootups in those situations. What tools can you use. I have already used MSConfig and other similar programs to eliminate processes from the startup, but there is still a slowdown.

  • ebraiter@videotron.ca
    4 years ago
    Jul 31, 2008

    OK. What if I wanted to purge my Win XP PC of possible corrupt drivers? If I uninstall the software that comes with the drivers, remnants of the possibly corrupt drivers are left behind.

  • E
    4 years ago
    Jul 31, 2008

    >> “Results for Kernel Mode” section, the problematic driver is intelppm, the Intel processor driver that’s part of the OS load <<

    Some discussion on this:
    "amdk8.sys and intelppm.sys" @ http://forum.sysinternals.com/forum_posts.asp?TID=14388

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.