Skip to content

System dump

System dumps, often known as core dumps, are platform-specific and contain a raw binary dump of the process memory. This type of dump has a complete copy of the Java heap, including the contents of all Java objects in the application.

To examine a system dump you can use the OpenJ9 dump viewer (jdmpview), a platform-specific debugging tool, or the Eclipse Memory Analyzer tool (MAT).

If you want to use MAT to analyze your system dump, you must install the Diagnostic Tool Framework for Java (DTFJ) plugin in the Eclipse IDE. Select the following menu items:

Help > Install New Software > Work with "IBM Diagnostic Tool Framework for Java" > IBM Monitoring and Diagnostic Tools > Diagnostic Tool Framework for Java   

Enabling a full system dump (AIX, Linux, and macOS)

If you require a system dump that contains details of all the native threads that are running, you must change the resource limits for your operating system. Otherwise, the native thread details that are stored in the dump are only for the native thread that was running when the VM ended.

  1. Set the system resource limits by running the following commands:

ulimit -c unlimited ulimit -n unlimited ulimit -d unlimited ulimit -f unlimited


  • -c sets core files
  • -n sets the number of open files
  • -d sets the data limit
  • -f sets the file limit
  1. For AIX systems, use the system management interface tool (SMIT) to enable a full CORE dump that is not a pre-430 style CORE dump. You can also set this configuration with the following command line option:

chdev -l sys0 -a fullcore='true' -a pre430core='false'