On Sunday, 08/09/2009 at 11:01 EDT, Alan Ackerman <alan.acker...@earthlink.net> wrote: > The MP effect is determined by the operating system and by the workload. > It is not simply a hardware effect at all. If two or more processors > access the same memory location -- one will have to wait.
True enough, but understand that the Non-Uniform Memory Access (NUMA) designs of modern machines changes the equation. It is no longer a bunch of CPUs equally competing for memory access. The hierarchy of non-shared and shared cache brings an exquisite complexity to dispatching that affects memory access and throughput. So when you add a CPU, its contribution to The MP Effect depends on where in the cluster it is physically added and on the operating system's ability to recognize the topology and to adjust its dispatching algorithms accordingly. But TANSTAAFL. It is an axiom that adding a CPU adds overhead. z/OS HiperDispatch is a good example of what happens when you go from a blinders-on, all-memory-is-created-equal dispatcher to one that is far more aware of its surroundings and that adapts to the shape of the container. (And, no, even though it is z/OS I'm talking about, it is not a new kind of self-aware metamorph.) z/VM has long re-dispatched virtual CPUs on the same logical CPU when possible. Alan Altmark z/VM Development IBM Endicott