Skip to content

Heap snapshot ​

Capture GC-managed objects in the diagnostic worker after scenario verification.

From examples/kitchen-sink in the source checkout, run julia setup.jl core. Then start Julia with julia --project=. for the code below.

julia
using PerfChecker
catalog = load_scenario_catalog("scenarios.toml")
heap = select_scenarios(catalog,
    [Dict("id"=>"events-heap", "implementation"=>"datastructures")])
snapshot = diagnose(heap; project=dirname(Base.active_project()), tools=[:heap],
    threads=1, timeout=180, reports="results/heap-snapshot")
display(only(snapshot["records"]))

The recorded receipt records a completed capture, passing oracle and 190,003,317-byte redacted snapshot.

Open the same interactive export

Download the serialized plot

The snapshot covers the whole worker's GC heap. It excludes native/device memory and does not measure allocation activity during one call.

Open source · Report an issue · Contributions welcome