How To
Summary
The Eclipse Memory Analyzer Tool (MAT) is used for investigating Java memory issues such as OutOfMemoryErrors. This page provides downloads for the Eclipse Memory Analyzer Tool along with the IBM DTFJ extension and IBM Extensions for Memory Analyzer plugins pre-installed.
Steps
- Ensure Java 21 is on your PATH (preferably, an IBM Semeru Runtimes Java 21 JDK to enable advanced jvmpview extensions)
- Download:
- To read dumps produced by IBM Java 8 and below:
- To read dumps produced by IBM Semeru Runtimes Java:
On macOS, open the Terminal application, change directory to where you downloaded the file and run:
xattr -d com.apple.quarantine *.tar.gz- Unzip or untar the downloaded file
- If you would like to configure MAT options:
- Edit the following file:
- Windows/Linux: MemoryAnalyzer.ini
- macOS: Memory Analyzer Tool*.app/Contents/Eclipse/MemoryAnalyzer.ini
If you want to set the JVM that MAT launches with, add the following lines above -vmargs and replace the directory with the full path to the Java bin directory; for example:
-vm C:\Program Files\Java\jdk-21.0.7+6\bin\If you want to change JVM arguments, add/edit lines under -vmargs; for example:
-vmargs -Xmx10g
- Edit the following file:
- Launch MAT:
- Windows: MemoryAnalyzer.exe
- macOS: Memory Analyzer Tool for IBM Java.app or Memory Analyzer Tool for IBM Semeru Runtimes.app
- Linux: MemoryAnalyzer
Additional Information
- 9 February 2026:
- Thread Highlights extension:
- Show any thread locals larger than 50MB
- Extract various Maximo details
- Extract various SQL query details
- Thread Highlights extension:
- 13 January 2026:
- 12 January 2025:
- A significant issue has been found with IBM Java & IBM Semeru Runtimes operating system core dumps where some active threads may be marked as unreachable. With MAT's default virtual garbage collection when loading a dump, this might remove significant live chunks of the heap from view. This build of MAT includes a workaround while the DTFJ issue is being investigated and this workaround forces all threads marked as ALIVE to be strong GC roots (PR 150).
- Avoid the issue where one support engineer opens the dump in the right build of MAT, and then another support engineer launches the wrong build of MAT and "successfully" re-opens that same dump with the wrong build of MAT which can cause all kinds of issues with operating system core dumps (PR 152). MAT will now give the same error message on re-opening if the wrong build of MAT is used.
- Either build of MAT may now be used to open PHDs because PHDs are the same for IBM Java and IBM Semeru Runtimes (PR 154).
- The Thread Highlights query has been moved to IBM Extensions } Java SE Runtime
- Add various thread highlights for Maximo.
- 4 November 2025:
- Upgrade to Eclipse 2025-09
- 18 August 2025:
- Fix performance regression in leak suspects report due to cache thrashing.
- Fix the ability to use advanced OpenJ9 jdmpview & related commands when MAT is run on top of IBM Semeru Runtimes.
- 2 July 2025:
- Upgrade base MAT to latest commits
- Add WebSphere Liberty leaked application classloaders query (currently requires OS core dump or HPROF): IBM Extensions } WebSphere Application Server } Class Loaders } Liberty } Merge strong reference paths to GC roots for Liberty AppClassLoaders. In addition to listing leaked classloaders, the tree result shows the merged shortest paths to GC roots for those classloaders.
- Upgrade to Eclipse 2025-06
- 16 April 2025:
- Upgrade base MAT to latest commits
- Set default option -Dorg.eclipse.mat.parser.internal.snapshot.ObjectMarkerFactory.useOldMarker=true to use the old ObjectMarker code pending resolution of issue 57
- 25 March 2025:
- Upgrade Base MAT to 1.17.0
- Upgrade to Eclipse 2024-12
- New *.log.index file which saves all log entries from MAT for easier post-mortem review of parse issues. This includes a new message which shows whether the dump was parsed with keep unreachable objects: "Keep unreachable objects preference is set to false
- Add WebSphere Liberty classloader resolver
- 14 January 2025:
- Upgrade Base MAT to 1.16.1
- Upgrade to Eclipse 2024-12. Should fix older Windows crashes through https://github.com/eclipse-platform/eclipse.platform.swt/pull/1568
- Standalone update sites now compiled with Java 8 for use in older Eclipse installations
- Add List Distinct Objects query
- Add various queries and resolvers for Session Initiation Protocol (SIP) in WebSphere traditional and Liberty
- Better handling of IBM Semeru Runtimes V8 dumps
- Add query to analyze com.ibm.ws.cluster.selection.RouterMediator memory issues
- 20 September 2024:
- Upgrade DTFJ to the ones from IBM Java 8.0.8.30 and IBM Semeru Runtimes 21.0.4.1. This resolves errors related to J9BuildFlags.env_data64 with core dumps from newer Semeru JVMs.
- Upgrade to Eclipse 2024-09. Note that Eclipse 2024-09 requires more recent versions of Windows; for example, Windows Server 2016 no longer works.
- Running MAT now requires Java 21. The requirement to use IBM Semeru Runtimes is removed and HotSpot JVMs may also be used; however, Semeru is generally recommended. Semeru is required for some advanced jdmpview extensions.
- The MAT builds now build and package the com.ibm.dtfj plugin directly rather the previous patching that was done. This should resolve previous upgrade issues due to Eclipse class caching.
- 29 May 2024:
- Downgrade base MAT to commit 35b3ff77c1d8160550bf1c921a006c5bf018c924 pending resolution of issue 57.
- 22 May 2024:
- Upgrade to Eclipse 2024-03
- Detect dump truncation using DTFJ and raise a fatal error by default for truncated dumps. Though not recommended, such errors may be avoided under settings } Memory Analyzer } DTFJ Parser } How to perform a check of the reliability of the dump != Raise an error and stop processing if the dump is considered unreliable
- Detect if the dump was produced by IBM Semeru Runtimes but the running version of MAT is built for IBM Java dumps, or vice versa, and raise a fatal error by default if there is such a mismatch. The latter configuration is controlled with
-Dorg.eclipse.mat.dtfj.implementation=IBM Semeru Runtimes. Though not recommended, such errors may be avoided under settings } Memory Analyzer } DTFJ Parser } How to perform a check of the reliability of the dump != Raise an error and stop processing if the dump is considered unreliable - Fix duplicate WAS HTTP sessions for PHDs
- Change "Problem Suspect" to "Large Consumer" in the leak suspects report
- Update query that converts an exception object's stack array to a human readable stack trace from long[]'s to also support int[]'s
- 5 December 2023:
- Update to MAT 1.15
- Upgrade to Eclipse 2023-09
- Update to IBM Java DTFJ 8.0.8.15 and Semeru DTFJ 17.0.9.0
- Add Eclipse archived update site downloads
- 31 July 2023:
- Update base MAT
- Upgrade DTFJ from IBM Java 8.0.8.6 and Semeru 17.0.7.0
- Enhance tWAS HTTP sessions query to show proper timezone-adjustment, oldest & newest session creation time, oldest & newest session access time, and session count by application name
- Enhance tWAS HTTP session holder name resolver for client server mode
- Add Liberty product version and installation directory to WAS Overview query
- 5 June 2023: Enhance WAS HTTP Session queries, and add Java 17 JVM arguments to handle J9 dumps.
- 9 May 2023:
- Update base MAT to 1.14 and Eclipse 2023-03
- MAT now requires launching with Java 17
- Update DTFJ to 8.0.8.0/11.0.18.0
- The files have been renamed to clarify the different dumps they can load:
- IBM Java: From com.ibm.java.diagnostics.memory.analyzer.MemoryAnalyzer-* to com.ibm.java.diagnostics.memory.analyzer.MemoryAnalyzer.ibmjava-*
- IBM Semeru Runtimes: From com.ibm.java.diagnostics.memory.analyzer.MemoryAnalyzer.openj9-* to com.ibm.java.diagnostics.memory.analyzer.MemoryAnalyzer.semeru-*
- New IEMA queries to understand the retained heap utilization of WAS XCI
- 27 December 2022:
- Update base MAT including leak suspects optimization
- Update DTFJ to 8.0.7.20/11.0.17.0
- Add Help } Diagnostics
- Add Thread Stack menu item
- 16 August 2022: Update DTFJ versions and the latest MAT
- 23 March 2022: Update DTFJ versions and Cognos extensions
- 10 December 2021: First version
Related Information
Document Location
Worldwide
Was this topic helpful?
Document Information
Modified date:
09 February 2026
UID
ibm16537402