Skip to content

GC ​

Inspect allocation and garbage-collection activity separately from the timing campaign.

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")])
result = diagnose(heap; project=dirname(Base.active_project()), threads=1,
    tools=[:gc], reports="results/heap-gc")
display(only(result["records"]))

The saved diagnostic JSON, recorded on Julia 1.13.0, contains: 98,494 allocated bytes, 0 s GC, 0.0001555 s operation time. Execution completed and the oracle passed.

A zero GC sample does not show that the operation allocated nothing.

Open the same interactive export

Download the serialized plot

Open source · Report an issue · Contributions welcome