HackerPapers

arXiv:1504.02578cs.DC

Blade: A Data Center Garbage Collector

David Terei, Amit Levy

Abstract

An increasing number of high-performance distributed systems are written in garbage collected languages. This removes a large class of harmful bugs from these systems. However, it also introduces high tail-latency do to garbage collection pause times. We address this problem through a new technique of garbage collection avoidance which we call Blade. Blade is an API between the collector and application developer that allows developers to leverage existing failure recovery mechanisms in distributed systems to coordinate collection and bound the latency impact. We describe Blade and implement it for the Go programming language. We also investigate two different systems that utilize Blade, a HTTP load-balancer and the Raft consensus algorithm. For the load-balancer, we eliminate any latency introduced by the garbage collector, for Raft, we bound the latency impact to a single network round-trip, (48 μs in our setup). In both cases, latency at the tail using Blade is up to three orders of magnitude better.

arXiv comments
14 pages, 9 figures
Journal reference
DOI
Subjects
cs.DCDistributed, Parallel, and Cluster Computing

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 2 threads, from Oct 2016 to Jan 2019. Found in 2 HN submissions from Apr 2015 to May 2015. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments2 threads

  1. PyPy for low-latency systems 1 comment
    • Relevant: "Blade: A Data Center Garbage Collector" (2015, https://arxiv.org/pdf/1504.02578.pdf) Terrible title, but basically the same idea.

      cakooseView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.