3 ms·
Indeed. Shutoff Garbage collection completely and it can work. (And make sure your Java code creates no garbage - which is a new type of programming in and of i
by zinxq 4y ago
Indeed. Shutoff Garbage collection completely and it can work. (And make sure your Java code creates no garbage - which is a new type of programming in and of itself)
- vips7L 4y agoMaybe I’m taking your comment wrong, why is this a bad thing? What other GC’d language just lets you turn it off?
- bee_rider 4y agoI don't think their comment is intended to be negative really -- looks more like appreciative of the option, while cognizant of the fact that using it introduces a new challenge.
- bitcharmer 4y agoIt's not about turning it off. You just don't allocate on the hot path.
- vips7L 4y agoSome people choose to do neither! https://medium.com/@jadsarmo/why-we-chose-java-for-our-high-frequency-trading-application-600f7c04da94 https://medium.com/@jadsarmo/why-we-chose-java-for-our-high-...
- bitcharmer 4y ago> This is because Zing uses a unique collector called C4 (Continuously Concurrent Compacting Collector) that allows pauseless garbage collection regardless of the Java heap size. This is incorrect. Firstly, C4 triggers two types of safepoints: thread-local, and jvm-wide. The latter can easily go into the region of ~200 micros for heaps of ~32GB even when running on fast, overclocked servers. Secondly, the design of C4 incurs performance penalty for accessing objects due to memory barriers. This impacts median latency noticeably. You might not believe me, but ask Gil and he'll openly admit it. This article was written by someone who: 1) doesn't know how C4 works 2) doesn't analyze relevant metrics from their JVMs
- zinxq 4y agoEdit: My bad - unfortunate wording. I didn't mean this as negative at all. It's cool (if niche) ability.