Starting at the Beginning

It wasn't too long ago that power consumption was hardly discussed, but these days, you can't have a technical discussion about microprocessors without mentioning it as a design consideration.  Mobile CPUs in particular have had to be power-conscious for a pretty long time, thanks to a desire for longer battery life and smaller form factors.  But with power consumption, noise and heat dissipation all becoming major issues on the desktop, we are seeing many mobile technologies make their way into desktop CPUs. 

The primary goal of a mobile CPU is no different than a desktop CPU, and that is to get its work done as quickly as possible.  However, a very important secondary goal of the mobile CPU is to strive to be at the lowest power state possible while getting that work done.  The Dothan core used in the 90nm Pentium M processor had a choice of five operating states:
C0 - full power
C1 - auto halt
C2 - stop clock
C3 - sleep
C4 - deep sleep
As you can guess, the higher the C number, the lower the power consumption.  Switching between these states is completely seamless to the end user because the switching occurs in a number of CPU clocks (nanoseconds).  With each processor generation, the CPU designers attempt, as best as possible, to get the CPU to stay in the lowest C-state more than it could previously.  That means making the processor faster so that it can complete its tasks quicker, and thus get to those lower C states faster than before. 

With Core Duo, Intel introduced a sixth operating state: deep C4, or a deeper sleep state.  Intel made some serious improvements to the core to allow it to not only get to lower C-states more often, but to reduce power even more at these lower C-states.  We talked about this briefly in our series of articles on the Core Duo processor, documenting how Intel not only brought forth a dual core mobile processor, but also optimized the performance and power consumption of each individual core. 

If you ran any mobile CPU in its full power (C0) state constantly, never allowing it to transition to lower states, you would wreak havoc on your notebook's battery life.  While not quite this extreme, the USB 2.0 battery life issue involves a similar concept. 

Microsoft describes the USB 2.0 issue as follows:
"Windows XP SP2 installs a USB 2.0 driver that initializes any connected USB device. However, the USB 2.0 driver leaves the asynchronous scheduler component continuously running. This problem causes continuous instances of memory access that prevent the computer from entering the deeper Advanced Configuration and Power Interface (ACPI) processor idle sleep states. These processor idle sleep states are also known as C states. For example, these include the C3 and C4 states. These sleep states are designed, in part, to save battery power. If an otherwise idle portable computer cannot enter or maintain the processor idle sleep states, the computer uses its battery power more quickly than you expect."
Basically, if you have a USB 2.0 device plugged in to a computer running Windows XP SP2, your processor will not be able to enter lower power states (e.g. C3, C4 or Deep C4 in the case of Core Duo).  The problem is that if a very power-efficient CPU is prevented from going into its C3 or C4 states, then it's consuming a lot more power than it needs to be.  It's particularly bad because the problem could exist just by having any USB 2.0 device plugged in, even if you're not using the device.

Keep in mind that Microsoft's description of the issue does not place the blame on Intel's Core Duo processor, and instead, implies that it would exist on all platforms regardless of CPU.  Later on in this article, we'll attempt to find out whether this is indeed a universal problem or something that only really impacts Core Duo. 

It is also important to note that the problem appears limited to USB 2.0 devices under Windows XP SP2 and not USB 1.x devices or USB 2.0 devices under other operating systems.  There are some USB 2.0 devices that can avoid the problem; in order for a device to be immune to this problem, it must support a power management mode called Selective Suspend, which allows the OS to put the device to sleep until it's needed.  The vast majority of devices don't seem to support Selective Suspend, and although some USB hubs apparently do, we weren't able to get our hands on any in time for this article. 

Index The Fix
Comments Locked

61 Comments

View All Comments

  • mayurgala - Thursday, June 22, 2006 - link

    Hi,

    as we saw tht MS has come with a registry fix which gets off once the machine comes out of the standby mode.... SO y cant we use hibernate it will just consume some more hard drive space :)

    Hibernation vs Standby Mode are very similar and people tend to confuse the differences. Standby basically turns off power consuming components like the hard disks and monitor. It switches the computer to a low power state. Its much like a warm boot. Any contents of memory and unsaved desktop settings are lost. Hibernation saves state information by writing a hibernation file which contains the contents of memory and is thus the same size as total RAM. This is a snapshot of active memory. When you turn your PC back on, the state, including which applications are running (desktop) and the memory contents are restored to RAM and voila! - you are back to where you were when Hibernation mode started. The restoration of state can take place in 5 minutes, 5 hours, 5 days, 5 weeks, ....
    Hibernation is only available if your system is ACPI-compatible. If it is not, the Hibernation tab will be missing and you will have an APM tab instead. To enable Hibernation mode as one of your Shutdown options:
  • V00D00 - Thursday, February 16, 2006 - link

    The link to the microsoft kb article is bad, it takes you here:
    file://localhost/kb/256986

    It's supposed to be:
    https://premier.microsoft.com/kb/256986/">https://premier.microsoft.com/kb/256986/
  • IntelUser2000 - Wednesday, February 15, 2006 - link

    Tomshardware: http://www.tgdaily.com/2006/02/14/microsoft_to_rel...">http://www.tgdaily.com/2006/02/14/micro...e_patch_...

    Anandtech: http://www.anandtech.com/mobile/showdoc.aspx?i=269...">http://www.anandtech.com/mobile/showdoc.aspx?i=269...



    Can anyone tell me why both systems with EXACTLY the same configuration AND drivers behave differently in terms of USB 2.0 power drain problem??

    If Anandtech is right about the fact that since Asus W5A/W5F has integrated USB 2.0 camera, connecting a external USB 2.0 device shouldn't affect battery life since it already has USB 2.0 device via camera installed.

    However, it does not. While Anandtech's results are consistent with THEIR own conclusions that disabling the device doesn't remove the problem, the only way is to physically remove it, it doesn't show for Tomshardware results.

    Summarizing the differences:
    Tomshardware
    1. With no external devices connected, Core Duo laptop has SIGNIFICANT battery life advantage over Pentium M
    2. Core Duo laptop loses significant battery life when external USB 2.0 device is connected
    3. Battery life AFTER the LOSS is STILL pretty much equal to Pentium M laptop
    4. Pentium M laptop loses very insignificant amount of battery life with USB 2.0 device connected
    5. Core Duo laptop AFTER THE PATCH GAINS significant battery life close to the result with no external devices connected, now the difference between CONNECTED and UNCONNECTED is within expectations
    6. Pentium M laptop ALSO gains battery life after the patch, but much less significant then Core Duo laptop

    Anandtech
    1. Core Duo laptop has very little battery life advantage over Pentium M
    2. Core Duo laptop loses insignificant battery life when USB 2.0 device is connected
    3. Battery life after the loss is pretty much equal to Pentium M
    4. Pentium M laptop loses insignificant battery life with external USB 2.0 device connected
    5. Core Duo laptop AFTER THE PATCH gains significant amount of battery life
    6. Pentium M laptop ALSO gains SIGNIFICANT amount of battery life.


    Anand??? Tom??? Who the hell is wrong here?? Will you two sites stop bashing each other who has more "professional" journalism and cooperate, see what's wrong?? So umm, MAYBE WE KNOW WHY THERE IS A DIFFERENCE??!!
  • clnee55 - Wednesday, February 15, 2006 - link

    Don't know who is right and who is wrong but at least THG is more consistent. Anand's conclusions are contradictary. Ex: 2 and 5. If the CoreDuo loses insignificant when USB2 is connected, how can it gain significant after the patch. Same contradiction between 4 and 6

    1. Core Duo laptop has very little battery life advantage over Pentium M
    2. Core Duo laptop loses insignificant battery life when USB 2.0 device is connected
    3. Battery life after the loss is pretty much equal to Pentium M
    4. Pentium M laptop loses insignificant battery life with external USB 2.0 device connected
    5. Core Duo laptop AFTER THE PATCH gains significant amount of battery life
    6. Pentium M laptop ALSO gains SIGNIFICANT amount of battery life
  • NullSubroutine - Wednesday, February 15, 2006 - link

    i dont think his summary was accurate to what anand what saying. which was under all circumstances usb 2.0 makes Pentium M and Core Duo lose battery power due to the issue with windows.

    thg diabled the camera THOUGH the bios, where as i believe anand did it inside windows.
  • tyildirim - Wednesday, February 15, 2006 - link

    And what about how swap cd/dvd bays alot of IBM's dell's has (also my d600) a removable internal cd writer in the task bar is si seems to be an usb device added to the system which I can "safelym remove" etc. so will it also affects battery life? quite confused now?
  • hardcandy2 - Wednesday, February 15, 2006 - link

    A similiar thing happens to the Dell Axim x50v with WM 2005, a battery drain takes place, due to a "file manager"(?) that keeps running. Saw it posted on www.aximsite.com a while back. Going by memory here which is not the best this AM.
  • paulsiu - Wednesday, February 15, 2006 - link

    Ok, the driver architecture is likely to be different, but does the problem occur under Linux?
  • NullSubroutine - Wednesday, February 15, 2006 - link

    i just read toms update, anand is by far better written, more informative, and used better methodoligy. go anand!
  • mark1 - Tuesday, February 14, 2006 - link

    Mark Twain had a saying, pardon my paraphrase, that a lie makes it halfway around the world before the truth gets its shoes on.

    THG has zero credibility. Their smug little article is still up and my bet is will stay up uncorrected so all the AMD fanboys can chortle about mighty Intel stumbling.

    Turns out, THG tried a little too hard this time. So they found 'dirt'; turns out the same phenomenon afflicts all Sonoma product, too.

    Before you know it, the story will have morphed into: plug any USB into a core duo and it drains the battery instantly. Heck, I was just at a retail store last weekend and was warned by a "salesman" that Duos have a battery drain problem. I asked him if he reads Tom's Hardware a lot - he wasn't ready for that. Or for that fact that I said it is a USB implementation, really nothing to do with the Centrino product. But the next 50 customers will get the same 1/2 truth. And all 1/2 truths are is lies.

Log in

Don't have an account? Sign up now