Re: [Patch] sched: new sched domain for representing multi-core

From: Siddha, Suresh B
Date: Tue Jan 31 2006 - 21:50:31 EST


On Tue, Jan 31, 2006 at 06:21:36PM -0800, Andrew Morton wrote:
> I was assuming that the code really does something like:
>
> #ifdef CONFIG_SCHED_MC
> some_global_thing = <expr>
> #endif
> #ifdef CONFIG_SCHED_SMT
> some_global_thing = <expr>
> #endif
> }
> ...
> #ifdef CONFIG_SCHED_SMT
> some_other_global_thing = <expr>
> #endif
> #ifdef CONFIG_SCHED_MC
> some_other_global_thing = <expr>
> #endif
>
> Which, looking a bit closer, was wrong (yes?)

yes.

>
> It is a bit irregular that in one place we do the SMT processing first and
> in another we do the MC processing first, but I guess it'll work OK.

yes. It will work Ok.

> We do need to be super-careful in the reviewing and testing here. If we
> slip up we won't have a nice crash to tell us. Instead we'll find that
> some machines with some configs will, under some workloads, take a few
> percent longer than they should. We could waste people's time for years
> until some developer stumbles across something.

I have done testing with specJBB, kernel-compilation, specrate and we are
doing some testing with database workload.. I will also request our
perf team to take a stab at this.

BTW, can you also apply this experimental only patch to -mm.

--
test patch for -mm.. enable CONFIG_SCHED_MC by default in Kconfig.
on systems with no shared caches between cores, this
should help validate domain setup and degeneration code..

Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>

--- linux-2.6.16-rc1/arch/i386/Kconfig 2006-01-31 16:41:38.019406000 -0800
+++ linux-core/arch/i386/Kconfig 2006-01-31 17:35:50.745916408 -0800
@@ -238,6 +238,7 @@ config SCHED_SMT
config SCHED_MC
bool "Multi-core scheduler support"
depends on SMP
+ default y
help
Multi-core scheduler support improves the CPU scheduler's decision
making when dealing with multi-core CPU chips at a cost of slightly
--- linux-2.6.16-rc1/arch/x86_64/Kconfig 2006-01-31 16:41:38.021405696 -0800
+++ linux-core/arch/x86_64/Kconfig 2006-01-31 17:35:20.640493128 -0800
@@ -249,6 +249,7 @@ config SCHED_SMT
config SCHED_MC
bool "Multi-core scheduler support"
depends on SMP
+ default y
help
Multi-core scheduler support improves the CPU scheduler's decision
making when dealing with multi-core CPU chips at a cost of slightly
-
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/