Skip to content

[Lilit summer student project] Add memory measurements to interpreted PyROOT - #190

Closed
oshadura wants to merge 3 commits into
root-project:masterfrom
oshadura:lilit-memory
Closed

[Lilit summer student project] Add memory measurements to interpreted PyROOT#190
oshadura wants to merge 3 commits into
root-project:masterfrom
oshadura:lilit-memory

Conversation

@oshadura

Copy link
Copy Markdown
Contributor

Reincarnation of #95

@guitargeek

Copy link
Copy Markdown
Contributor

Thank you @oshadura and Lilit for this work, and apologies that it took so long to get back to it!

The problem this PR tackled was very real. The memory measurements were the most fragile part of these benchmarks, and the idea of centralizing them in a shared RBSupport utility used by both the interpreter and PyROOT benchmarks was exactly right. That structure lives on in #307, which implements the same feature natively (via fork/wait4() instead of shelling out to /usr/bin/time), so the measurement now also works on systems where the time binary is not installed.

So I'm closing this PR as superseded by #307.

@guitargeek guitargeek closed this Sep 3, 2026
guitargeek added a commit that referenced this pull request Sep 3, 2026
RB::RunCommandMeasuringRss() runs a command like std::system() and
additionally reports the maximum resident set size of the child process
tree via wait4(). This is the same value that "/usr/bin/time -v"
reports as "Maximum resident set size", but without depending on an
external time binary, temporary files or output parsing.

This supersedes the approach of PR #190, which kept shelling out to the
time binary.
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.

3 participants