  Page placement is a critical problem for memoryintensive applications running
on a shared-memory multiprocessor with a non-uniform memory access (NUMA)
architecture. State-of-the-art page placement mechanisms interleave pages
evenly across NUMA nodes. However, this approach fails to maximize memory
throughput in modern NUMA systems, characterised by asymmetric bandwidths and
latencies, and sensitive to memory contention and interconnect congestion
phenomena. We propose BWAP, a novel page placement mechanism based on
asymmetric weighted page interleaving. BWAP combines an analytical performance
model of the target NUMA system with on-line iterative tuning of page
distribution for a given memory-intensive application. Our experimental
evaluation with representative memory-intensive workloads shows that BWAP
performs up to 66% better than state-of-the-art techniques. These gains are
particularly relevant when multiple co-located applications run in disjoint
partitions of a large NUMA machine or when applications do not scale up to the
total number of cores.
