$git clone https://github.com/irockel/tda> [!IMPORTANT] > > 2026-05-11 - TDA 3.2 available. > * VisualVM Plugin: proper integration in VisualVM working again. > * UI: Updated jsvg version to 2.1.0. > > 2026-04-18 - TDA 3.1 available. > * VisualVM Plugin: proper integration in VisualVM working a
| 1 | [](https://github.com/irockel/tda/actions/workflows/build.yml) |
| 2 | [](https://github.com/irockel/tda/issues?q=is%3Aissue+is%3Aopen+label%3Adependencies) |
| 3 | [](https://libraries.io/github/irockel/tda) |
| 4 | [](LICENSE) |
| 5 | |
| 6 | # TDA - Thread Dump Analyzer |
| 7 | |
| 8 | > [!IMPORTANT] |
| 9 | > |
| 10 | > **2026-05-11 - TDA 3.2 available.** |
| 11 | > * **VisualVM Plugin**: proper integration in VisualVM working again. |
| 12 | > * **UI**: Updated jsvg version to 2.1.0. |
| 13 | > |
| 14 | > **2026-04-18 - TDA 3.1 available.** |
| 15 | > * **VisualVM Plugin**: proper integration in VisualVM working again. |
| 16 | > * **Logfile Parsing**: Support for UTF16 files. |
| 17 | > * **UI**: some small fixes. |
| 18 | > |
| 19 | > **2026-01-30 - TDA 3.0 is now available!** 🚀 |
| 20 | > This major release brings significant enhancements: |
| 21 | > * **Extended MCP Server**: Now with **Carrier Thread Pinning** detection and support for **SMR (Safe Memory Relocation)** parsing. |
| 22 | > * **Modernized UI**: Completely refreshed look and feel using **FlatLaf**. |
| 23 | > * **Usability Improvements**: Fixed several long-standing issues, including improved split-pane management and faster parsing. |
| 24 | > * **Native macOS Support**: Now providing a dedicated macOS binary. |
| 25 | > * **Logging**: Especially for troubleshooting in MCP Mode. |
| 26 | |
| 27 | TDA (Thread Dump Analyzer) for Java is a powerful yet lightweight Swing GUI and **MCP Server** for analyzing Thread Dumps and Heap |
| 28 | Information generated by the Java VM. It is designed to assist in diagnosing performance issues, deadlocks, and |
| 29 | memory problems in Java applications. With its MCP capabilities, TDA can be seamlessly integrated into AI-powered |
| 30 | development workflows. |
| 31 | |
| 32 | TDA supports Java 1.4.x through Java 21+, including specialized support for **Virtual Threads** (Java 19+) and **JSON-based thread dumps** |
| 33 | (Java 21+, experimental). |
| 34 | |
| 35 | ## 📋 Table of Contents |
| 36 | - [🚀 Key Features](#-key-features) |
| 37 | - [📦 Installation](#-installation) |
| 38 | - [1. Self-contained JAR](#1-self-contained-jar) |
| 39 | - [2. VisualVM Plugin](#2-visualvm-plugin) |
| 40 | - [3. macOS Binary (DMG)](#3-macos-binary-dmg) |
| 41 | - [🛠 Usage Modes](#-usage-modes) |
| 42 | - [1. Standalone Application](#1-standalone-application) |
| 43 | - [2. JConsole Plugin](#2-jconsole-plugin) |
| 44 | - [3. VisualVM Plugin](#3-visualvm-plugin-1) |
| 45 | - [4. JSON-based Thread Dumps (Experimental)](#4-json-based-thread-dumps-experimental) |
| 46 | - [5. MCP Server (Headless Analysis)](#5-mcp-server-headless-analysis) |
| 47 | - [🏗 Building from Source](#-building-from-source) |
| 48 | - [🛠️ Troubleshooting](#-troubleshooting) |
| 49 | - [📜 Changelog](CHANGELOG.md) |
| 50 | - [📜 License](LICENSE) |
| 51 | |
| 52 | ## 🚀 Key Features |
| 53 | |
| 54 | * **Comprehensive Thread Dump Parsing**: Parse multiple thread dumps from log files and display them in an intuitive tree structure. |
| 55 | * **Virtual Threads Support**: Analyze virtual thread states, pinning issues, and carrier thread relationships. |
| 56 | * **Statistical Analysis**: Detailed statistics about thread states, monitors, and waiting/locking threads. |
| 57 | * **Long-Running Thread Detection**: Identify threads that persist across multiple dumps, helping find "hung" or inefficient code. |
| 58 | * **Deadlock Detection**: Automatic identification of deadlocks with detailed monitor information. |
| 59 | * **JSON-based Thread Dumps**: Support for parsing JSON-formatted thread dumps created with `jcmd <pid> Thread.dump_to_file -format=json <file>`. |
| 60 | *Note: JSON dumps currently provide basic information (name, tid, stack trace) but lack details like thread states or native IDs. For comprehensive analysis, textual dumps are recommended.* |
| 61 | * **Class Histogram Analysis**: Integrated analysis of heap objects (via `-XX:+PrintClassHistogram`). |
| 62 | * **Flexible Filtering & Categorization**: Use custom filters and categories to manage large numbers of threads. |
| 63 | * **Model Context Protocol (MCP) Support**: He |