-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Your empirical results are fine, but I am not sure about the reasoning. RC was also invented by George Collins in 1960; stop-the-world mark-sweep is also simple, but partial (generational, Train, connectivity-based) collections are nice, and concurrent and parallel tracing techniques get tricky too. Getting cache-friendliness out of tracing is also tricky, but prefetching helps e.g. in OCaml, Java. Good RC schemes avoid updating refcounts by deferral and coelascing; some of these were implemented for Java in the '00s for concurrent, low-latency collectors. I was not aware that either .NET or the JVM starting out with RC still. e.g. Java 5 parallel generational tracing, concurrent generational tracing and the Train (which was deprecated for Java 5, presumably to be replaced by an "experimental" G1 in Java 6?).
I say this while failing to design a parallel GC for SBCL for my second time; but I was unaware of the more clever RC schemes until recently, as nor myself nor my older colleagues seemed to have only used naive RC.