public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* RE: [PATCH] ia64: change defconfig to NR_CPUS==1024
@ 2006-01-06 17:45 Luck, Tony
  2006-01-06 17:49 ` Matthew Wilcox
  2006-01-06 18:25 ` Adrian Bunk
  0 siblings, 2 replies; 21+ messages in thread
From: Luck, Tony @ 2006-01-06 17:45 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Arjan van de Ven, hawkes, Tony Luck, Andrew Morton, linux-ia64,
	linux-kernel, Jack Steiner, Dan Higgins, John Hesterberg,
	Greg Edwards

>Why can't we keep the default below 64?  Surely the 0.1% of the market
>which needs more than 64 cpus can recompile their kernel ...

I suppose that depends on your expectations from defconfig.  In my
mind its the one that builds into a kernel that will boot and run
on just about any box.  People who want to get a bit of extra performance
will do the re-compilation to strip out the bits that they don't want
and tune down limits that are set higher than they need.  I only
ever boot a defconfig kernel to check that it still works, my systems
all run tiger_defconfig/zx1_defconfig based most of the time.  But
perhaps I'm the weird one?

There are quite a few >16 socket boxes out there, which will give
you >64 cpus with Montecito ... so I don't think that the >64 cpu
system is going to remain in the noise for long.

-Tony

^ permalink raw reply	[flat|nested] 21+ messages in thread
* RE: [PATCH] ia64: change defconfig to NR_CPUS==1024
@ 2006-01-06 17:19 Luck, Tony
  2006-01-06 17:24 ` Arjan van de Ven
  2006-01-06 17:26 ` Matthew Wilcox
  0 siblings, 2 replies; 21+ messages in thread
From: Luck, Tony @ 2006-01-06 17:19 UTC (permalink / raw)
  To: Arjan van de Ven, hawkes
  Cc: Tony Luck, Andrew Morton, linux-ia64, linux-kernel, Jack Steiner,
	Dan Higgins, John Hesterberg, Greg Edwards

>> Increase the generic ia64 config from its current max of 512 CPUs to a
>> new max of 1024 CPUs.
>
>I wonder why this would be seen as a sane thing...
>Very few people have 1024 cpus, and the ones that do sure would know how
>to set 1024 in their kernel config. In fact I would argue to lower it. I
>can see the point of keeping it over 64, to give the
>more-cpus-than-a-long code more testing, but 512 is too high already..
>most people who have ia64 will not have 512 cpus.

Would it be impossibly hard to make the >64 cpus case (when the code
switches from a single word to an array) be dependent on a boot-time
variable?  If we could, then the defconfig could just say 128, and
users of monster machines would just boot with "maxcpus=4096" to increase
the size of the bitmask arrays.

-Tony

^ permalink raw reply	[flat|nested] 21+ messages in thread
* [PATCH] ia64: change defconfig to NR_CPUS==1024
@ 2006-01-05 21:39 hawkes
  2006-01-05 22:33 ` Chen, Kenneth W
                   ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: hawkes @ 2006-01-05 21:39 UTC (permalink / raw)
  To: Tony Luck, Andrew Morton, linux-ia64, linux-kernel
  Cc: Jack Steiner, Dan Higgins, hawkes, John Hesterberg, Greg Edwards

Increase the generic ia64 config from its current max of 512 CPUs to a
new max of 1024 CPUs.

The principal file change that implements this is arch/ia64/defconfig,
which currently defines CONFIG_NR_CPUS=512.  The change to
arch/ia64/Kconfig brings that file's declaration of the NR_CPUS default
up to the new reality of 1024.  That Kconfig currently says
    default "64"
which is bogus -- it is currently 512.

The recent change to arch/ia64/configs/sn2_defconfig just raised that
platform-specific defconfig to ==1024.

The rationale for increasing the generic ia64 defconfig to 1024 is that
the generic config needs to support the new upcoming max CPU count for
ia64 platforms, which for ia64/sn ("Altix") platform is 1024, just as
the current max of 512 supports the current max CPU count.

The downside is that the ia64 cpumask increases from 8 words to 16.
I have tried various heavy workloads and have seen no significant
measurable performance regression from this increase.  The potential
extra cachemiss seems to be lost in the noise.  The for_each_*cpu()
macros are relatively efficient in skipping past zeroed cpumask bits.
Workloads that impose higher loads on the CPU Scheduler tend to
bottleneck on non-Scheduler parts of the kernel, and it's the Scheduler
which makes the principal use of the cpumask_t, so these extra
cachemiss inefficiencies and extra CPU cycles to scan zero mask words
just get lost in the general system overhead.

Signed-off-by: John Hawkes <hawkes@sgi.com>
Acked-by: Jack Steiner <steiner@sgi.com>
Acked-by: Greg Edwards <edwardsg@sgi.com>

Index: linux/arch/ia64/Kconfig
===================================================================
--- linux.orig/arch/ia64/Kconfig	2006-01-02 19:21:10.000000000 -0800
+++ linux/arch/ia64/Kconfig	2006-01-04 10:32:50.000000000 -0800
@@ -245,7 +245,7 @@
 	int "Maximum number of CPUs (2-1024)"
 	range 2 1024
 	depends on SMP
-	default "64"
+	default "1024"
 	help
 	  You should set this to the number of CPUs in your system, but
 	  keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
Index: linux/arch/ia64/defconfig
===================================================================
--- linux.orig/arch/ia64/defconfig	2006-01-02 19:21:10.000000000 -0800
+++ linux/arch/ia64/defconfig	2006-01-04 10:32:50.000000000 -0800
@@ -98,7 +98,7 @@
 # CONFIG_IA64_SGI_SN_XP is not set
 CONFIG_FORCE_MAX_ZONEORDER=18
 CONFIG_SMP=y
-CONFIG_NR_CPUS=512
+CONFIG_NR_CPUS=1024
 CONFIG_HOTPLUG_CPU=y
 # CONFIG_SCHED_SMT is not set
 # CONFIG_PREEMPT is not set

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2006-01-12 19:06 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-06 17:45 [PATCH] ia64: change defconfig to NR_CPUS==1024 Luck, Tony
2006-01-06 17:49 ` Matthew Wilcox
2006-01-06 18:04   ` Christoph Lameter
2006-01-06 18:07     ` Matthew Wilcox
2006-01-06 18:19     ` Randy.Dunlap
2006-01-06 18:37       ` Christoph Lameter
2006-01-06 18:59         ` Arjan van de Ven
2006-01-06 20:17           ` Alan Cox
2006-01-06 20:18             ` Randy.Dunlap
2006-01-06 20:42           ` Rohit Seth
2006-01-06 21:00         ` Dave Jones
2006-01-06 18:25 ` Adrian Bunk
  -- strict thread matches above, loose matches on Subject: below --
2006-01-06 17:19 Luck, Tony
2006-01-06 17:24 ` Arjan van de Ven
2006-01-06 17:26 ` Matthew Wilcox
2006-01-05 21:39 hawkes
2006-01-05 22:33 ` Chen, Kenneth W
2006-01-06 17:06   ` John Hawkes
2006-01-06  8:38 ` Arjan van de Ven
2006-01-12  0:09 ` Paul Jackson
2006-01-12 19:04   ` Christoph Lameter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox