JVM Options Configuration Tool

Updated -

JVM config allows you to specify various parameters for your specific environment and JVM and generates optimized JVM options. One of the common issues we see in production environments is high garbage collection pause times. These pause times can have systemic effects. By default JVM config will product options that mitigate long pause times and allows you to further tune based on your specific needs.

Not only does JVM config help tune to avoid common problems, but it also explains why each option is generated and links back to the Red Hat knowledge base for known issues and solutions.

Was this helpful?

We appreciate your feedback. Leave a comment if you would like to provide more detail.
It looks like we have some work to do. Leave a comment to let us know how we could improve.

Get notified when this content is updated

Follow

13 Comments

Subscriber exclusive content

An active Red Hat subscription is required to participate.

Log In

The parameter for the concurrent thread count on OpenJDK (1.7, at least) is "-XX:ParallelGCThreads=N". This app returns "-XX:+ParallelGCThreads=N" (note the "+").

Thank you for feedback Jason! I wanted to update you that I pushed a new version of the app with the change you highlighted.

I'm looking at the output of CMS GC and there are some options we usually don't recommend.

https://access.redhat.com/labs/jvmconfig/#/?jv=Oracle&c=lowPause&hs=2048&gl=1&lp=0&de=1&dc=2&ao=0

-server -XX:+DoEscapeAnalysis -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+UseParNewGC -XX:+ExplicitGCInvokesConcurrent -XX:CMSInitiatingOccupancyFraction=80 -XX:CMSIncrementalSafetyFactor=20 -XX:+UseCMSInitiatingOccupancyOnly -XX:MaxTenuringThreshold=32 -Xmx2048M -Xms2048M -verbose:gc -Xloggc:gc.log.date +%Y%m%d%H%M%S -XX:+PrintGCDetails -XX:+PrintGCTimeStamps

-XX:+DoEscapeAnalysis

Enabled by default in recent versions, so it's redundant.

-XX:+UseParNewGC

Ditto

-XX:CMSIncrementalSafetyFactor=20 -XX:+UseCMSInitiatingOccupancyOnly

The CMSIncrementalSafetyFactor is not an option generally used, and with UseCMSInitiatingOccupancyOnly it will be ignored. I would remove CMSIncrementalSafetyFactor.

-XX:MaxTenuringThreshold=32

I'd remove this too.

http://sourcevirtues.wordpress.com/2013/03/29/never-set-gc-parameter-maxtenuringthreshold-greater-than-15/

how does this "JVM Options Configuration Tool works?". Is it just a community chat, or a tool that I can use?

Can we add a check box for turn on HeapDumpOnOutOfMemoryError? I think people should have this turn on until it is too late.
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="/tmp/heap_dump.hprof"

A heap dump option is now available.

very goog!

Please add -XX: PrintGCApplicationStoppedTime to the standard options for OpenJDK and Oracle JDK. ApplicationStoppedTime used to just include GC and so was redundant,but now it includes all the other non GC related operations that require all threads in the JVM to be at a safepoint (paused).

-XX: PrintGCApplicationStoppedTime is now included for OpenJDK and Oracle JDK configuration.

Page not available:

Not Found

The page you are looking for is not here. It might have been moved, removed, or had its name and address changed. It might otherwise be temporarily unavailable for technical reasons.

There was a temporary outage with our CDN but the issue has resolved.

The section where the app should be is empty for me. I see in the comments here that there was a CDN issue with similar-sounding effect about a year ago. Is there somewhere else we can access this app?

Hi Jordan,

You should be able to access the application here https://access.redhat.com/labs/jvmconfig/. If not, please let us know what you see.

i am also getting a blank page when accessing https://access.redhat.com/labs/jvmconfig

I tried to access JVM Config Tool (https://access.redhat.com/labs/jvmconfig/) but it gave me blank white page with links to labinfo only

hi redhat team the page seems unavailable

I just login and hit the "Go to Application" https://access.redhat.com/labs/jvmconfig/ and it works. If possible, would you open a support case and provide a screenshot? Thanks

Hi Rodger, i was able to reach the page when i switched to another internet source.I suspect the issue was related to security setting of my office internet incase it occurs again i shall raise it for analysis.Thank you

Could you add a java 11 environment?

Hi Mr Lee, This is already in our backlog. We will update here once it is done.

Thanks, Dong

Nice, tool. Is it still under development? When will the shenandoah GC be added?

Hi Sebastian, thank you for bringing this up. We have not yet made the decision to include shenandoah or not, but we will definitely consider your needs.