Re: [PATCH v7 0/8] Tunable sched_mc_power_savings=n

From: Ingo Molnar
Date: Thu Dec 18 2008 - 15:20:30 EST



* Vaidyanathan Srinivasan <svaidy@xxxxxxxxxxxxxxxxxx> wrote:

> Hi,
>
> The existing power saving loadbalancer CONFIG_SCHED_MC attempts to run
> the workload in the system on minimum number of CPU packages and tries
> to keep rest of the CPU packages idle for longer duration. Thus
> consolidating workloads to fewer packages help other packages to be in
> idle state and save power. The current implementation is very
> conservative and does not work effectively across different workloads.
> Initial idea of tunable sched_mc_power_savings=n was proposed to enable
> tuning of the power saving load balancer based on the system
> configuration, workload characteristics and end user requirements.
>
> The power savings and performance of the given workload in an under
> utilised system can be controlled by setting values of 0, 1 or 2 to
> /sys/devices/system/cpu/sched_mc_power_savings with 0 being highest
> performance and least power savings and level 2 indicating maximum power
> savings even at the cost of slight performance degradation.
>
> Please refer to the following discussions and article for details.
>
> [1]Making power policy just work
> http://lwn.net/Articles/287924/
>
> [2][RFC v1] Tunable sched_mc_power_savings=n
> http://lwn.net/Articles/287882/
>
> v2: http://lwn.net/Articles/297306/
> v3: http://lkml.org/lkml/2008/11/10/260
> v4: http://lkml.org/lkml/2008/11/21/47
> v5: http://lkml.org/lkml/2008/12/11/178
> v6: http://lwn.net/Articles/311830/
>
> The following series of patch demonstrates the basic framework for
> tunable sched_mc_power_savings.
>
> This version of the patch incorporates comments and feedback received
> on the previous post from Andrew Morton.
>
> Changes form v6:
> ----------------
> * Convert BALANCE_FOR_xx_POWER and related macros to inline functions
> based on comments from Andrew and Ingo.
> * Ran basic kernelbench test and did not see any performance variation
> due to the changes.
>
> Changes form v5:
> ---------------
> * Fixed the sscanf bug and checking for (p->flags & PF_KTHREAD)
> * Dropped the RFC prefix to indicate that the patch is ready for
> testing and inclusion
> * Patch series against 2.6.28-rc8 kernel

thanks, applied - and i started testing them. It needed some help here and
there to resolve conflicts with pending cpumask changes. Could you please
double-check the merged up end result in the latest scheduler devel tree:

http://people.redhat.com/mingo/tip.git/README

thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/