Recent Posts



    Tag Cloud

    stServer suggested Java arguments

    Low GC pause with large memory caches will give the highest performance.

    Below are the standard JVM server parameters. 

    G1 Garbage Collector

    • -XX:+UseG1GC
      • Turn on the G1 garbage collector. 
    • -XX:MaxGCPauseMillis=250
      • Target a maximum pause time of no more than 250 milliseconds.  

    Young Generation

    • -XX:PermSize=256m
      • The size of the permanent size. 
    • -XX:MaxPermSize=256m
      • Set the max and start size of the permanent memory segment. 

    DO NOT over tune the G1GC by setting -XX:NewSize=512m -XX:MaxNewSize=512m -XX:SurvivorRatio=2

    Logging Options

    • -verbose:gc
      • Verbosely log the garbage collection. 
    • -XX:+PrintGCDetails
      • Print the GC details
    • -XX:+PrintGCTimeStamps
      • Print the timestamps of when the GC occurred. 
    • -XX:+PrintGCApplicationStoppedTime
      • Print the time that the application was actually stopped. 
    • -XX:+PrintHeapAtGC
      • Print the heap when a full GC

    Miscellaneous Options

    • -server
      • Turn on the server compiler
    • -Xss8M
      • Stack size of 8 megs. 
    • -XX:+ExplicitGCInvokesConcurrent
      • When System.gc() is called do not stop the world. Just schedule a background GC. 
    • -XX:-OmitStackTraceInFastThrow
      • Always show the full stack trace for exceptions like NullPointerException
    • -d64
      • Turn on 64 bit JVM