Sciweavers

CORR
2011
Springer

Garbage Collection for Multicore NUMA Machines

13 years 4 months ago
Garbage Collection for Multicore NUMA Machines
Modern high-end machines feature multiple processor packages, each of which contains multiple independent cores and integrated memory controllers connected directly to dedicated physical RAM. These packages are connected via a shared bus, creating a system with a heterogeneous memory hierarchy. Since this shared bus has less bandwidth than the sum of the links to memory, aggregate memory bandwidth is higher when parallel threads all access memory local to their processor package than when they access memory attached to a remote package. This bandwidth limitation has traditionally limited the scalability of modern functional language implementations, which seldom scale well past 8 cores, even on small benchmarks. This work presents a garbage collector integrated with our strict, parallel functional language implementation, Manticore, and shows that it scales effectively on both a 48core AMD Opteron machine and a 32-core Intel Xeon machine. Categories and Subject Descriptors D.3.0 [Prog...
Sven Auhagen, Lars Bergstrom, Matthew Fluet, John
Added 19 Aug 2011
Updated 19 Aug 2011
Type Journal
Year 2011
Where CORR
Authors Sven Auhagen, Lars Bergstrom, Matthew Fluet, John H. Reppy
Comments (0)