I'm playing with Minecraft snapshots and OpenJDK11 on OpenJ9 and even at 32 chunk distance, the allocator is staying under 2gb and I have not seen any noticeable GC pauses, despite the game rapidly filling up that 2gb heap every few seconds.

Holy shit.

Unfortunately, although the GC performance is incredible, the game does take a pretty significant overall performance hit compared to OpenJDK8 with HotSpot.

OpenJ9 is probably an excellent candidate for memory constrained environments, though. Hence why people are switching over to it for microservices, I guess.

Follow

OpenJ9's garbage collection performance may be due to IBM's investment in real-time garbage collection through the Metronome project, of which they've published several papers on the matter. They tout that the maximum GC time for any workload should be 250ms in the absolute worst case, and it seems to hit best case very easily for Minecraft (and likely other apps using many short-lived objects)

Sign in to participate in the conversation
Awoo Space

Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.

While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.

Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!