Skip to content

test(g500-ladder): attribute the rung peak RSS to page cache, not engine memory (#1473) - #1550

Merged
DecisionNerd merged 1 commit into
mainfrom
test/1473-rung-peak-rss-page-cache
Sep 22, 2026
Merged

DecisionNerd merged 1 commit into
mainfrom
test/1473-rung-peak-rss-page-cache

Conversation

@DecisionNerd

@DecisionNerd DecisionNerd commented Sep 22, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Settles #1473 with direct measurement instead of inference: two complete, passed S18 rungs on the same source, binaries, host, and work root, with a cgroup-v2 sampler attached to the delegated benchexec slice.

Verdict

The rung-level peak RSS figure is cgroup memory usage dominated by page cache, not engine memory:

Quantity Run 1 Run 2
Rung-level peak (BenchExec memory column) 759.0 MB 754.8 MB
Tool scope memory.peak (kernel) — 761.0 MB
— file (page cache) at peak — 568.0 MB (74.6%)
— anon at peak — 166.6 MB (21.9%)
Process peak (certify phase VmHWM max) 246.4 MB 239.8 MB
  • Page cache outnumbers anonymous memory 3.41:1 at the peak; the cgroup peak reproduces within 0.6% across runs while the rung moves 32.3 GB of physical I/O.
  • Process VmHWM stays 3.2x below the cgroup peak: the engine's bounded working set is real and the rung peak tracks bytes moved, exactly as the issue hypothesized.
  • Since the fix(scale): resolve S20–S22 process RSS growth blocking S24 admission #1278 repair the admission gate already consumes the process VmHWM authority, with a separate BenchExec kill ceiling for page cache; no gate or engine change is indicated. The committed diagnostic and sanitized evidence are the record.

Changes

  • benchmarks/diagnostics/rss_1473_cgroup.py — reusable, non-admission cgroup memory-attribution diagnostic (per-sample hierarchical memory.stat, kernel memory.peak, per-child-cgroup facts before systemd destroys inactive tool scopes, summed descendant VmHWM).
  • docs/development/evidence/rung-rss-1473.{json,md} — sanitized two-run evidence and verdict.
  • benchmarks/README.md — one-paragraph pointer to the attribution evidence beside the existing RSS-authority note.

Validation

  • ruff check/format clean on the new diagnostic; python -m py_compile passes.
  • make -C benchmarks smoke-python: the unittest discovery lane passes except one pre-existing, environment-dependent failure (provider work volume is unavailable in the fly-adapter/provider-run lane), verified identical on the pristine base via git stash — untouched by this diff; CI is the authority for that lane.
  • No Rust changes: cargo gates and Bazel are unaffected. Raw sample streams remain local; the committed JSON carries byte counters, digests, and derived ratios only.

Closes #1473


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

@coderabbitai

coderabbitai Bot commented Sep 22, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository: CurateLabs/graphforge/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 6559338b-7369-4e5f-b4a9-b00b0083c4e6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Warning

Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added documentation Improvements or additions to documentation release:none No release note or version impact labels Sep 22, 2026
@DecisionNerd
DecisionNerd added this pull request to the merge queue Sep 22, 2026
Merged via the queue into main with commit 351e2fa Sep 22, 2026
23 checks passed
@DecisionNerd
DecisionNerd deleted the test/1473-rung-peak-rss-page-cache branch September 22, 2026 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation release:none No release note or version impact

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test(g500-ladder): the rung peak RSS matches no phase and tracks bytes moved, not memory held

1 participant