Skip to main navigation Skip to search Skip to main content

NumaGiC: A garbage collector for big data on big NUMA machines

  • Lokesh Gidra
  • , Gaël Thomas
  • , Julien Sopena
  • , Marc Shapiro
  • , Nhan Nguyen
  • INRIA Institut National de Recherche en Informatique et en Automatique
  • Chalmers University of Technology

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

On contemporary cache-coherent Non-Uniform Memory Access (ccNUMA) architectures, applications with a large memory footprint suffer from the cost of the garbage collector (GC), because, as the GC scans the reference graph, it makes many remote memory accesses, saturating the interconnect between memory nodes. We address this problem with NumaGiC, a GC with a mostly-distributed design. In order to maximise memory access locality during collection, a GC thread avoids accessing a different memory node, instead notifying a remote GC thread with a message; nonetheless, NumaGiC avoids the drawbacks of a pure distributed design, which tends to decrease parallelism. We compare NumaGiC with Parallel Scavenge and NAPS on two different ccNUMA architectures running on the Hotspot Java Virtual Machine of OpenJDK 7. On Spark and Neo4j, two industry-strength analytics applications, with heap sizes ranging from 160 GB to 350 GB, and on SPECjbb2013 and SPECjbb2005, Numa-GiC improves overall performance by up to 45% over NAPS (up to 94% over Parallel Scavenge), and increases the performance of the collector itself by up to 3.6× over NAPS (up to 5.4× over Parallel Scavenge).

Original languageEnglish
Title of host publicationASPLOS 2015 - 20th International Conference on Architectural Support for Programming Languages and Operating Systems
PublisherAssociation for Computing Machinery
Pages661-673
Number of pages13
ISBN (Electronic)9781450328357
DOIs
Publication statusPublished - 14 Mar 2015
Event20th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2015 - Istanbul, Turkey
Duration: 14 Mar 201518 Mar 2015

Publication series

NameInternational Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS
Volume2015-January

Conference

Conference20th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2015
Country/TerritoryTurkey
CityIstanbul
Period14/03/1518/03/15

Keywords

  • Garbage collection
  • Multicore
  • NUMA

Fingerprint

Dive into the research topics of 'NumaGiC: A garbage collector for big data on big NUMA machines'. Together they form a unique fingerprint.

Cite this