[ROOT] Problem with de-activating tree branches on read

From: Romain Holzmann (R.Holzmann@gsi.de)
Date: Fri Jan 31 2003 - 17:47:42 MET


Hello Rooters


I noticed a pecularity when I tried to make use of the TTree::SetBranchStatus()
method to deactivate most of the branches while reading a fairly complex
tree from file.  The tree is completely split and contains many
TClonesArrays (>20).  As already posted to this list some time ago, I too
observed that reading events with ALL branches deactivated in the said way,
is slower by almost a factor 10 than reading with all branches on.
And that's certainly not what I hoped for!

Now, snooping a bit through the relevant Root code I realized that while the
flag set by TTree::SetBranchStatus(), namely kDoNotProcess, is tested in both
TBranch::Fill() and TBranch::GetEntry(), it is NOT taken into account at all
in TBranchElement::GetEntry(). Is this on purpose or simply an omission?
If this is on purpose, then what should I do to speed up my tree input?

I am using Root 3.03/09 on Debian linux.


Romain Holzmann
GSI, Darmstadt
R.Holzmann@gsi.de



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:09 MET