* Christoph Lameter <cl@xxxxxxxxx> wrote: > On Tue, 13 Nov 2012, Ingo Molnar wrote: > > > > the pages over both nodes in use. > > > > I'd not go as far as to claim that to be a general rule: the > > correct placement depends on the system and workload > > specifics: how much memory is on each node, how many tasks > > run on each node, and whether the access patterns and > > working set of the tasks is symmetric amongst each other - > > which is not a given at all. > > > > Say consider a database server that executes small and large > > queries over a large, memory-shared database, and has worker > > tasks to clients, to serve each query. Depending on the > > nature of the queries, interleaving can easily be the wrong > > thing to do. > > The interleaving of memory areas that have an equal amount of > shared accesses from multiple nodes is essential to limit the > traffic on the interconnect and get top performance. That is true only if the load is symmetric. > I guess through that in a non HPC environment where you are > not interested in one specific load running at top speed > varying contention on the interconnect and memory busses are > acceptable. But this means that HPC loads cannot be auto > tuned. I'm not against improving these workloads (at all) - I just pointed out that interleaving isn't necessarily the best placement strategy for 'large' workloads. Thanks, Ingo -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>