async-profiler
Low overhead sampling profiler for Java that does not suffer from Safepoint bias.
Why consider async-profiler?
async-profiler is an open-source low-overhead sampling CPU and memory profiler for the JVM written in C++ and Java by Andrei Pangin. Utilizing HotSpot AsyncGetCallTrace APIs, it eliminates safepoint bias to profile Java applications accurately under production load.
Learn async-profiler by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide2 sections
Overview of async-profiler
async-profiler profiles Java CPU time, heap allocations, and lock contentions with negligible production overhead.
Quickstart
./asprof -d 30 -f /tmp/flamegraph.html <pid>async-profiler is licensed under the Apache License Version 2.0.
Related tools
More options with a similar category or technology profile.
diskus
Minimal, fast alternative to du -sh written in Rust using multi-threaded directory traversal.
peco
Simplistic interactive filtering tool for Unix pipelines, process lists, and file trees.
Dapr CLI
Command-line tool for managing Dapr distributed application runtime environments and sidecars.
Freeze
Generate beautiful image screenshots and SVGs of code snippets and terminal outputs.