Logo ROOT   6.12/07
Reference Guide
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
TPerfStats Class Reference

Provides the interface for the PROOF internal performance measurement and event tracing.

Definition at line 70 of file TPerfStats.h.

Public Member Functions

virtual ~TPerfStats ()
 Destructor. More...
 
void FileEvent (const char *slave, const char *slavename, const char *nodename, const char *filename, Bool_t isStart)
 File event. More...
 
void FileOpenEvent (TFile *file, const char *filename, Double_t start)
 Open file event. More...
 
void FileReadEvent (TFile *file, Int_t len, Double_t start)
 Read file event. More...
 
Long64_t GetBytesRead () const
 Get number of bytes read. More...
 
Long64_t GetNumEvents () const
 
void PacketEvent (const char *slave, const char *slavename, const char *filename, Long64_t eventsprocessed, Double_t latency, Double_t proctime, Double_t cputime, Long64_t bytesRead)
 Packet event. More...
 
void RateEvent (Double_t proctime, Double_t deltatime, Long64_t eventsprocessed, Long64_t bytesRead)
 Rate event. More...
 
void SetBytesRead (Long64_t num)
 Set number of bytes read. More...
 
void SetNumEvents (Long64_t num)
 
void SimpleEvent (EEventType type)
 Simple event. More...
 
void UnzipEvent (TObject *tree, Long64_t pos, Double_t start, Int_t complen, Int_t objlen)
 Record TTree file unzip event. More...
 
- Public Member Functions inherited from TVirtualPerfStats
virtual ~TVirtualPerfStats ()
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Checked and record whether for this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 

Static Public Member Functions

static void GetMemValues (Long_t &vmax, Long_t &rmax)
 Get memory usage. More...
 
static void SetMemValues ()
 Record memory usage. More...
 
static void Setup (TList *input)
 Setup the PROOF input list with requested statistics and tracing options. More...
 
static void Start (TList *input, TList *output)
 Initialize PROOF statistics run. More...
 
static void Stop ()
 Terminate the PROOF statistics run. More...
 
- Static Public Member Functions inherited from TVirtualPerfStats
static TVirtualPerfStats *& CurrentPerfStats ()
 Return the current ROOT perf stats if any. More...
 
static const char * EventType (EEventType type)
 Return the name of the event type. More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 

Private Member Functions

 TPerfStats (TList *input, TList *output)
 Max resident memory used by this process. More...
 
void WriteQueryLog ()
 Send to the connected monitoring servers information related to this query. More...
 

Private Attributes

Long64_t fBytesRead
 histogram of cpu time spent processing packets More...
 
TH2DfCpuTimeHist
 histogram of real time spent processing packets More...
 
TString fDataSet
 Monitoring engines. More...
 
Int_t fDataSetLen
 Dataset string. More...
 
Int_t fDataSetSize
 Maximum size of the dataset string fDataSet. More...
 
Bool_t fDoHist
 number of active slaves More...
 
Bool_t fDoQuota
 Full tracing in workers. More...
 
Bool_t fDoSlaveTrace
 Trace processing rate in master. More...
 
Bool_t fDoTrace
 Fill histos. More...
 
Bool_t fDoTraceRate
 Trace details in master. More...
 
TDSetfDSet
 

of files in the dataset

More...
 
TH1DfEventsHist
 histogram of packets being processed per slave More...
 
TH2DfLatencyHist
 histogram of slaves per file serving node More...
 
Bool_t fMonitorPerPacket
 Save stats on SQL server for quota management. More...
 
TObjArray fMonSenders
 Whether to send the full entry per each packet. More...
 
TH1DfNodeHist
 histogram of events processed per slave More...
 
Long64_t fNumEvents
 total number of events processed More...
 
TListfOutput
 Saved pointer to the TDSet object. More...
 
TH1DfPacketsHist
 TPerfEvent used to fill tree. More...
 
TPerfEventfPerfEvent
 start time of this run More...
 
TH1IfProcPcktHist
 histogram of packets processed per slave More...
 
TH2DfProcTimeHist
 histogram of latency due to packet requests More...
 
Int_t fSlaves
 total number of events to be processed More...
 
Long64_t fTotBytesRead
 total cpu time of all slaves More...
 
Double_t fTotCpuTime
 track bytes read of main file More...
 
Long64_t fTotEvents
 total bytes read on all slaves More...
 
TTreefTrace
 
TTimeStamp fTzero
 TTree with trace events. More...
 

Static Private Attributes

static Long_t fgResMemMax = -1
 Max virtual memory used by this process. More...
 
static Long_t fgVirtMemMax = -1
 Saved pointer to the output list. More...
 

Friends

class TProofMonSender
 

Additional Inherited Members

- Public Types inherited from TVirtualPerfStats
enum  EEventType {
  kUnDefined, kPacket, kStart, kStop,
  kFile, kFileOpen, kFileRead, kRate,
  kNumEventType
}
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kInconsistent = 0x08000000,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5),
  kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

#include <TPerfStats.h>

Inheritance diagram for TPerfStats:
[legend]

Constructor & Destructor Documentation

◆ TPerfStats()

TPerfStats::TPerfStats ( TList input,
TList output 
)
private

Max resident memory used by this process.

Normal constructor.

Definition at line 118 of file TPerfStats.cxx.

◆ ~TPerfStats()

TPerfStats::~TPerfStats ( )
virtual

Destructor.

Definition at line 377 of file TPerfStats.cxx.

Member Function Documentation

◆ FileEvent()

void TPerfStats::FileEvent ( const char *  slave,
const char *  slavename,
const char *  nodename,
const char *  filename,
Bool_t  isStart 
)
virtual

File event.

Implements TVirtualPerfStats.

Definition at line 524 of file TPerfStats.cxx.

◆ FileOpenEvent()

void TPerfStats::FileOpenEvent ( TFile file,
const char *  filename,
Double_t  start 
)
virtual

Open file event.

Implements TVirtualPerfStats.

Definition at line 551 of file TPerfStats.cxx.

◆ FileReadEvent()

void TPerfStats::FileReadEvent ( TFile file,
Int_t  len,
Double_t  start 
)
virtual

Read file event.

Implements TVirtualPerfStats.

Definition at line 572 of file TPerfStats.cxx.

◆ GetBytesRead()

Long64_t TPerfStats::GetBytesRead ( ) const
virtual

Get number of bytes read.

Implements TVirtualPerfStats.

Definition at line 637 of file TPerfStats.cxx.

◆ GetMemValues()

void TPerfStats::GetMemValues ( Long_t vmax,
Long_t rmax 
)
static

Get memory usage.

Definition at line 790 of file TPerfStats.cxx.

◆ GetNumEvents()

Long64_t TPerfStats::GetNumEvents ( ) const
inlinevirtual

Implements TVirtualPerfStats.

Definition at line 132 of file TPerfStats.h.

◆ PacketEvent()

void TPerfStats::PacketEvent ( const char *  slave,
const char *  slavename,
const char *  filename,
Long64_t  eventsprocessed,
Double_t  latency,
Double_t  proctime,
Double_t  cputime,
Long64_t  bytesRead 
)
virtual

Packet event.

See WriteQueryLog for the descripition of the structure sent for monitoring when fMonitorPerPacket is kTRUE.

Implements TVirtualPerfStats.

Definition at line 413 of file TPerfStats.cxx.

◆ RateEvent()

void TPerfStats::RateEvent ( Double_t  proctime,
Double_t  deltatime,
Long64_t  eventsprocessed,
Long64_t  bytesRead 
)
virtual

Rate event.

Implements TVirtualPerfStats.

Definition at line 607 of file TPerfStats.cxx.

◆ SetBytesRead()

void TPerfStats::SetBytesRead ( Long64_t  num)
virtual

Set number of bytes read.

Implements TVirtualPerfStats.

Definition at line 629 of file TPerfStats.cxx.

◆ SetMemValues()

void TPerfStats::SetMemValues ( )
static

Record memory usage.

Definition at line 778 of file TPerfStats.cxx.

◆ SetNumEvents()

void TPerfStats::SetNumEvents ( Long64_t  num)
inlinevirtual

Implements TVirtualPerfStats.

Definition at line 131 of file TPerfStats.h.

◆ Setup()

void TPerfStats::Setup ( TList input)
static

Setup the PROOF input list with requested statistics and tracing options.

Definition at line 727 of file TPerfStats.cxx.

◆ SimpleEvent()

void TPerfStats::SimpleEvent ( EEventType  type)
virtual

Simple event.

Implements TVirtualPerfStats.

Definition at line 387 of file TPerfStats.cxx.

◆ Start()

void TPerfStats::Start ( TList input,
TList output 
)
static

Initialize PROOF statistics run.

Definition at line 744 of file TPerfStats.cxx.

◆ Stop()

void TPerfStats::Stop ( )
static

Terminate the PROOF statistics run.

Definition at line 764 of file TPerfStats.cxx.

◆ UnzipEvent()

void TPerfStats::UnzipEvent ( TObject tree,
Long64_t  pos,
Double_t  start,
Int_t  complen,
Int_t  objlen 
)
virtual

Record TTree file unzip event.

start is the TimeStamp before unzip pos is where in the file the compressed buffer came from complen is the length of the compressed buffer objlen is the length of the de-compressed buffer

Implements TVirtualPerfStats.

Definition at line 597 of file TPerfStats.cxx.

◆ WriteQueryLog()

void TPerfStats::WriteQueryLog ( )
private

Send to the connected monitoring servers information related to this query.

The information is of three types: 'summary', 'dataset' and 'files'. Actual 'table' formatting is done by the relevant sender, implementation of TProofMonSender, where the details are given.

Definition at line 648 of file TPerfStats.cxx.

Friends And Related Function Documentation

◆ TProofMonSender

friend class TProofMonSender
friend

Definition at line 72 of file TPerfStats.h.

Member Data Documentation

◆ fBytesRead

Long64_t TPerfStats::fBytesRead
private

histogram of cpu time spent processing packets

Definition at line 85 of file TPerfStats.h.

◆ fCpuTimeHist

TH2D* TPerfStats::fCpuTimeHist
private

histogram of real time spent processing packets

Definition at line 84 of file TPerfStats.h.

◆ fDataSet

TString TPerfStats::fDataSet
private

Monitoring engines.

Definition at line 102 of file TPerfStats.h.

◆ fDataSetLen

Int_t TPerfStats::fDataSetLen
private

Dataset string.

Definition at line 103 of file TPerfStats.h.

◆ fDataSetSize

Int_t TPerfStats::fDataSetSize
private

Maximum size of the dataset string fDataSet.

Definition at line 104 of file TPerfStats.h.

◆ fDoHist

Bool_t TPerfStats::fDoHist
private

number of active slaves

Definition at line 92 of file TPerfStats.h.

◆ fDoQuota

Bool_t TPerfStats::fDoQuota
private

Full tracing in workers.

Definition at line 96 of file TPerfStats.h.

◆ fDoSlaveTrace

Bool_t TPerfStats::fDoSlaveTrace
private

Trace processing rate in master.

Definition at line 95 of file TPerfStats.h.

◆ fDoTrace

Bool_t TPerfStats::fDoTrace
private

Fill histos.

Definition at line 93 of file TPerfStats.h.

◆ fDoTraceRate

Bool_t TPerfStats::fDoTraceRate
private

Trace details in master.

Definition at line 94 of file TPerfStats.h.

◆ fDSet

TDSet* TPerfStats::fDSet
private

of files in the dataset

Definition at line 105 of file TPerfStats.h.

◆ fEventsHist

TH1D* TPerfStats::fEventsHist
private

histogram of packets being processed per slave

Definition at line 80 of file TPerfStats.h.

◆ fgResMemMax

Long_t TPerfStats::fgResMemMax = -1
staticprivate

Max virtual memory used by this process.

Definition at line 109 of file TPerfStats.h.

◆ fgVirtMemMax

Long_t TPerfStats::fgVirtMemMax = -1
staticprivate

Saved pointer to the output list.

Definition at line 108 of file TPerfStats.h.

◆ fLatencyHist

TH2D* TPerfStats::fLatencyHist
private

histogram of slaves per file serving node

Definition at line 82 of file TPerfStats.h.

◆ fMonitorPerPacket

Bool_t TPerfStats::fMonitorPerPacket
private

Save stats on SQL server for quota management.

Definition at line 98 of file TPerfStats.h.

◆ fMonSenders

TObjArray TPerfStats::fMonSenders
private

Whether to send the full entry per each packet.

Definition at line 100 of file TPerfStats.h.

◆ fNodeHist

TH1D* TPerfStats::fNodeHist
private

histogram of events processed per slave

Definition at line 81 of file TPerfStats.h.

◆ fNumEvents

Long64_t TPerfStats::fNumEvents
private

total number of events processed

Definition at line 89 of file TPerfStats.h.

◆ fOutput

TList* TPerfStats::fOutput
private

Saved pointer to the TDSet object.

Definition at line 106 of file TPerfStats.h.

◆ fPacketsHist

TH1D* TPerfStats::fPacketsHist
private

TPerfEvent used to fill tree.

Definition at line 78 of file TPerfStats.h.

◆ fPerfEvent

TPerfEvent* TPerfStats::fPerfEvent
private

start time of this run

Definition at line 77 of file TPerfStats.h.

◆ fProcPcktHist

TH1I* TPerfStats::fProcPcktHist
private

histogram of packets processed per slave

Definition at line 79 of file TPerfStats.h.

◆ fProcTimeHist

TH2D* TPerfStats::fProcTimeHist
private

histogram of latency due to packet requests

Definition at line 83 of file TPerfStats.h.

◆ fSlaves

Int_t TPerfStats::fSlaves
private

total number of events to be processed

Definition at line 90 of file TPerfStats.h.

◆ fTotBytesRead

Long64_t TPerfStats::fTotBytesRead
private

total cpu time of all slaves

Definition at line 87 of file TPerfStats.h.

◆ fTotCpuTime

Double_t TPerfStats::fTotCpuTime
private

track bytes read of main file

Definition at line 86 of file TPerfStats.h.

◆ fTotEvents

Long64_t TPerfStats::fTotEvents
private

total bytes read on all slaves

Definition at line 88 of file TPerfStats.h.

◆ fTrace

TTree* TPerfStats::fTrace
private

Definition at line 75 of file TPerfStats.h.

◆ fTzero

TTimeStamp TPerfStats::fTzero
private

TTree with trace events.

Definition at line 76 of file TPerfStats.h.

Libraries for TPerfStats:
[legend]

The documentation for this class was generated from the following files: