GCViewer (download) is a free open source tool to visualize data produced by
the Java VM options -verbose:gc
and -Xloggc:<file>
.
It also calculates garbage collection related performance
metrics (throughput, accumulated pauses, longest pause, etc.).
This can be very useful when tuning the garbage collection of a particular
application by changing generation sizes or setting the initial
heap size. See here for a useful
summary of garbage collection related JVM parameters.
For more information on tuning garbage collection on Sun JVMs, take
a look at the documentation provided by Oracle.
-Xloggc:<file>
[-XX:+PrintGCDetails]
-verbose:gc
-verbose:gc
option -verbose:gc
-Xverbosegc
-verbose:memory
Best results are achieved with: -Xloggc:<file>
-XX:+PrintGCDetails
GCViewer can also export the data in CSV (comma separated values) format, which may easily be imported into spreadsheet applications for further processing.
I have stopped improving GCViewer in 2008, however, there is a current fork by Jörg Wüthrich at https://github.com/chewiebug/GCViewer that aims at improving compatibility with current JVMs.
GCViewer has been developed with J2SE 1.4 and is licensed under LGPL.
The icons used were created and are copyrighted by Dean S. Jones, www.gallant.com/icons.htm
To find out more about how to use GCViewer, please read the article published in Jack Shirazi's performance newsletter.