Skip to content

Avoid InheritsFrom in CCDB object extraction - #16115

Merged
sawenzel merged 1 commit into
AliceO2Group:devfrom
sawenzel:ccdb-istobject
Nov 12, 2026
Merged

sawenzel merged 1 commit into
AliceO2Group:devfrom
sawenzel:ccdb-istobject

Conversation

@sawenzel

Copy link
Copy Markdown
Collaborator

TClass::InheritsFrom("TObject") on an STL collection such as
std::vectoro2::detectors::AlignParam makes cling instantiate the class and
read a large part of the ROOT module data. IsTObject() gives the same answer
without this. In o2-sim, which fetches the alignment this way, this saves about
150 MB (16 workers, peak PSS 6384 -> 6215 MB) with bit-identical hits.

TClass::InheritsFrom("TObject") on an STL collection such as
std::vector<o2::detectors::AlignParam> makes cling instantiate the class and
read a large part of the ROOT module data. IsTObject() gives the same answer
without this. In o2-sim, which fetches the alignment this way, this saves about
150 MB (16 workers, peak PSS 6384 -> 6215 MB) with bit-identical hits.
@sawenzel
sawenzel requested review from a team, Barthelemy and costing as code owners November 12, 2026 15:30

@costing costing left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you Sandro, glad to hear that this saves so much memory!

@ktf

ktf commented Nov 12, 2026

Copy link
Copy Markdown
Member

#16116 might help as well then.

@sawenzel
sawenzel merged commit bf2e035 into AliceO2Group:dev Nov 12, 2026
11 of 12 checks passed
@sawenzel
sawenzel deleted the ccdb-istobject branch November 12, 2026 20:44
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.

3 participants