Hi,
if you cannot host it, maybe this works: 1fichier.com/en
Cheers, Axel.
Axel, please check your email.
Hi,
I get
root [0] TFile f("run646647.root")
x<�Ƿ�'�t_=y`~gz����l�77��h��Cer>: Unknown class �G�0<���Gq�y��� v��h��^���cA
Info in <TFile::GetStreamerInfoList>: cannot find the StreamerInfo record in file run646647.root
(And yes, these funny characters is really what I see). Even worse:
root [2] f.Map()
20101208/173012 At:100 N=124 TFile
20101208/173013 At:224 N=1537 TBasket CX = 20.03
20540000/000156 At:1761 N=1596101076 CX = 0.00
Address = 1596102837 Nbytes = -1697158391 =====G A P===========
20540000/000156 At:3293261228 N=1 END
shows that the file is broken. Do you also see the unknown class error? What does f.Map() show in your case?
To ensure that I got the file intact let’s compare this:
$ md5sum run646647.root
e12d291f7b70a4eb4ff37a5cca4036c3 run646647.root
Cheers, Axel.
Axel, apologies, this was my fault: when uploading the file onto the ftp server I forgot to do “binary”, so the file got corrupted in transfer (haven’t used ftp for 12 years!!).
I just uploaded the file again, and downloaded it to verify that it’s fine. Please do remember to “binary” before “get”-ing.
Hi,
as expected, the time is extremely constant. For slices of 10k entries I get:
root [0]
Processing speed.C...
51928 entries/s
52201 entries/s
52138 entries/s
52145 entries/s
52221 entries/s
52231 entries/s
52174 entries/s
52191 entries/s
52213 entries/s
52154 entries/s
52181 entries/s
48908 entries/s
and for slices of 1M entries I get
root [0]
Processing speed.C...
50650 entries/s
50426 entries/s
50148 entries/s
50478 entries/s
50245 entries/s
50433 entries/s
50483 entries/s
50046 entries/s
50429 entries/s
This is speed.C:
void speed(){
TFile* f = TFile::Open("run646647.root");
TTree *tree = (TTree*)f->Get("ptree");
TStopwatch s;
const int timeslice = 10000;
Long64_t n = tree->GetEntries();
for (Long64_t i = 0; i < n; ++i) {
tree->GetEntry(i);
if (i && !(i % timeslice)) {
Double_t rt = s.RealTime();
printf("%d entries/s\n", timeslice/rt);
s.Start();
}
}
delete f;
}
So the problem is most likely in your analysis code.
Cheers, Axel.
Yep, this is what I get when I run speed():
Beggining:
root [0] .L speed.C
root [1] speed()
30700 entries/s
101462 entries/s
73073 entries/s
97007 entries/s
98910 entries/s
98550 entries/s
98046 entries/s
97080 entries/s
95480 entries/s
94586 entries/s
94199 entries/s
76993 entries/s
91829 entries/s
90166 entries/s
89668 entries/s
88897 entries/s
88753 entries/s
87458 entries/s
84056 entries/s
86177 entries/s
84679 entries/s
81539 entries/s
82634 entries/s
82299 entries/s
82107 entries/s
81131 entries/s
80836 entries/s
80171 entries/s
77271 entries/s
78803 entries/s
77428 entries/s
76838 entries/s
76869 entries/s
75342 entries/s
and this is the output for the last 100000 entries (modified the loop limits in speed.C):
root [0] .L speed.C
root [1] speed()
8796 entries/s
3527 entries/s
3337 entries/s
3304 entries/s
3315 entries/s
3346 entries/s
3345 entries/s
3320 entries/s
3325 entries/s
3320 entries/s
I am running ROOT version 5.22. And while we are at it, this is my hard drive info, just in case if you think it’s relevant:
…and the trimmed-down lshw output for CPU and memory:
Hi,
what happens if you copy (not move!) the file? Do you see the same behavior on the copy?
Cheers, Axel.
Axel, I am not sure what you mean by copy or move. All I do is open the file with TFile::Open…
VIVE L’AMOUR!
just an idea … try to search “dmesg” output and “/var/log/messages” for any disk errors.
Try to copy your root data file to another disk and re-run you test …
I am stupid. No?
Pepe Le Pew.
Hi,
see, we agree With “copy” I mean really copy. Create a second file with the same content on your disk. It’s most probably the disk that’s faulty / not performing consistently.
Cheers, Axel.
You mean something as simple as
>cp run646647.root test.root
and run the script? I tried it and there was no difference – the speed drops from ~100k/s to 3.5k/s.
Pepe, no disk related error msges in /var/log/messages.
Hi,
you ran the script on test.root, not on run646647.root?
Cheers, Axel.
I expected that question.
Yes, I run it on test.root.
Hi,
sorry, then I am out of guesses. As I said I cannot reproduce it, i.e. it must be due to your installation / machine. Could be anything, hardware or software (e.g. OS).
Cheers, Axel.
Ok, I just run the same test on one of the octal core machines(16GB of memory) of our linux farm. Exact same symptoms: starts with ~75k entries/s and goes down to 3k entries/s.
This may be due to the (older) version 5.22. I will install a more recent version of root and will report on
what I get with it.
All right, I installed 5.28 and run the same test (on my computer). A few observations:
a) speeds have gone way up. Hurray!
b) the difference between the end and beginning of the tree is gone! 5.22 seems to have been the culprit.
c) a new anomaly has shown up – the read speed varies back and forth between 135k/s and 85k/s. See below:
Beginning:
12:03:~/data_vx511/root_pnpf1>root
root [0] .L speed.C
root [1] speed()
29771 entries/s
118825 entries/s
83894 entries/s
131710 entries/s
132354 entries/s
131915 entries/s
131173 entries/s
132751 entries/s
132299 entries/s
132657 entries/s
133007 entries/s
133100 entries/s
132504 entries/s
132256 entries/s
131538 entries/s
123348 entries/s
85189 entries/s
82477 entries/s
84994 entries/s
85220 entries/s
84931 entries/s
84956 entries/s
84964 entries/s
84379 entries/s
84927 entries/s
85253 entries/s
84790 entries/s
85074 entries/s
84937 entries/s
85144 entries/s
85067 entries/s
84914 entries/s
85255 entries/s
121477 entries/s
127622 entries/s
132325 entries/s
132973 entries/s
124034 entries/s
127983 entries/s
133033 entries/s
131915 entries/s
132879 entries/s
127606 entries/s
132566 entries/s
133024 entries/s
132855 entries/s
131841 entries/s
94403 entries/s
132897 entries/s
132812 entries/s
133244 entries/s
132592 entries/s
126431 entries/s
103336 entries/s
132268 entries/s
133022 entries/s
126070 entries/s
91202 entries/s
84829 entries/s
82336 entries/s
85108 entries/s
80858 entries/s
82383 entries/s
85641 entries/s
85814 entries/s
85392 entries/s
82695 entries/s
85063 entries/s
84491 entries/s
85102 entries/s
82070 entries/s
81414 entries/s
84948 entries/s
85216 entries/s
87304 entries/s
120704 entries/s
128263 entries/s
121366 entries/s
133086 entries/s
132860 entries/s
109794 entries/s
132786 entries/s
132380 entries/s
132376 entries/s
132640 entries/s
128116 entries/s
132176 entries/s
133196 entries/s
132874 entries/s
120803 entries/s
108392 entries/s
133368 entries/s
132938 entries/s
132839 entries/s
116392 entries/s
118937 entries/s
132424 entries/s
133570 entries/s
133456 entries/s
End:
12:03:~/data_vx511/root_pnpf1>root
root [0] .L speed.C
root [1] speed()
241568 entries/s
136384 entries/s
136730 entries/s
136627 entries/s
136632 entries/s
135093 entries/s
136279 entries/s
137183 entries/s
135725 entries/s
136720 entries/s
135662 entries/s
136289 entries/s
136488 entries/s
136381 entries/s
137172 entries/s
136321 entries/s
130172 entries/s
131223 entries/s
135626 entries/s
136008 entries/s
136665 entries/s
136343 entries/s
136904 entries/s
136941 entries/s
135825 entries/s
137020 entries/s
136693 entries/s
136926 entries/s
136326 entries/s
136668 entries/s
136152 entries/s
135880 entries/s
135069 entries/s
136958 entries/s
136679 entries/s
135961 entries/s
136860 entries/s
136556 entries/s
136341 entries/s
137018 entries/s
136556 entries/s
136368 entries/s
136755 entries/s
107107 entries/s
85439 entries/s
87528 entries/s
87544 entries/s
87880 entries/s
87422 entries/s
87537 entries/s
87724 entries/s
87677 entries/s
87447 entries/s
87264 entries/s
87713 entries/s
87658 entries/s
87584 entries/s
87624 entries/s
87759 entries/s
87412 entries/s
87228 entries/s
125272 entries/s
130313 entries/s
135222 entries/s
137266 entries/s
136455 entries/s
136200 entries/s
137014 entries/s
136403 entries/s
136586 entries/s
137251 entries/s
136343 entries/s
137027 entries/s
136755 entries/s
135886 entries/s
136334 entries/s
136043 entries/s
135314 entries/s
136930 entries/s
137082 entries/s
136412 entries/s
137257 entries/s
136416 entries/s
136528 entries/s
137049 entries/s
136470 entries/s
137364 entries/s
136128 entries/s
96267 entries/s
82671 entries/s
87409 entries/s
87828 entries/s
87871 entries/s
87225 entries/s
87895 entries/s
87816 entries/s
87484 entries/s
87412 entries/s
87565 entries/s
87500 entries/s
Hi.
Good to know! Yes, our newest ROOT is always better
The variations might be caused e.g. by
Cheers, Axel.