Skip to content

Printing information about maxRSS#85

Merged
tmcgilchrist merged 1 commit intotarides:mainfrom
udesou:adding-max-rss
Apr 17, 2026
Merged

Printing information about maxRSS#85
tmcgilchrist merged 1 commit intotarides:mainfrom
udesou:adding-max-rss

Conversation

@udesou
Copy link
Copy Markdown
Contributor

@udesou udesou commented Mar 10, 2026

Used Claude to help me implement it as a new collector and using the C stubs to get the RSS from Linux/FreeBSD/macOS using their own API.

@tmcgilchrist
Copy link
Copy Markdown
Collaborator

Worth seeing if we can support macOS and FreeBSD. No idea what the Windows API for this information is.

@udesou udesou force-pushed the adding-max-rss branch 2 times, most recently from c7150a9 to 129a360 Compare April 17, 2026 01:43
Add platform-specific C stubs to sample VmHWM (Linux),
proc_pidinfo (macOS) and sysctl KERN_PROC (FreeBSD) on each
poll cycle. The maximum observed value is reported in both
human-readable and JSON output as "Max RSS (kB)" / "max_rss_kb".

This requires an on_poll callback in the consumer_config so
that the RSS sampler runs on every event-polling iteration.
@tmcgilchrist tmcgilchrist merged commit 3d37a0b into tarides:main Apr 17, 2026
10 of 11 checks passed
udesou added a commit to udesou/running-ng that referenced this pull request Apr 17, 2026
Use olly gc-stats --json and perf stat --json directly, producing a
.json sidecar file (NDJSON, one compact object per invocation) next
to each .log.  The .log keeps the prologue + benchmark stderr + the
pretty-printed JSON after the *****; the .json is the primary input
for downstream analysis.

Drop /usr/bin/time (time_stats) and OCAMLRUNPARAM=v=... (gc_verbose /
gc_verbose_oxcaml) from the example and macrobenchmark configs —
olly now reports wall/CPU/GC times, allocation stats, collection
counts, and (after tarides/runtime_events_tools#85) max_rss_kb, so
no custom parsers are needed.

Enforce a minimum runtime_events_tools version in the launch script
by checking the OLLY_DIR git repo contains the PR anupli#85 feature commit.
plot_gc_sweep.py now reads the .json sidecar first (with regex
fallback for old text logs) and surfaces max_rss_mb as a heatmap
metric.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants