liveBook · Manning

Profiler

A profiler is software that measures and analyzes program execution behavior and resource consumption to characterize performance and identify bottlenecks.

How 3 Manning books explain it

Troubleshooting Java, Second Edition

A profiler is a software tool that measures and records runtime behavior such as execution time, resource usage, and call activity.

How it is used
Guides investigations of hidden execution, abnormal CPU or memory use, latency, locks, deadlocks, and SQL behavior.
How deep it goes
Explains sampling, detailed profiling, resource monitoring, SQL interception, lock profiling, and thread dumps, while requiring follow-up diagnosis.
Examples
Uses VisualVM, producer-consumer threads, memory leaks, generated SQL, cross joins, locks, deadlocks, and thread dumps.
What you can do after
Diagnose/debug with VisualVM by sampling execution, narrowing code, measuring methods, inspecting resources, retrieving SQL, and escalating to lock or thread-dump analysis.

Read how Troubleshooting Java, Second Edition explains profiler →

100 Go Mistakes and How to Avoid Them

A profiler is a software tool that collects and analyzes runtime measurements such as execution time, memory use, or resource consumption of an application.

How it is used
Diagnoses application performance issues, contention, blocked goroutines, and possible memory leaks through runtime profiles.
How deep it goes
Explains profile types, HTTP activation, and CPU sampling, then shows commands for collecting and inspecting profiles.
Examples
Shows an HTTP server exposing pprof, a benchmark saving a CPU profile, and a command opening a saved profile.
What you can do after
Apply it via Go's pprof to collect CPU profiles and inspect where an application spends time.

Read how 100 Go Mistakes and How to Avoid Them explains profiler →

The Art of Code

A performance profiler measures and attributes software execution time or resource consumption to program operations.

How it is used
Uses runtime measurements to investigate efficient code, memory footprints, energy consumption, and environmental impact.
How deep it goes
Connects profiling to CPU behavior and memory allocation, but stops short of explaining setup or trace interpretation.
Examples
Names VisualVM, JDK Flight Recorder, Async-Profiler, py-spy, PerfView, pprof, cargo-flamegraph, and Clinic.js.
What you can do after
Diagnoses targeted performance or resource issues with language-specific profilers while accounting for overhead and setup costs.

Read how The Art of Code explains profiler →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.