Skip to content

DPL Analysis: do not build the tasks a device does not run - #16036

Merged
ktf merged 1 commit into
AliceO2Group:devfrom
ktf:pr16036
Nov 3, 2026
Merged

ktf merged 1 commit into
AliceO2Group:devfrom
ktf:pr16036

Conversation

@ktf

@ktf ktf commented Nov 2, 2026 •

Copy link
Copy Markdown
Member

Every device used to construct all the analysis tasks of its executable
only to describe them, although the driver already passes their specs on
stdin. Their constructors book histograms and set up CCDB objects, and in
the reader, the writer and the other internal devices they also start the
ROOT interpreter. A device now builds only its own task and takes the
specs of the others from the driver. Without a workflow on stdin, or with
--clone, everything is still built.

This is a startup / cleanup change, not a memory saving. On Hyperloop
(test 794645) libCling and the .pcm modules are no longer mapped in the
reader, whose RSS drops by ~180 MB and PSS by ~100 MB, but these are
shared, file-backed pages which the task devices still use: the total PSS
of the test is unchanged (2.2 GB) and so is the private dirty memory of
each device. Output identical to the reference on 120/120 DFs; all 19
devices exit cleanly.

@ktf
ktf requested a review from a team as a code owner November 2, 2026 13:01
Every device used to construct all the analysis tasks of its executable
only to describe them, although the driver already passes their specs on
stdin. Their constructors create histograms, which start the ROOT
interpreter in the reader, the writer and the other internal devices.
A device now builds only its own task and takes the specs of the others
from the driver. Without a workflow on stdin, or with --clone, everything
is still built.

Reader of o2-testworkflows-analysis-histograms on macOS: physical
footprint 120.5 MB -> 74.7 MB, libCling and the .pcm modules no longer
mapped. Output identical.
@ktf
ktf merged commit a6674c4 into AliceO2Group:dev Nov 3, 2026
16 checks passed
@ktf

ktf commented Nov 3, 2026

Copy link
Copy Markdown
Member Author

Tested on hyperloop. Improves memory usage by 10%.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant