Skip to content
SPECIFICTION
Get listed

async-profiler vs Valgrind

async-profiler

github.com

Valgrind

valgrind.org

Side by side

Figureasync-profilerValgrind
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
macOSYesYes
LinuxYesYes
Android—Yes
APIYes—
Plans published11
Spec score · Profiling Software8.1 (#7)7.4 (#22)
Purposeasync-profiler is a low-overhead sampling profiler for Java that avoids the safepoint bias problem.Valgrind is an instrumentation framework for building dynamic analysis tools that detect memory and threading bugs and profile programs.

Plans

async-profiler

  • Community open-sourceFree

async-profiler pricing →

Valgrind

  • ValgrindFree

Valgrind pricing →

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.

Visit github.com

Valgrind

Valgrind has no write-up on Specifiction yet; its figures are above.

Visit valgrind.org