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.
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.
- Set the system resource limits by running the following commands:
ulimit -c unlimited
ulimit -n unlimited
ulimit -d unlimited
ulimit -f unlimited
-csets core files
-nsets the number of open files
-dsets the data limit
-fsets the file limit
- 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'