Skip to content

Valgrind Massif ​

Inspect native heap growth for a real workload. A plan checks availability and describes a command; it does not execute it.

From examples/kitchen-sink in the source checkout, run julia setup-linux.jl on Linux or WSL. Start Julia with julia --project=.controller/linux to plan the supplied native-workload.jl:

julia
using PerfChecker
plan = native_tool_plan(:massif, "native-workload.jl";
    project=dirname(Base.active_project()), output="exports/massif")
display(plan["availability"])
display(plan["arguments"])

From the same directory, prepare the native support files and run only this tool:

sh
julia --startup-file=no --project=.controller/linux setup-native.jl
julia --startup-file=no --project=.controller/linux native-run.jl datastructures massif

The existing Linux/Julia 1.13.0 receipt uses 512 events and three lifecycles, including startup. Recorded status: completed, exit 0, massif.1685 and log. The workload oracle passed.

The native heap timeline covers startup as well as the workload. It is distinct from Julia allocation totals.

Open the same interactive export

Download the serialized plot

Oxygen has separate per-tool receipts; inspect its completion/timeout states instead of transferring a container-workload verdict.

Open source · Report an issue · Contributions welcome