From: Pierre Ossman <drzeus-list@drzeus.cx>
To: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Cc: "Len Brown" <lenb@kernel.org>,
linux-pm@lists.linux-foundation.org,
"Pavel Machek" <pavel@ucw.cz>,
"LKML" <linux-kernel@vger.kernel.org>,
"Adam Belay" <abelay@novell.com>,
"Andi Kleen" <andi@firstfloor.org>,
"Lee Revell" <rlrevell@joe-job.com>
Subject: Re: [linux-pm] [PATCH] cpuidle: avoid singing capacitors
Date: Sat, 15 Mar 2008 01:41:43 +0100 [thread overview]
Message-ID: <20080315014143.32d0d5e9@mjolnir.drzeus.cx> (raw)
In-Reply-To: <924EFEDD5F540B4284297C4DC59F3DEEB34783@orsmsx423.amr.corp.intel.com>
On Fri, 14 Mar 2008 14:15:46 -0700
"Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com> wrote:
>
> Why go only one C-state down. Why not directly drop to max_hwcstate? We
> don't need to loop through that way.
>
Good point. But we can't just jump there and be done with it. That state might not be available (then again, we could require the user to put in a valid max_hwcstate, but that isn't as user friendly).
> There are few other concerns which make me feel that the patch will be
> not as simple as this.
> 1) BIOS may already be exporting the lower C-states as separate states.
> In which case we just have to ignore this deep C-state and return. I
> mean, on your system if BIOS exports C1, C3 and C6 hardware C-states and
> you give max_hwcstate as C3, then we don't want to have C1, C3 and C3 in
> our list.
>
Indeed. But the current system doesn't easily allows us to handle that. Any ideas?
> 2) On same lines the other information in ACPI like (low power of 100
> and higher latency for C6 on your system) corresponds to hardware C6
> state. If we change the hardware C-state here to C3, then continue to
> use latency info from ACPI for hw C6, that may lead to inefficient state
> selection in the governor. Also, ther are assumptions related DMA,
> lapic, TSC etc in upper level ACPI based on "ACPI C-state" and changing
> underlying hardware C-state to C1 for example will change some of those
> behavior.
>
It is still way better going to C3 less than possible than not at all (i.e. the previous workaround of processor.max_cstate). As far as I can tell from the documentation, every C-state includes all of the negative side effects of the ones preceding it. So it should just be a matter of sub-optimal selection by the governor. And I don't see how we can fix that without a big table for each processor and possibly chipset.
Rgds
--
-- Pierre Ossman
Linux kernel, MMC maintainer http://www.kernel.org
PulseAudio, core developer http://pulseaudio.org
rdesktop, core developer http://www.rdesktop.org
next prev parent reply other threads:[~2008-03-15 0:42 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-29 18:38 [RFC][PATCH] cpuidle: avoid singing capacitors Pierre Ossman
2008-02-29 21:44 ` Lennart Sorensen
2008-03-01 12:31 ` Pierre Ossman
2008-03-01 13:40 ` Pierre Ossman
2008-03-02 2:27 ` Lee Revell
2008-03-02 14:17 ` Pierre Ossman
2008-03-03 12:36 ` Andi Kleen
2008-03-03 20:18 ` [PATCH] " Pierre Ossman
2008-03-03 20:46 ` Pavel Machek
2008-03-03 21:03 ` Pierre Ossman
2008-03-03 21:08 ` Pavel Machek
2008-03-03 21:14 ` Pallipadi, Venkatesh
2008-03-03 21:17 ` Pierre Ossman
2008-03-03 22:04 ` Pallipadi, Venkatesh
2008-03-03 23:05 ` [linux-pm] " Alan Stern
2008-03-03 23:10 ` Andi Kleen
2008-03-04 4:00 ` Dave Jones
2008-03-04 6:14 ` Pierre Ossman
2008-03-04 17:19 ` Pierre Ossman
2008-03-04 17:29 ` Andi Kleen
2008-03-04 17:30 ` Pierre Ossman
2008-03-04 17:43 ` Andi Kleen
2008-03-04 18:04 ` Pierre Ossman
2008-03-04 18:34 ` Andi Kleen
2008-03-05 6:04 ` Pierre Ossman
2008-03-05 15:48 ` Andi Kleen
2008-03-05 16:53 ` Pierre Ossman
2008-03-05 17:32 ` Andi Kleen
2008-03-04 19:01 ` Pallipadi, Venkatesh
2008-03-05 6:02 ` Pierre Ossman
2008-03-05 8:40 ` Pierre Ossman
2008-03-05 9:03 ` Pavel Machek
2008-03-05 13:42 ` Pierre Ossman
2008-03-05 13:47 ` Pavel Machek
2008-03-05 13:52 ` Pierre Ossman
2008-03-06 8:27 ` Pierre Ossman
2008-03-09 14:16 ` Pierre Ossman
2008-03-09 18:19 ` Rafael J. Wysocki
2008-03-09 18:50 ` Alan Stern
2008-03-09 19:30 ` Henrique de Moraes Holschuh
2008-03-09 20:14 ` Pierre Ossman
2008-03-09 20:41 ` Henrique de Moraes Holschuh
2008-03-09 20:54 ` Henrique de Moraes Holschuh
2008-03-10 10:00 ` Pavel Machek
2008-03-10 12:49 ` Pierre Ossman
2008-03-10 13:04 ` Andi Kleen
2008-03-10 13:29 ` Pierre Ossman
2008-03-12 19:11 ` Len Brown
2008-03-13 8:10 ` Pavel Machek
2008-03-13 10:42 ` Andi Kleen
2008-03-14 4:13 ` Len Brown
2008-03-13 16:34 ` Pierre Ossman
2008-03-13 16:47 ` Pallipadi, Venkatesh
2008-03-13 17:44 ` Pierre Ossman
2008-03-13 17:49 ` Pierre Ossman
2008-03-14 19:40 ` Pierre Ossman
2008-03-14 21:15 ` Pallipadi, Venkatesh
2008-03-15 0:41 ` Pierre Ossman [this message]
2008-03-11 7:51 ` Pierre Ossman
2008-03-11 10:48 ` Andi Kleen
2008-03-11 15:20 ` Pierre Ossman
2008-03-11 17:31 ` Pierre Ossman
2008-03-12 19:17 ` Len Brown
2008-03-12 20:31 ` Len Brown
2008-03-04 9:40 ` Andi Kleen
2008-03-03 23:09 ` Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080315014143.32d0d5e9@mjolnir.drzeus.cx \
--to=drzeus-list@drzeus.cx \
--cc=abelay@novell.com \
--cc=andi@firstfloor.org \
--cc=lenb@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=pavel@ucw.cz \
--cc=rlrevell@joe-job.com \
--cc=venkatesh.pallipadi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).