Intel Core Duo USB Issue: A Mischaracterized Bug
by Anand Lal Shimpi on February 13, 2006 1:40 PM EST- Posted in
- Laptops
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:
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:
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.
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 powerAs 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.
C1 - auto halt
C2 - stop clock
C3 - sleep
C4 - deep sleep
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.
61 Comments
View All Comments
lazybum131 - Tuesday, February 14, 2006 - link
Actually, if you take into account the larger capacity battery on the T60, 56WHr compared 51 WHr, the T43 comes out ahead most of the time. The T60 has a 9.8% larger capacity battery, but with the fix it only comes out ahead 3.2%, 1.85%, 8.24% and 5.04%.Anand Lal Shimpi - Monday, February 13, 2006 - link
I'm looking into this issue myself and I will have an updated Core Duo performance article in the coming weeks that will address this as well as many other items. I wouldn't use the ASUS notebooks to compare Napa to Sonoma, especially given the internal USB 2.0 camera. I am hoping to do a Lenovo based Napa vs. Sonoma comparison that will hopefully make things a lot clearer.Take care,
Anand
JarredWalton - Monday, February 13, 2006 - link
I think that Napa allows a lower power setting, but you have to remember that two cores are still going to use more power than a single core when active. It might be interesting to see a test comparing Sonoma and Napa with the same CPU, as Dothan and Yonah both fix socket 479. There's also a question of the other peripherals, though: NIC, sound, screen, etc. all draw power. The newer Napa laptop from ASUS might have a better (re: brighter but more power hungry) LCD, for example, or a different HDD model. I don't know if they're strictly "identical" in other components, but a change of platform often involves other tweaks as well.NullSubroutine - Monday, February 13, 2006 - link
Id be more apt to say that the increase of the FSB and the second additional core are more likely the cause, because I think they did make sure the Asus laptops were exactly the same.IntelUser2000 - Tuesday, February 14, 2006 - link
Keep in mind that with laptops especially with power consumption there is so many variations to battery life problem. It could be that the implementation of the BIOS or voltage regulator is different across the two. Voltage regulator is said to be 5-10% of total power consumption, so differences in V-reg can make differences you are seeing.
Look here: http://www.hardwarezone.com/articles/view.php?id=1...">http://www.hardwarezone.com/articles/view.php?id=1...
Even with a faster CPU, MSI M635 with 1.8GHz Turion outperforms HP Compaq nx6125 with 2.0GHz Turion. It also gets better battery life even with X700.
I think 5% difference is well within the range.
huges84 - Monday, February 13, 2006 - link
Doh! I completely forgot about the dual vs single core issue. And your other points are valid as well.kmmatney - Monday, February 13, 2006 - link
Looks like I'll be using my old USB 1.1 mouse when I travel from now on.huges84 - Monday, February 13, 2006 - link
Yeah, a lot of people will be checking what version of USB their mouses are. I know I will be.Saist - Monday, February 13, 2006 - link
In reguards to THG, I was surprised to see a link as well.In reguards to AMD systems, I have a Turion on hand from Fujitsu (Lifebook S2000) and have been unable to duplicate the power loss from a default state with either a USB 2.0 external DVD drive, or a USB 2.0 Plextore ConvertX device.
I was also surprised to see that Anandtech didn't test any Turion systems themsevles in the article. But, having tested 2 Centrino systems of my own (one from Sager, the other from Dell), in addition to the Fujitsu, yes, it is time consuming.
Zebo - Monday, February 13, 2006 - link
Anand refuses to test new turions similarly equiped.. don't know why I've emailed him never heard back. Go to laptop logic.