中文

面向多核 NUMA 机器的垃圾回收机制

编程语言 2011-05-13 v1

摘要

现代高端机器配备多个处理器封装,每个封装包含多个独立核心和集成内存控制器,直接连接到专用的物理内存。这些封装通过共享总线连接,形成了一个具有异构内存层次结构的系统。由于该共享总线的带宽低于各内存链路带宽之和,当并行线程全部访问其处理器封装本地的内存时,聚合内存带宽要高于访问远程封装内存时的带宽。这一带宽限制传统上制约了现代函数式语言实现的可扩展性,即使在小型基准测试上,它们也很少能在超过 8 个核心时良好扩展。本文提出了一种与我们的严格并行函数式语言实现 Manticore 集成的垃圾回收器,并展示了它在一台 48 核 AMD Opteron 机器和一台 32 核 Intel Xeon 机器上均能有效扩展。

关键词

引用

@article{arxiv.1105.2554,
  title  = {Garbage Collection for Multicore NUMA Machines},
  author = {Sven Auhagen and Lars Bergstrom and Matthew Fluet and John Reppy},
  journal= {arXiv preprint arXiv:1105.2554},
  year   = {2011}
}

备注

To appear in Memory Systems Performance and Correctness 2011 (MSPC11)