Regarding memory usage of TCahin Draw or RDataFrame Histo1D


Please read tips for efficient and successful posting and posting code

ROOT Version: Not Provided
Platform: Not Provided
Compiler: Not Provided


I have general question regarding RAM usage of different Actions of RDataFrame or TChain Draw.
I want to know when we call TChain::Draw or RDataFrame.Histo1D().GetValue(), once the function is executed and histogram is returned, what happens to buffers which are created to read relevant (for expression and cuts ) branches of the TChain ?
Are they cleared from memory ?
Also, in case of RDataFrame which is created using friend TTrees, who owns the TTrees passed to RDataFrame. Do we need to delete Friend TTrees or RDataFrame object will do it in its destructor.

Hi @Chinmay ,

They should be freed in both cases (@pcanal can correct me if I’m wrong).

In code such as:

TTree *t = GetTheTree();
t->AddFriend(GetTheFriend());
ROOT::RDataFrame df(*t);

the user owns the trees and is responsible for their deletion.

Cheers,
Enrico

Ok. Thank you.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.