Re: questions of cpuidle

2013-12-10 Thread Arjan van de Ven
On 12/9/2013 10:08 PM, Alex Shi wrote: And for monitor/mwait idle method, seems deep c-state cpu need to keep a eye on memory bus. So seems the memory controller in cpu package is impossible to get into sleep, right? not the memory bus the cache coherency logic ;-) -- To unsubscribe from this

Re: questions of cpuidle

2013-12-10 Thread Arjan van de Ven
On 12/9/2013 10:08 PM, Alex Shi wrote: And for monitor/mwait idle method, seems deep c-state cpu need to keep a eye on memory bus. So seems the memory controller in cpu package is impossible to get into sleep, right? not the memory bus the cache coherency logic ;-) -- To unsubscribe from this

Re: [RFC] Packaging libtraceevent.so

2013-12-02 Thread Arjan van de Ven
On 12/2/2013 11:03 AM, Steven Rostedt wrote: Hi all! The question has recently come up in Fedora about packaging the libtraceevent.so library. Currently there's 4 users of it: 1) perf 2) trace-cmd 3) powertop 4) rasdaemon But each have their own copy of the code. Both perf and

Re: [RFC] Packaging libtraceevent.so

2013-12-02 Thread Arjan van de Ven
On 12/2/2013 11:03 AM, Steven Rostedt wrote: Hi all! The question has recently come up in Fedora about packaging the libtraceevent.so library. Currently there's 4 users of it: 1) perf 2) trace-cmd 3) powertop 4) rasdaemon But each have their own copy of the code. Both perf and

Re: [PATCH 3/7] idle, thermal, acpi: Remove home grown idle implementations

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 9:55 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 9:23 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 8:04 AM, Peter Zijlstra wrote: This does not fully preseve existing behaviour

Re: [PATCH 3/7] idle, thermal, acpi: Remove home grown idle implementations

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 9:23 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 8:04 AM, Peter Zijlstra wrote: This does not fully preseve existing behaviour in that the generic idle cycle function calls into the normal cpuidle governed idle routines and should thus

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 8:33 AM, Peter Zijlstra wrote: On Wed, Nov 20, 2013 at 08:24:47AM -0800, Arjan van de Ven wrote: On 11/20/2013 2:58 AM, Peter Zijlstra wrote: So pretty silly actually; you cannot do a store (any store) in between monitor and mwait. you can just not to the cacheline you

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 2:58 AM, Peter Zijlstra wrote: On Wed, Nov 20, 2013 at 11:28:03AM +0100, Peter Zijlstra wrote: On Tue, Nov 19, 2013 at 01:06:30PM -0800, Jacob Pan wrote: I applied this patch on top of upstream kernel (801a760) and found out my machine completely failed to enter idle when nothing

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 2:58 AM, Peter Zijlstra wrote: On Wed, Nov 20, 2013 at 11:28:03AM +0100, Peter Zijlstra wrote: On Tue, Nov 19, 2013 at 01:06:30PM -0800, Jacob Pan wrote: I applied this patch on top of upstream kernel (801a760) and found out my machine completely failed to enter idle when nothing

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 8:33 AM, Peter Zijlstra wrote: On Wed, Nov 20, 2013 at 08:24:47AM -0800, Arjan van de Ven wrote: On 11/20/2013 2:58 AM, Peter Zijlstra wrote: So pretty silly actually; you cannot do a store (any store) in between monitor and mwait. you can just not to the cacheline you

Re: [PATCH 3/7] idle, thermal, acpi: Remove home grown idle implementations

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 9:23 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 8:04 AM, Peter Zijlstra wrote: This does not fully preseve existing behaviour in that the generic idle cycle function calls into the normal cpuidle governed idle routines and should thus

Re: [PATCH 3/7] idle, thermal, acpi: Remove home grown idle implementations

2013-11-20 Thread Arjan van de Ven
On 11/20/2013 9:55 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 9:23 AM, Thomas Gleixner wrote: On Wed, 20 Nov 2013, Arjan van de Ven wrote: On 11/20/2013 8:04 AM, Peter Zijlstra wrote: This does not fully preseve existing behaviour

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-19 Thread Arjan van de Ven
diff --git a/drivers/thermal/intel_powerclamp.c b/drivers/thermal/intel_powerclamp.c index 8f181b3f842b..e8275f2df9af 100644 --- a/drivers/thermal/intel_powerclamp.c +++ b/drivers/thermal/intel_powerclamp.c @@ -438,9 +438,7 @@ static int clamp_thread(void *arg) */

Re: [PATCH] x86, acpi, idle: Restructure the mwait idle routines

2013-11-19 Thread Arjan van de Ven
diff --git a/drivers/thermal/intel_powerclamp.c b/drivers/thermal/intel_powerclamp.c index 8f181b3f842b..e8275f2df9af 100644 --- a/drivers/thermal/intel_powerclamp.c +++ b/drivers/thermal/intel_powerclamp.c @@ -438,9 +438,7 @@ static int clamp_thread(void *arg) */

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-13 Thread Arjan van de Ven
for picking the cpu to wake on there are also low level physical kind of things we'd want to take into account on the intel side. Are these static and could they be hidden behind some cost number in a topology description? If they are dynamic, we would need arch or driver hooks to give some

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-13 Thread Arjan van de Ven
On 11/12/2013 3:14 PM, Catalin Marinas wrote: On 12 Nov 2013, at 16:48, Arjan van de Ven wrote: On 11/11/2013 10:18 AM, Catalin Marinas wrote: The ordering is based on the actual C-state, so a simple way is to wake up the CPU in the shallowest C-state. With asymmetric configurations

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-13 Thread Arjan van de Ven
On 11/12/2013 3:14 PM, Catalin Marinas wrote: On 12 Nov 2013, at 16:48, Arjan van de Ven ar...@linux.intel.com wrote: On 11/11/2013 10:18 AM, Catalin Marinas wrote: The ordering is based on the actual C-state, so a simple way is to wake up the CPU in the shallowest C-state. With asymmetric

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-13 Thread Arjan van de Ven
for picking the cpu to wake on there are also low level physical kind of things we'd want to take into account on the intel side. Are these static and could they be hidden behind some cost number in a topology description? If they are dynamic, we would need arch or driver hooks to give some

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-12 Thread Arjan van de Ven
On 11/11/2013 10:18 AM, Catalin Marinas wrote: The ordering is based on the actual C-state, so a simple way is to wake up the CPU in the shallowest C-state. With asymmetric configurations (big.LITTLE) we have different costs for the same C-state, so this would come in handy. btw I was

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-12 Thread Arjan van de Ven
On 11/11/2013 10:18 AM, Catalin Marinas wrote: The ordering is based on the actual C-state, so a simple way is to wake up the CPU in the shallowest C-state. With asymmetric configurations (big.LITTLE) we have different costs for the same C-state, so this would come in handy. btw I was

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 10:31 AM, Catalin Marinas wrote: I agree, we can't rely on the requested C-state but the_actual_ state and this means querying the hardware driver. Can we abstract this via some interface which provides the cost of waking up a CPU? This could take into account the state of the

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 10:18 AM, Catalin Marinas wrote: Even for symmetric configuration, the cost of moving a task to a CPU includes wake-up cost plus the run-time cost which depends on the P-state after wake-up (that's much trickier since we can't easily estimate the cost of a P-state and it may

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
I think the scheduler simply wants to say: we expect to go idle for X ns, we want a guaranteed wakeup latency of Y ns -- go do your thing. as long as Y normally is "large" or "infinity" that is ok ;-) (a smaller Y will increase power consumption and decrease system performance) I think

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 8:38 AM, Peter Zijlstra wrote: Like the package C states on x86 -- for those to be effective the scheduler needs to pack tasks and keep entire packages idle for as long as possible. "package" C states on x86 are not really per package... but system wide. the name is very

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 8:38 AM, Peter Zijlstra wrote: Like the package C states on x86 -- for those to be effective the scheduler needs to pack tasks and keep entire packages idle for as long as possible. package C states on x86 are not really per package... but system wide. the name is very confusing.

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
I think the scheduler simply wants to say: we expect to go idle for X ns, we want a guaranteed wakeup latency of Y ns -- go do your thing. as long as Y normally is large or infinity that is ok ;-) (a smaller Y will increase power consumption and decrease system performance) I think you

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 10:18 AM, Catalin Marinas wrote: Even for symmetric configuration, the cost of moving a task to a CPU includes wake-up cost plus the run-time cost which depends on the P-state after wake-up (that's much trickier since we can't easily estimate the cost of a P-state and it may

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-11 Thread Arjan van de Ven
On 11/11/2013 10:31 AM, Catalin Marinas wrote: I agree, we can't rely on the requested C-state but the_actual_ state and this means querying the hardware driver. Can we abstract this via some interface which provides the cost of waking up a CPU? This could take into account the state of the

Re: kernel bugzilla #64531: intel microcode information

2013-11-07 Thread Arjan van de Ven
fwiw this file lives on intel.com for a while now.. unfortunately it's one of these websites with fancy downloading stuff for which I suspect the URLs are not long term stable ;-( but if you type "microcode" into the search box its the first entry... On Thu, Nov 7, 2013 at 8:34 AM, Ingo Molnar

Re: kernel bugzilla #64531: intel microcode information

2013-11-07 Thread Arjan van de Ven
fwiw this file lives on intel.com for a while now.. unfortunately it's one of these websites with fancy downloading stuff for which I suspect the URLs are not long term stable ;-( but if you type microcode into the search box its the first entry... On Thu, Nov 7, 2013 at 8:34 AM, Ingo Molnar

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-18 Thread Arjan van de Ven
We should be able to boil it down to a sequence on ARM as well. But it means dropping cpufreq and looking at the clock framework. Are you still using the pre- and post-change notifiers on Intel, or can they be ignored safely? we do not use change notifiers (since the hardware changes

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-18 Thread Arjan van de Ven
We should be able to boil it down to a sequence on ARM as well. But it means dropping cpufreq and looking at the clock framework. Are you still using the pre- and post-change notifiers on Intel, or can they be ignored safely? we do not use change notifiers (since the hardware changes

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-17 Thread Arjan van de Ven
cpufreq has pre- and post-change notifiers so the current TC2 clock driver yeah those are EVIL ;-) waits (yields) in its clk_set_rate() implementation until the change has happened to ensure that the post-change notifier happens at the right time. Since clk_set_rate() is allowed to sleep

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
On 10/17/2013 9:08 AM, Jan Beulich wrote: On 17.10.13 at 18:04, Arjan van de Ven wrote: ... and the non-constant case be taken care of at run time. That's precisely what the patch does. fair enough. I would like to see a comment above the code to describe this reasoning and the objective

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
... and the non-constant case be taken care of at run time. That's precisely what the patch does. fair enough. I would like to see a comment above the code to describe this reasoning and the objective and what the desired behavior is... so that we don't have to reverse engineer this again 2

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
On 10/17/2013 2:45 AM, Jan Beulich wrote: Sure: Let's take __tun_chr_ioctl(): While a static function, it gets called with two different values for ifreq_len, both of which are provably (for a human) correct. I don't think, however, that the compiler can be expected to do so on its own in all

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
On 10/17/2013 2:45 AM, Jan Beulich wrote: Sure: Let's take __tun_chr_ioctl(): While a static function, it gets called with two different values for ifreq_len, both of which are provably (for a human) correct. I don't think, however, that the compiler can be expected to do so on its own in all

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
... and the non-constant case be taken care of at run time. That's precisely what the patch does. fair enough. I would like to see a comment above the code to describe this reasoning and the objective and what the desired behavior is... so that we don't have to reverse engineer this again 2

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-17 Thread Arjan van de Ven
On 10/17/2013 9:08 AM, Jan Beulich wrote: On 17.10.13 at 18:04, Arjan van de Ven ar...@linux.intel.com wrote: ... and the non-constant case be taken care of at run time. That's precisely what the patch does. fair enough. I would like to see a comment above the code to describe

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-17 Thread Arjan van de Ven
cpufreq has pre- and post-change notifiers so the current TC2 clock driver yeah those are EVIL ;-) waits (yields) in its clk_set_rate() implementation until the change has happened to ensure that the post-change notifier happens at the right time. Since clk_set_rate() is allowed to sleep

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-16 Thread Arjan van de Ven
if you have found cases where this matters... maybe you found a new security issue... Iirc I could convince myself that in the cited cases the warnings were there for no reason. can you pick one on a source level ? (and the gcc 4.6 had a few false positives which is why it got disabled

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-16 Thread Arjan van de Ven
. Adding the other direction is a good idea of course. Signed-off-by: Jan Beulich Cc: Arjan van de Ven Cc: Guenter Roeck +static inline unsigned long __must_check copy_from_user(void *to, + const void __user *from

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-16 Thread Arjan van de Ven
. Adding the other direction is a good idea of course. Signed-off-by: Jan Beulich jbeul...@suse.com Cc: Arjan van de Ven ar...@linux.intel.com Cc: Guenter Roeck li...@roeck-us.net +static inline unsigned long __must_check copy_from_user(void *to, + const void

Re: [PATCH] x86: unify copy_from_user() checking

2013-10-16 Thread Arjan van de Ven
if you have found cases where this matters... maybe you found a new security issue... Iirc I could convince myself that in the cited cases the warnings were there for no reason. can you pick one on a source level ? (and the gcc 4.6 had a few false positives which is why it got disabled

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-14 Thread Arjan van de Ven
On 10/14/2013 9:10 AM, Morten Rasmussen wrote: On Mon, Oct 14, 2013 at 02:33:56PM +0100, Peter Zijlstra wrote: On Fri, Oct 11, 2013 at 06:19:14PM +0100, Morten Rasmussen wrote: Removing power hints for kworker threads enables easier use of workqueues in the power driver late callback. That

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-14 Thread Arjan van de Ven
On 10/14/2013 6:33 AM, Peter Zijlstra wrote: On Fri, Oct 11, 2013 at 06:19:14PM +0100, Morten Rasmussen wrote: Removing power hints for kworker threads enables easier use of workqueues in the power driver late callback. That would otherwise lead to an endless loop unless it is prevented in the

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-14 Thread Arjan van de Ven
On 10/14/2013 6:33 AM, Peter Zijlstra wrote: On Fri, Oct 11, 2013 at 06:19:14PM +0100, Morten Rasmussen wrote: Removing power hints for kworker threads enables easier use of workqueues in the power driver late callback. That would otherwise lead to an endless loop unless it is prevented in the

Re: [RFC][PATCH 4/7] sched: power: Remove power capacity hints for kworker threads

2013-10-14 Thread Arjan van de Ven
On 10/14/2013 9:10 AM, Morten Rasmussen wrote: On Mon, Oct 14, 2013 at 02:33:56PM +0100, Peter Zijlstra wrote: On Fri, Oct 11, 2013 at 06:19:14PM +0100, Morten Rasmussen wrote: Removing power hints for kworker threads enables easier use of workqueues in the power driver late callback. That

Re: latencytop.org defunkt ?

2013-10-13 Thread Arjan van de Ven
somehow the domain no longer points to the right spot/etc my attempts to get that fixed have failed so far ;-( On Wed, Oct 9, 2013 at 9:42 AM, Daniel Walker wrote: > Hi, > > Are you aware that http://www.latencytop.org/ is not functioning ? I was > trying to get the update source code, but seem

Re: latencytop.org defunkt ?

2013-10-13 Thread Arjan van de Ven
somehow the domain no longer points to the right spot/etc my attempts to get that fixed have failed so far ;-( On Wed, Oct 9, 2013 at 9:42 AM, Daniel Walker dwal...@fifo99.com wrote: Hi, Are you aware that http://www.latencytop.org/ is not functioning ? I was trying to get the update source

Re: [PATCH v2 3/6] PowerCap: Added to drivers build

2013-10-07 Thread Arjan van de Ven
On 10/6/2013 1:15 PM, Gene Heskett wrote: and if you wonder what linux does today without the framework; there are mechanisms that kick in at the very end of the range, that are very draconian like taking the 3.0Ghz processor down to effectively 100MHz, or even a system reboot. The point of what

Re: [PATCH v2 3/6] PowerCap: Added to drivers build

2013-10-07 Thread Arjan van de Ven
On 10/6/2013 1:15 PM, Gene Heskett wrote: and if you wonder what linux does today without the framework; there are mechanisms that kick in at the very end of the range, that are very draconian like taking the 3.0Ghz processor down to effectively 100MHz, or even a system reboot. The point of what

Re: [PATCH v2 3/6] PowerCap: Added to drivers build

2013-10-06 Thread Arjan van de Ven
On 10/4/2013 4:17 PM, Gene Heskett wrote: I hope this is a better explanation. :) The idea of power capping is to cap total power not power down and also need root level access to modify. No. Restricting it to root control only is NOT an option. There has to be some mechanism whereby the

Re: [PATCH v2 3/6] PowerCap: Added to drivers build

2013-10-06 Thread Arjan van de Ven
On 10/4/2013 4:17 PM, Gene Heskett wrote: I hope this is a better explanation. :) The idea of power capping is to cap total power not power down and also need root level access to modify. No. Restricting it to root control only is NOT an option. There has to be some mechanism whereby the

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-10-02 Thread Arjan van de Ven
On 10/2/2013 5:45 AM, Frederic Weisbecker wrote: On Tue, Oct 01, 2013 at 06:59:57PM +0200, Peter Zijlstra wrote: On Tue, Oct 01, 2013 at 06:47:10PM +0200, Frederic Weisbecker wrote: Yeah thinking more about it, the preempt disable was probably not necessary. Now that's trading 2 atomics + 1

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-10-02 Thread Arjan van de Ven
On 10/2/2013 5:45 AM, Frederic Weisbecker wrote: On Tue, Oct 01, 2013 at 06:59:57PM +0200, Peter Zijlstra wrote: On Tue, Oct 01, 2013 at 06:47:10PM +0200, Frederic Weisbecker wrote: Yeah thinking more about it, the preempt disable was probably not necessary. Now that's trading 2 atomics + 1

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
Arjan, are you referring to the fact that Intel/SNB systems can exploit memory self-refresh only when the entire system goes idle? Is that why this patchset won't turn out to be that useful on those platforms? no we can use other things (CKE and co) all the time. Ah, ok.. just that we

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/26/2013 6:42 AM, Srivatsa S. Bhat wrote: On 09/26/2013 08:29 AM, Andrew Morton wrote: On Thu, 26 Sep 2013 03:50:16 +0200 Andi Kleen wrote: On Wed, Sep 25, 2013 at 06:21:29PM -0700, Andrew Morton wrote: On Wed, 25 Sep 2013 18:15:21 -0700 Arjan van de Ven wrote: On 9/25/2013 4:47 PM

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/26/2013 5:58 AM, Srivatsa S. Bhat wrote: Let me explain the challenge I am facing. A prototype powerpc platform that I work with has the capability to transition memory banks to content-preserving low-power states at a per-socket granularity. What that means is that we can get memory power

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/25/2013 6:21 PM, Andrew Morton wrote: On Wed, 25 Sep 2013 18:15:21 -0700 Arjan van de Ven wrote: On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low-power states

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/25/2013 6:21 PM, Andrew Morton wrote: On Wed, 25 Sep 2013 18:15:21 -0700 Arjan van de Ven ar...@linux.intel.com wrote: On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/26/2013 5:58 AM, Srivatsa S. Bhat wrote: Let me explain the challenge I am facing. A prototype powerpc platform that I work with has the capability to transition memory banks to content-preserving low-power states at a per-socket granularity. What that means is that we can get memory power

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
On 9/26/2013 6:42 AM, Srivatsa S. Bhat wrote: On 09/26/2013 08:29 AM, Andrew Morton wrote: On Thu, 26 Sep 2013 03:50:16 +0200 Andi Kleen a...@firstfloor.org wrote: On Wed, Sep 25, 2013 at 06:21:29PM -0700, Andrew Morton wrote: On Wed, 25 Sep 2013 18:15:21 -0700 Arjan van de Ven ar

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-26 Thread Arjan van de Ven
Arjan, are you referring to the fact that Intel/SNB systems can exploit memory self-refresh only when the entire system goes idle? Is that why this patchset won't turn out to be that useful on those platforms? no we can use other things (CKE and co) all the time. Ah, ok.. just that we

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-25 Thread Arjan van de Ven
On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low-power states and back into full operation. Please do discuss and quantify that to the best of your knowledge. On Sandy

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-25 Thread Arjan van de Ven
On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low-power states and back into full operation. Please do discuss and quantify that to the best of your knowledge. On Sandy

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-25 Thread Arjan van de Ven
On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low-power states and back into full operation. Please do discuss and quantify that to the best of your knowledge. On Sandy

Re: [Results] [RFC PATCH v4 00/40] mm: Memory Power Management

2013-09-25 Thread Arjan van de Ven
On 9/25/2013 4:47 PM, Andi Kleen wrote: Also, the changelogs don't appear to discuss one obvious downside: the latency incurred in bringing a bank out of one of the low-power states and back into full operation. Please do discuss and quantify that to the best of your knowledge. On Sandy

Re: [PATCH 0/7] preempt_count rework -v2

2013-09-10 Thread Arjan van de Ven
On 9/10/2013 6:56 AM, Ingo Molnar wrote: * Ingo Molnar wrote: So what we do in kick_process() is: preempt_disable(); cpu = task_cpu(p); if ((cpu != smp_processor_id()) && task_curr(p)) smp_send_reschedule(cpu); preempt_enable(); The

Re: [PATCH 0/7] preempt_count rework -v2

2013-09-10 Thread Arjan van de Ven
On 9/10/2013 6:56 AM, Ingo Molnar wrote: * Ingo Molnar mi...@kernel.org wrote: So what we do in kick_process() is: preempt_disable(); cpu = task_cpu(p); if ((cpu != smp_processor_id()) task_curr(p)) smp_send_reschedule(cpu);

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 8:35 AM, Frederic Weisbecker wrote: On Tue, Aug 20, 2013 at 08:33:50AM -0700, Arjan van de Ven wrote: On 8/20/2013 8:29 AM, Frederic Weisbecker wrote: Of course, if we can get away with completely removing all of that (which I think Arjan suggested was a real possibility

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 8:29 AM, Frederic Weisbecker wrote: Of course, if we can get away with completely removing all of that (which I think Arjan suggested was a real possibility) then that would be ever so much better still :-) Would be lovely. But I don't know much about cpufreq, I hope somebody

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 1:44 AM, Peter Zijlstra wrote: On Tue, Aug 20, 2013 at 03:59:36PM +0900, Fernando Luis Vázquez Cao wrote: That said, if deemed acceptable, option A is the one I would choose. Right, so I think we can do A without much extra cost mostly because we already have 2 atomics in the

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 1:44 AM, Peter Zijlstra wrote: On Tue, Aug 20, 2013 at 03:59:36PM +0900, Fernando Luis Vázquez Cao wrote: That said, if deemed acceptable, option A is the one I would choose. Right, so I think we can do A without much extra cost mostly because we already have 2 atomics in the

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 8:29 AM, Frederic Weisbecker wrote: Of course, if we can get away with completely removing all of that (which I think Arjan suggested was a real possibility) then that would be ever so much better still :-) Would be lovely. But I don't know much about cpufreq, I hope somebody

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-20 Thread Arjan van de Ven
On 8/20/2013 8:35 AM, Frederic Weisbecker wrote: On Tue, Aug 20, 2013 at 08:33:50AM -0700, Arjan van de Ven wrote: On 8/20/2013 8:29 AM, Frederic Weisbecker wrote: Of course, if we can get away with completely removing all of that (which I think Arjan suggested was a real possibility

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-19 Thread Arjan van de Ven
On 8/19/2013 3:58 AM, Peter Zijlstra wrote: On Fri, Aug 16, 2013 at 07:12:09PM +0200, Frederic Weisbecker wrote: Or may be Peter could tell us as well. Peter, do you have a preference? Still trying to wrap my head around it, but conceptually get_cpu_iowait_time_us() doesn't make any kind of

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-19 Thread Arjan van de Ven
On 8/19/2013 3:58 AM, Peter Zijlstra wrote: I'm also not entirely clear on the 'desired' semantics here. Do we count iowait time as idle or not? cpufreq only looks at this because it does not want to count this as idle... other than that it could not care less. -- To unsubscribe from this

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-19 Thread Arjan van de Ven
On 8/19/2013 3:58 AM, Peter Zijlstra wrote: I'm also not entirely clear on the 'desired' semantics here. Do we count iowait time as idle or not? cpufreq only looks at this because it does not want to count this as idle... other than that it could not care less. -- To unsubscribe from this

Re: [PATCH 2/4] nohz: Synchronize sleep time stats with seqlock

2013-08-19 Thread Arjan van de Ven
On 8/19/2013 3:58 AM, Peter Zijlstra wrote: On Fri, Aug 16, 2013 at 07:12:09PM +0200, Frederic Weisbecker wrote: Or may be Peter could tell us as well. Peter, do you have a preference? Still trying to wrap my head around it, but conceptually get_cpu_iowait_time_us() doesn't make any kind of

Re: [RFC v01 0/3] Power Capping Framework

2013-08-04 Thread Arjan van de Ven
On 8/2/2013 5:53 PM, Greg KH wrote: I will post the one client driver, which is already using this framework as this series. Ideally you will have more than one client driver submitted, as a "framework" for just one driver seems a bit odd, don't you think? There are other groups and vendors

Re: [RFC v01 0/3] Power Capping Framework

2013-08-04 Thread Arjan van de Ven
On 8/2/2013 5:53 PM, Greg KH wrote: I will post the one client driver, which is already using this framework as this series. Ideally you will have more than one client driver submitted, as a framework for just one driver seems a bit odd, don't you think? There are other groups and vendors

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
On 7/29/2013 9:01 AM, Lorenzo Pieralisi wrote: Coupled C states on this level are a PAIN in many ways, and tend to totally suck for power due to this and the general "too much is active" reasons. I think the trend is moving towards core gating, which resembles a lot to what x86 world does

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
On 7/29/2013 7:14 AM, Lorenzo Pieralisi wrote: btw this is largely a misunderstanding; tasks are not the issue; tasks use timers and those are perfectly predictable. It's interrupts that are not and the heuristics are for that. Now, if your hardware does the really-bad-for-power wake-all on

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
The menu governor tries to deduce the next wakeup but based on events per cpu. That means if a task with a specific behavior is migrated across cpus, the statistics will be wrong. btw this is largely a misunderstanding; tasks are not the issue; tasks use timers and those are perfectly

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
Beside that, on ARM the cpus could be coupled and the timer to detect the prediction will wake up the entire cluster, making the power saving less efficient and impacting the statistics of the other cpu. an ARM specific governor would be quite appropriate in that case. -- To unsubscribe from

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
Beside that, on ARM the cpus could be coupled and the timer to detect the prediction will wake up the entire cluster, making the power saving less efficient and impacting the statistics of the other cpu. an ARM specific governor would be quite appropriate in that case. -- To unsubscribe from

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
The menu governor tries to deduce the next wakeup but based on events per cpu. That means if a task with a specific behavior is migrated across cpus, the statistics will be wrong. btw this is largely a misunderstanding; tasks are not the issue; tasks use timers and those are perfectly

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
On 7/29/2013 7:14 AM, Lorenzo Pieralisi wrote: btw this is largely a misunderstanding; tasks are not the issue; tasks use timers and those are perfectly predictable. It's interrupts that are not and the heuristics are for that. Now, if your hardware does the really-bad-for-power wake-all on

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-29 Thread Arjan van de Ven
On 7/29/2013 9:01 AM, Lorenzo Pieralisi wrote: Coupled C states on this level are a PAIN in many ways, and tend to totally suck for power due to this and the general too much is active reasons. I think the trend is moving towards core gating, which resembles a lot to what x86 world does

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-26 Thread Arjan van de Ven
On 7/26/2013 11:13 AM, Rik van Riel wrote: Could you try running the tests with just the repeat mode stuff from commit 69a37bea excluded, but leaving the common infrastructure and commit e11538? personally I think we should go the other way around. revert the set entirely first, and now,

Re: RFC: revert request for cpuidle patches e11538d1 and 69a37bea

2013-07-26 Thread Arjan van de Ven
On 7/26/2013 11:13 AM, Rik van Riel wrote: Could you try running the tests with just the repeat mode stuff from commit 69a37bea excluded, but leaving the common infrastructure and commit e11538? personally I think we should go the other way around. revert the set entirely first, and now,

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-24 Thread Arjan van de Ven
I would expect performance to be disjoint for most tasks. If there was an overlap, the big would probably be less power efficient (as in energy/instruction) than the little so you would prefer to run on the little anyway. In what way would you use the overlap? if the scheduler thinks a task

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-24 Thread Arjan van de Ven
Given that the power topology is taken into account, a sort left/right-like mechanism would only help performance insensitive tasks on big.LITTLE. Performance sensitive tasks that each can use more than a little cpu should move in the opposite direction. Well, directly to a big cpu, even if

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-24 Thread Arjan van de Ven
Given that the power topology is taken into account, a sort left/right-like mechanism would only help performance insensitive tasks on big.LITTLE. Performance sensitive tasks that each can use more than a little cpu should move in the opposite direction. Well, directly to a big cpu, even if

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-24 Thread Arjan van de Ven
I would expect performance to be disjoint for most tasks. If there was an overlap, the big would probably be less power efficient (as in energy/instruction) than the little so you would prefer to run on the little anyway. In what way would you use the overlap? if the scheduler thinks a task

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-16 Thread Arjan van de Ven
On 7/16/2013 1:17 PM, Peter Zijlstra wrote: On Tue, Jul 16, 2013 at 12:57:34PM -0700, Arjan van de Ven wrote: then the question of how much remaining capacity; this is a hard one, and not just for Intel. Almost all mobile devices today are thermally constrained, ARM and Intel alike (at least

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-16 Thread Arjan van de Ven
On 7/16/2013 1:17 PM, Peter Zijlstra wrote: On Tue, Jul 16, 2013 at 12:57:34PM -0700, Arjan van de Ven wrote: then the question of how much remaining capacity; this is a hard one, and not just for Intel. Almost all mobile devices today are thermally constrained, ARM and Intel alike (at least

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-16 Thread Arjan van de Ven
On 7/16/2013 12:21 PM, Peter Zijlstra wrote: Suppose a 2 cpu system, one cpu is running 3/4 throttle, the other is running at half speed. Both cpus are equally utilized. A new task comes on. Where do we run it? We need to know that there's head-room on the 1/2 speed cpu and should crank its

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-16 Thread Arjan van de Ven
On 7/16/2013 10:38 AM, Peter Zijlstra wrote: On Mon, Jul 15, 2013 at 03:52:32PM -0700, Arjan van de Ven wrote: yeah ondemand does this, but ondemand is actually a pretty bad governor. not because of the sampling, but because of its algorithm. Is it good for any class of hardware still out

<    1   2   3   4   5   6   7   8   9   10   >