We describe the implementation of our system, Metronome-TS, as an extension of the Metronome collector in IBM's Real-time J9 virtual machine product, and we evaluate it running on an 8-way SMP blade with a real-time Linux kernel. Virtual machines can co-exist compositionally on a single machine. It allows different policies to be ap- plied in different contexts depending on the needs of the applica- tion. Tax-and-spend subsumes the predominant pre-existing RTGC scheduling techniques. Tax-and-spend provides a general mechanism which works well across a variety of application, machine, and operating system con- figurations. This paper introduces a collector scheduling methodology called tax-and-spend and the collector design revisions needed to support it. Previously described RTGCs tend to work well in a narrow band of possible environments, leading to fragile systems and limiting adoption of real-time garbage collection technology. However, among potential users of RTGC, there is enormous diversity in both application requirements and deployment environments. Real-time Garbage Collection (RTGC) has recently advanced to the point where it is being used in production for financial trading, mil- itary command-and-control, and telecommunications. In both cases, latency at the tail using Blade is up to Load-balancer, we eliminate any latency introduced by the garbage collector,įor Raft, we bound the latency impact to a single network round-trip, (48 We also investigate two different systems that utilizeīlade, a HTTP load-balancer and the Raft consensus algorithm. We describe Blade and implement it for the Go Blade is an API between theĬollector and application developer that allows developers to leverage existingįailure recovery mechanisms in distributed systems to coordinate collection andīound the latency impact. Garbage collection avoidance which we call Blade. We address this problem through a new technique of However, it also introduces high tail-latency do to garbageĬollection pause times. This removes a large class of harmful bugs from An increasing number of high-performance distributed systems are written in