12#ifndef ROOT_TTreePerfStats
13#define ROOT_TTreePerfStats
27#include <unordered_map>
48 using BasketList_t = std::vector<std::pair<TBranch*, std::vector<size_t>>>;
116 virtual void PacketEvent(
const char *,
const char *,
const char *,
118 virtual void FileEvent(
const char *,
const char *,
const char *,
const char *,
Bool_t) {}
124 virtual void SaveAs(
const char *filename=
"",
Option_t *option=
"")
const;
#define ClassDef(name, id)
A TTree is a list of TBranches.
Using a TBrowser one can browse all ROOT objects.
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
A TGraphErrors is a TGraph with error bars.
Mother of all ROOT objects.
A Pave (see TPave) with text, lines or/and boxes inside.
const char * Data() const
Base class for several text objects.
TTree I/O performance measurement.
virtual Long64_t GetNumEvents() const
virtual void SetMissed(size_t bi, size_t basketNumber)
TGraphErrors * fGraphIO
Pointer to the graph with IO data.
Long64_t fUnzipInputSize
Compressed bytes seen by the decompressor.
virtual void SetGraphIO(TGraphErrors *gr)
virtual void Print(Option_t *option="") const
Print the TTree I/O perf stats.
virtual void SetLoadedMiss(TBranch *b, size_t basketNumber)
virtual void SetRealNorm(Double_t rnorm)
virtual void SetLoaded(size_t bi, size_t basketNumber)
TString fName
Name of this TTreePerfStats.
Int_t fNleaves
Number of leaves in the tree.
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save primitive as a C++ statement(s) on output stream out.
virtual void SetName(const char *name)
virtual void SetLoadedMiss(size_t bi, size_t basketNumber)
virtual void SetCompress(Double_t cx)
virtual void SetFile(TFile *newfile)
virtual void SetBytesReadExtra(Long64_t nbytes)
const char * GetName() const
Returns name of object.
virtual void SimpleEvent(EEventType)
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
Return distance to one of the objects in the TTreePerfStats.
virtual void RateEvent(Double_t, Double_t, Long64_t, Long64_t)
Double_t fRealNorm
Real time scale factor for fGraphTime.
BasketInfo & GetBasketInfo(TBranch *b, size_t basketNumber)
Return the BasketInfo corresponding to the given branch and basket.
std::vector< std::vector< BasketInfo > > fBasketsInfo
Long64_t fUnzipObjSize
Uncompressed bytes produced by the decompressor.
TStopwatch * fWatch
TStopwatch pointer.
TTree * fTree
! Pointer to the Tree being monitored
virtual void SetReadaheadSize(Int_t nbytes)
TString fHostInfo
Name of the host system, ROOT version and date.
virtual void UpdateBranchIndices(TObjArray *branchNames)
Update the fBranchIndexCache collection to match the current TTree given the ordered list of branch n...
virtual void SetBytesRead(Long64_t nbytes)
TStopwatch * GetStopwatch() const
Int_t fReadCalls
Number of read calls.
virtual void FileEvent(const char *, const char *, const char *, const char *, Bool_t)
Long64_t fBytesRead
Number of bytes read.
virtual void Paint(Option_t *chopt="")
Draw the TTree I/O perf graph.
TGraphErrors * GetGraphTime()
BasketList_t GetDuplicateBasketCache() const
Return the collection of baskets which have been read by the TTreeCache more than once.
Double_t fCpuTime
Cpu time.
virtual void SetMissed(TBranch *b, size_t basketNumber)
virtual Long64_t GetBytesRead() const
virtual Double_t GetCpuTime() const
virtual void SetNumEvents(Long64_t)
virtual void Finish()
When the run is finished this function must be called to save the current parameters in the file and ...
virtual Long64_t GetBytesReadExtra() const
virtual void SetTreeCacheSize(Int_t nbytes)
Double_t fCompress
Tree compression factor.
virtual Int_t GetReadCalls() const
virtual void SetUsed(TBranch *b, size_t basketNumber)
virtual void SetLoaded(TBranch *b, size_t basketNumber)
virtual Int_t GetReadaheadSize() const
TFile * fFile
! Pointer to the file containing the Tree
const char * GetHostInfo() const
virtual void FileOpenEvent(TFile *, const char *, Double_t)
virtual Double_t GetUnzipTime() const
Double_t fRealTime
Real time.
virtual void SaveAs(const char *filename="", Option_t *option="") const
Save this object to filename.
Int_t fReadaheadSize
Read-ahead cache size.
virtual Double_t GetRealTime() const
virtual void SetUsed(size_t bi, size_t basketNumber)
virtual void UnzipEvent(TObject *tree, Long64_t pos, Double_t start, Int_t complen, Int_t objlen)
Record TTree unzip event.
virtual void SetUnzipTime(Double_t uztime)
virtual void SetReadCalls(Int_t ncalls)
virtual Double_t GetDiskTime() const
std::unordered_map< TBranch *, size_t > fBranchIndexCache
virtual void Browse(TBrowser *b)
Browse.
virtual void SetGraphTime(TGraphErrors *gr)
Double_t fDiskTime
Time spent in pure raw disk IO.
virtual void PacketEvent(const char *, const char *, const char *, Long64_t, Double_t, Double_t, Double_t, Long64_t)
virtual void PrintBasketInfo(Option_t *option="") const
Print the TTree basket information.
TGaxis * fRealTimeAxis
Pointer to TGaxis object showing real-time.
virtual Int_t GetNleaves() const
Double_t fUnzipTime
Time spent uncompressing the data.
std::vector< std::pair< TBranch *, std::vector< size_t > > > BasketList_t
TPaveText * fPave
Pointer to annotation pavetext.
Int_t fTreeCacheSize
TTreeCache buffer size.
virtual Int_t GetTreeCacheSize() const
virtual void SetRealTime(Double_t rtime)
TGraphErrors * fGraphTime
Pointer to the graph with timestamp info.
virtual void SetDiskTime(Double_t t)
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
Return distance to one of the objects in the TTreePerfStats.
virtual void SetNleaves(Int_t nleaves)
TGraphErrors * GetGraphIO()
virtual ~TTreePerfStats()
Destructor.
TText * fHostInfoText
Graphics Text object with the fHostInfo data.
Long64_t fBytesReadExtra
Number of bytes (overhead) of the read-ahead cache.
virtual void SetCpuTime(Double_t cptime)
TTreePerfStats()
default constructor (used when reading an object only)
virtual void SetHostInfo(const char *info)
virtual void FileReadEvent(TFile *file, Int_t len, Double_t start)
Record TTree file read event.
A TTree represents a columnar dataset.
Provides the interface for the PROOF internal performance measurement and event tracing.
UInt_t fMissed
Number of times the basket was read directly from the file.
UInt_t fLoaded
Number of times the basket was put in the primary TTreeCache.
UInt_t fLoadedMiss
Number of times the basket was put in the secondary cache.
UInt_t fUsed
Number of times the basket was requested from the disk.