Welcome to Jumping Bean's Java Performance Tuning Training Site

GCExplorer Process View

GCExplorer is a tool to do live monitoring of a Java applications memory management and garbage collection. It was released to celebrate Mandela Day on the 18th July 2014 by Jumping ean - a Java training and development house ,

The GCExplorer application was developed as an aid to teaching students about Java memory management, garbage collection algorithms and JVM command line options as part of our Java performance tuning training course. We hope that others find it useful too in learning to tune the garbage collector.

GCExplorer - Learn about Java Memory Management and Garbage Collection hands on! 

GCExplorer is a simple application, similar to VisualVM, which allows a user to monitor the JVM memory pools, heap space and garbage collection behaviour of a Java process. It differs from VisualVM in that it the user launches a standard Java process (GarbageGeneratorApp) which can be manipulated from GCExplorer, at runtime, to create new objects on the heap and the results observed visually in GCExplorer.

It allows the user to launch multiple instances of these processes with different JVM command line options to select between the available garbage collectors and allows for the tweaking of collector options. Users can visually see the effect their choices have on the memory management process of the JVM, the number of garbage collections that occur as well as the garbage collector pause time, promotion of object to old generation space and throughput.

 It does allow for the monitoring of existing JVM processes as well but this was not the main purpose for which the application was designed. It does not offer any ability to manipulate these processes at runtime.

 

Requirements:

  • Java 8
  • CPU utilisation - +/- 1 Core (we working on it)

Source Code: Source is available at Github.

Issue Tracker: Please log issue at Github

This application will not run in Java versions less than Java 8. It makes use of JavaFX the GUI framework to replace swing for Java desktop applications.  Your experience may vary!

Usage Notes: We plan to add some tutorials on how we use the application in our training. One bug you may come across is the JMX connection failing to connect to its defined port. If this happens just try launching the process from the Launch dialog again.

 

Web Start Instructions

The web start build has been signed by a self-signed certificate and you will need to lower your Java security setting to allow it to run.

  • Launch the Java "Control Panel". In Ubuntu you can just type "ControlPanel" at the command propt. The control panel application is found under "{JAVA_HOME//jre/bin/ControlPanel}",
  • Click on the security tab and whitelist
    "http://www.javaperformancetuning.co.za"
  • .Click to launch GCExplorer via webstart

 

The web start application takes a while to download, despite its relatively small size, but on subsequent run it will load from your java cache.  It may take a while for the splash screen to show.

Jar File Instructions:

  • Launch the application by entering "java -jar GCExplorerUI.jar" at the command line. You should also be able to double click on the jar file to launch the application from your file browser.

GCExplorer launch process dialog
The GCExplorer "Launch Process", "Attach to Process" and "Garbage Generation" dialogue boxes.

GCExplorer-attach-to-process-dialogGCExplorer garbage generation dialog

 

 

Options! Everyone loves having options!

Coming soon:

  • Tutorials,
  • Road map,
  • More information on the training!