Readme $Id: $

GCViewer 1.15
=============

GCViewer is a little tool that visualizes verbose GC output
generated by Sun and IBM Java Virtual Machines.


You can start GCViewer by simply double-clicking on gcviewer.jar
or running java -jar gcviewer.jar


Supported verbose:gc formats are:

- Sun JDK 1.2.2/1.3.1/1.4 with the option -verbose:gc
- Sun JDK 1.4 with the option -Xloggc:<file> (preferred)
- IBM JDK 1.3.1/1.3.0/1.2.2 with the option -verbose:gc


GCViewer shows a number of lines etc. These are:

- Full GC Lines:
     o Black vertical line at every Full GC
- Inc GC Lines:
     o Cyan vertical line at every Incremental GC
- GC Times Line:
     o Green line that shows the length of all GCs
- GC Times Rectangles:
     o Dark grey rectangle at every Full GC
     o Light grey rectangle at every Incremental GC
     o Grey rectangle at every 'normal' GC
- Total Heap:
     o Red line that shows heap size
- Used Heap:
     o Blue line that shows used heap size


GCViewer also provides some metrics:

- Acc Pauses:
     o Sum of all pauses due to GC
- Avg Pause:
     o Avarage length of a GC pause
- Min Pause:
     o Shortest GC pause
- Max Pause:
     o Longest GC pause
- Total Time:
     o Time data was collected for (only Sun 1.4/1.2.2 and IBM 1.3.1/1.3.0/1.2.2)
- Footprint:
     o Maximal amount of memory allocated
- Throughput:
     o Time percentage the application was NOT busy with GC
- Freed Memory:
     o Total amount of memory that has been freed
- Freed Mem/Min:
     o Amount of memory that has been freed per minute


Notes
=====

If you have problems with the IBM format, please check that
every line of information is really in one line and not wrapped.

The IBM format actually provides a lot more information than is
visualized.

Sun JDK 1.3.1/1.4 with -verbose:gc does not provide a timestamp.
Therefore 'Total Time', 'Throughput', and 'Freed Mem/Min' cannot
be calculated.

The CVS format is quite useful for importing the data to a
spreadsheet application.

Provided are a German, an English and a Swedish localStrings.properties
file. If someone feels the need to translate these to another
language, please do so. I will be more than glad, to include it
in a future version of this tool.


Enjoy!

Hendrik Schreiber
<hs@tagtraum.com>
