Messages in this thread | | | Subject | Re: [RFC PATCH v1 1/2] sched: unified sched_powersavings sysfs tunable | From | Peter Zijlstra <> | Date | Fri, 27 Jan 2012 10:40:45 +0100 |
| |
On Fri, 2012-01-27 at 14:52 +0530, Vaidyanathan Srinivasan wrote: > * Peter Zijlstra <a.p.zijlstra@chello.nl> [2012-01-25 16:10:13]: > > > On Mon, 2012-01-16 at 21:52 +0530, Vaidyanathan Srinivasan wrote: > > > @@ -6150,10 +6150,8 @@ SD_INIT_FUNC(CPU) > > > SD_INIT_FUNC(ALLNODES) > > > SD_INIT_FUNC(NODE) > > > #endif > > > -#ifdef CONFIG_SCHED_SMT > > > +#ifdef CONFIG_SCHED_POWERSAVE > > > SD_INIT_FUNC(SIBLING) > > > -#endif > > > -#ifdef CONFIG_SCHED_MC > > > SD_INIT_FUNC(MC) > > > #endif > > > #ifdef CONFIG_SCHED_BOOK > > > @@ -6250,7 +6248,7 @@ static void claim_allocations(int cpu, struct sched_domain *sd) > > > *per_cpu_ptr(sdd->sgp, cpu) = NULL; > > > } > > > > > > -#ifdef CONFIG_SCHED_SMT > > > +#ifdef CONFIG_SCHED_POWERSAVE > > > static const struct cpumask *cpu_smt_mask(int cpu) > > > { > > > return topology_thread_cpumask(cpu); > > > @@ -6261,10 +6259,8 @@ static const struct cpumask *cpu_smt_mask(int cpu) > > > * Topology list, bottom-up. > > > */ > > > static struct sched_domain_topology_level default_topology[] = { > > > -#ifdef CONFIG_SCHED_SMT > > > +#ifdef CONFIG_SCHED_POWERSAVE > > > { sd_init_SIBLING, cpu_smt_mask, }, > > > -#endif > > > -#ifdef CONFIG_SCHED_MC > > > { sd_init_MC, cpu_coregroup_mask, }, > > > #endif > > > #ifdef CONFIG_SCHED_BOOK > > > > I don't like this either, SCHED_{MC,SMT} here have nothing to do with > > powersavings, its topology support. > > Yes, but we don't need these domains for any other purpose other than > powersave balance. The code overheads are not high, I will remove > the config option and check.
Yes we do, SMT perf skips siblings and only loads them when there's only siblings left idle. Similarly for MC, we prefer to run tasks on separate sockets when possible.
| |