|
|
Subscribe / Log in / New account

The cpuidle subsystem

The cpuidle subsystem

Posted Apr 27, 2010 20:15 UTC (Tue) by nix (subscriber, #2304)
In reply to: The cpuidle subsystem by intgr
Parent article: The cpuidle subsystem

This was changed (and the message reworded) two years ago in commit 70551c5171abf366b3caa6d22e12892f0da5a95e, after which powertop became capable of reading C-state information exported from sysfs by cpuidle in kernel 2.6.25+ (the data that Jon talks about in this article).

Prior to that, powertop had to read the data itself by making ACPI calls. I suppose this is less likely to work on non-laptops, even when C-states are available, because it's depending on the BIOS vendor doing the right thing (and we know how often *that* happens).

So, upgrade powertop and/or upgrade the kernel?

(You can't count C-state counters in software because when the CPU is in a C state it is not executing instructions. That's the whole point.)


to post comments

The cpuidle subsystem

Posted Apr 27, 2010 20:53 UTC (Tue) by intgr (subscriber, #39733) [Link] (4 responses)

> This was changed (and the message reworded) two years ago
Indeed, I pasted that from an older installation. Up-to-date computers give me this ever-confusing message:
"< Detailed C-state information is not P-states (frequencies)"
I guess since this is Intel's software, they don't pay much attention to how it looks like on AMD processors. :)

> You can't count C-state counters in software because when the CPU is in
> a C state it is not executing instructions.
But you can record timestamps before entering and after leaving the sleep state. Is that too expensive?

The cpuidle subsystem

Posted Apr 27, 2010 21:23 UTC (Tue) by nix (subscriber, #2304) [Link] (3 responses)

It's got nothing to do with Intel versus AMD. One of my Nehalem machines reports that message: it's just because C states are turned off in the BIOS.

I suspect it needs some word-wrapping: the 'available' has been overwritten by the P-state heading :)

The cpuidle subsystem

Posted Apr 28, 2010 11:53 UTC (Wed) by nye (subscriber, #51576) [Link] (2 responses)

>I suspect it needs some word-wrapping: the 'available' has been overwritten by the P-state heading :)

Since it always says that, no matter how wide the terminal in which it's run, you'd think somebody who knows that the message has been truncated would have noticed at some point and fixed it. I just assumed it was a message in some arcane code known to those deeply involved in power usage monitoring :P.

Anyway it's unfortunate that desktop CPUs don't support this - even the Atom (D510) I bought a month ago only supports C0 and C1, and I don't know if it's possible to tell how long it's spending in what state. It seems you need CPUs designed specifically for battery-powered devices if you want anything more.

The cpuidle subsystem

Posted Apr 28, 2010 12:16 UTC (Wed) by hmh (subscriber, #3838) [Link] (1 responses)

Many desktop CPUs do support it. Your BIOS might not. Your particular CPU might not (or might be buggy and the BIOS went ahead and disabled it for safety). But it is not a rare feature in desktop CPUs anymore.

The cpuidle subsystem

Posted Apr 28, 2010 14:11 UTC (Wed) by nye (subscriber, #51576) [Link]

Is there anywhere a list of supporting processors? I was hoping that a site like lesswatts.org might have that sort of thing, but I couldn't find that information anywhere short of downloading the datasheets for every individual CPU, and of course there are a near-infinite selection of CPUs on offer nowadays.

However, if even brand new all-in-one Atom systems don't support this - given that they're targetted specifically at low-power uses - it doesn't seem to be a stretch to conclude that this is something that manufacturers basically don't care about.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds