Messages in this thread | | | Date | Mon, 30 Nov 1998 14:13:40 +0100 (CET) | From | Rik van Riel <> | Subject | Re: SMP scalability: 8 -> 32 CPUs |
| |
On Sat, 28 Nov 1998, Kurt Garloff wrote: > On Sat, Nov 28, 1998 at 12:50:03AM +0000, Eloy A. Paris wrote: > > Guys, excuse my ignorance, but does anyone know why Linus said in his > > last Linux Journal interview that right now it is fairly unrealistic > > to expect scaling from 8 to 32 CPUs? What's stopping Linux to scale in > > terms of CPUs? > > Basically there are different mechanisms which limit the speed of operation: > (1) CPU(s) speed > (2) Memory speed (and size) > (3) I/O (Network, HD, VGA, ...) > > By increasing the number of CPUs, you only do something about (1). > So only CPU bound processes may profit. > > If you have a large number of independent CPU bound processes, they > will scale very nicely until they altogether hit the Memory or I/O > bound.
Number (2) can be tackled with a number of scheduler adjustments: - longer time slices (for CPU-bound tasks only!) - make it harder to switch CPUs (depending on how long a process has slept) - more intelligent rescheduling in reschedule_idle() -- better burn a few hundred cycles there than completely mess up the cache of three CPUs and hogging the memory bus - in tune with this, move the bottleneck in other pieces of code from memory to CPU, better cache alignment of task struct and stuff
If you have 8 CPUs, 8 CPU-bound tasks and one process taking 10% of one CPU, it might just be better to have one of the large tasks get 90% and the rest 100%.
Switching around the one non-hog might create such an amount of cache/memory problems that it will make the CPU hog suffer more than the 10% in question.
Weird counterintuitive things like this are what make the difference between a high-performance OS and your usual Redmond crap...
cheers,
Rik -- who prefers a certain OS with fairly non-intuitive innards. +-------------------------------------------------------------------+ | Linux memory management tour guide. H.H.vanRiel@phys.uu.nl | | Scouting Vries cubscout leader. http://www.phys.uu.nl/~riel/ | +-------------------------------------------------------------------+
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |