async-profiler vs JProfiler
async-profiler
github.comJProfiler
ej-technologies.comSide by side
| Figure | async-profiler | JProfiler |
|---|---|---|
| Price from | Free | — |
| Free plan | Yes | — |
| Free trial | — | Yes |
| Open source | — | — |
| Windows | — | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 4 |
| Spec score · Profiling Software | 8.1 (#7) | 8.3 (#3) |
| Purpose | async-profiler is a low-overhead sampling profiler for Java that avoids the safepoint bias problem. | JProfiler analyzes JVM data to identify performance bottlenecks, memory leaks, slow JDBC queries, and costly HTTP calls. |
Plans
JProfiler
- JProfiler$549, paid once
- JProfiler with 1 yr Support and Upgrades$768, paid once
- JProfiler Floating License$2,199, paid once
- JProfiler Floating License with 1 yr Support and Upgrades$3,078, paid once
In their own words
async-profiler
async-profiler is a free, self-hosted sampling profiler for Java designed to keep overhead low and avoid safepoint bias. It works with OpenJDK and other runtimes based on the HotSpot JVM, and stack traces can include non-Java threads as well as native and kernel frames. It profiles CPU time, Java-heap and native-memory allocations, memory leaks, contended locks, and hardware or software performance counters. Documented modes include CPU, allocation, wall-clock, Java-method, and multiple-events profiling. Results can be saved as collapsed stacks, flame graphs, HTML tree views, or text; an interactive Flame Graph can be viewed in a browser. Officially maintained builds are available for Linux and macOS on x64 and arm64. Developers can use the Java API as a Maven dependency, and IntelliJ IDEA includes async-profiler in its Java Profiler settings. It can profile Java processes in Docker or LXC from inside a container or from the host. Building it requires make, GCC 7.5.0 or later or Clang 7.0.0 or later, static libstdc++, and JDK 11 or later.
JProfiler
JProfiler is a desktop profiler for Java and Kotlin applications on the JVM. It helps locate performance bottlenecks, memory leaks, slow JDBC queries and costly HTTP calls. Its analysis covers CPU and memory use, heaps, threads and garbage collection, with high-level probes for JDBC, JPA, MongoDB and Kafka operations. HTTP profiling examines incoming and outgoing calls, and the product supports Spring and JEE components. Users can compare snapshots, inspect JFR recordings, and automate offline recording through triggers or an API. Documented IDE integrations include IntelliJ IDEA, Eclipse, NetBeans and VS Code. JProfiler can profile JVMs in Kubernetes and Docker and connect to remote JVMs through SSH without remote installation or agent deployment. It runs on the user's infrastructure and does not send profiling data to ej-technologies or third parties; cloud AI agents may send data they receive to their provider. A free evaluation license has restrictions. The perpetual single license costs $549 as a one-time purchase; other listed licenses include floating options and support-and-upgrade bundles.