IBM Support

Eclipse Memory Analyzer Tool with DTFJ and IBM Extensions

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

There are two builds of this tool. One build is to read dumps produced by IBM Java 8 and below. The other build is to read dumps produced by IBM Semeru Runtimes Java. You can install both builds in different directories and use the appropriate one depending on your dump type. Both builds process dumps produced by a HotSpot JVM the same.
  1. Ensure IBM Semeru Runtimes Java 17 JDK is on your PATH
  2. Download:
    1. To read dumps produced by IBM Java 8 and below:
      1. Windows x86_64/amd64
      2. macOS x86_64/amd64
      3. macOS arm64/aarch64
      4. Linux x86_64/amd64
      5. Linux arm64/aarch64
      6. Linux POWER/ppc64le
      7. Eclipse archived update site
    2. To read dumps produced by IBM Semeru Runtimes Java:
      1. Windows x86_64/amd64
      2. macOS x86_64/amd64
      3. macOS arm64/aarch64
      4. Linux x86_64/amd64
      5. Linux arm64/aarch64
      6. Linux POWER/ppc64le 64-bit
      7. Eclipse archived update site
  3. On macOS, open the Terminal application, change directory to where you downloaded the file and run:
    xattr -d com.apple.quarantine *.tar.gz
  4. Unzip or untar the downloaded file
  5. Launch MAT:
    1. Windows: MemoryAnalyzer.exe
    2. macOS: Eclipse.app
    3. Linux: MemoryAnalyzer
Ensure a large -Xmx if loading large dumps. To change JVM parameters, edit MemoryAnalyzer.ini (Windows/Linux) or Eclipse.app/Contents/Eclipse/MemoryAnalyzer.ini (macOS).

Additional Information

The Eclipse Memory Analyzer Tool is licensed under the Eclipse Public License Version 2.0. The source code is available at https://www.eclipse.org/mat/. The builds on this page are built by using extra patches to MAT that are available for download at https://public.dhe.ibm.com/software/websphere/appserv/support/tools/iema/mat_patches.zip.
Revision History
  • 29 May 2024:
  • 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
These downloads are provided as is without any warranty or support. For any issues, contact Kevin Grigorenko (kevin.grigorenko@us.ibm.com) and we'll try to resolve any issues as time permits.

Document Location

Worldwide

[{"Type":"MASTER","Line of Business":{"code":"LOB67","label":"IT Automation \u0026 App Modernization"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"ARM Category":[{"code":"a8m3p0000000rJtAAI","label":"IBM WebSphere Liberty-All Platforms-\u003ELiberty Profile-\u003EOutOfMemory"},{"code":"a8m50000000CdASAA0","label":"WebSphere Application Server traditional-All Platforms-\u003EOutOfMemory"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB08","label":"Cognitive Systems"},"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG9NGS","label":"IBM Java"},"ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
29 May 2024

UID

ibm16537402