public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Do we need to call calibrate_delay() for all cores/hyperthreads on a socket?
@ 2010-12-03  6:52 Robin Holt
  2010-12-03  9:36 ` Andi Kleen
  0 siblings, 1 reply; 4+ messages in thread
From: Robin Holt @ 2010-12-03  6:52 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Adrian Bunk, Venkatesh Pallipadi, Andi Kleen,
	Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Jack Steiner


I do not know all the different combinations of sockets, cores, and
hyperthreads out there, but it seems like all cores and their hyperthreads
on a socket should compute the same value for their calculate_delay()
function.

When booting a 4096 cpu system without specifying lpj on the command line,
we spend approximately 0.1 seconds per core/hyperthread calculating the
lpj value for that cpu.

If we were to, on the other hand, only calculate the delay value for the
first core on a socket, we would reduce the time spent booting a 4096 cpu
(256 sockets, 8 cores per socket hyperthreaded) down from nearly seven
minutes to approx 25 seconds.  This seems like a very safe optimization,
but I repeat that I do not know all the different potential combinations
of socket, core, hyperthread out that.  Please note these are just rough
approximations taken from memory.  I am doing a couple of test boots
now without and with lpj= specified on the command line to get a more
accurate approximation.

Thanks,
Robin Holt

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

end of thread, other threads:[~2010-12-03 15:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-03  6:52 Do we need to call calibrate_delay() for all cores/hyperthreads on a socket? Robin Holt
2010-12-03  9:36 ` Andi Kleen
2010-12-03 15:09   ` Robin Holt
2010-12-03 15:41     ` Andi Kleen

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