Tuning your server for OpenJ9

(The canonical version of this post is on the Paper forums. I have cross-posted this as a resource for others.)

Recently, there’s been quite a few people interested in using OpenJ9 to run their server.

If you are not aware of what OpenJ9, it’s a replacement for the standard HotSpot JVM you would get if you installed Java. There are reasons why you may want to switch, including:

  • Ahead-of-Time compilation for fast startup without losing the benefits of a optimizing JIT
  • Specifically tuned for cloud setups (however, it will run fine on bare metal)
  • Reduced memory usage (get a lot more people on your server)
  • Idle garbage collection when your server is not active
  • Much more…

I have compiled a full guide and posted it on my blog. Several people are already using these flags with success. I have even included a shell script that automatically tunes the server for you.

Please let me know about your experience!


I’ve just switched to this! And so far it looks great. Will look out for the memory usage etc :wink: