ROOT » PROOF » PROOFPLAYER » TPacketizerUnit

class TPacketizerUnit: public TVirtualPacketizer


TPacketizerUnit

This packetizer generates packets of generic units, representing the
number of times an operation cycle has to be repeated by the worker
node, e.g. the number of Monte carlo events to be generated.
Packets sizes are generated taking into account the performance of
worker nodes, based on the time needed to process previous packets,
with the goal of having all workers ending at the same time.


Function Members (Methods)

public:
virtual~TPacketizerUnit()
voidTObject::AbstractMethod(const char* method) const
virtual Int_tTVirtualPacketizer::AddProcessed(TSlave*, TProofProgressStatus*, Double_t, TList**)
virtual Int_tAddWorkers(TList* workers)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual Int_tAssignWork(TDSet*, Long64_t, Long64_t num)
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Int_tGetActiveWorkers()
Long64_tTVirtualPacketizer::GetBytesRead() const
TList*TVirtualPacketizer::GetConfigParams(Bool_t steal = kFALSE)
Double_tTVirtualPacketizer::GetCumProcTime() const
virtual Float_tGetCurrentRate(Bool_t& all)
Double_tGetCurrentTime()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Long64_tTVirtualPacketizer::GetEntriesProcessed() const
virtual Int_tTVirtualPacketizer::GetEstEntriesProcessed(Float_t, Long64_t& ent, Long64_t& bytes, Long64_t& calls)
TList*TVirtualPacketizer::GetFailedPackets()
virtual const char*TObject::GetIconName() const
Float_tTVirtualPacketizer::GetInitTime() const
virtual const char*TObject::GetName() const
virtual TDSetElement*GetNextPacket(TSlave* sl, TMessage* r)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Float_tTVirtualPacketizer::GetProcTime() const
TNtuple*TVirtualPacketizer::GetProgressPerf(Bool_t steal = kFALSE)
Long64_tTVirtualPacketizer::GetReadCalls() const
TMap*TVirtualPacketizer::GetSlaveStats() const
TProofProgressStatus*TVirtualPacketizer::GetStatus()
virtual const char*TObject::GetTitle() const
Long64_tTVirtualPacketizer::GetTotalEntries() const
virtual UInt_tTObject::GetUniqueID() const
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTVirtualPacketizer::IsValid() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidTVirtualPacketizer::MarkBad(TSlave*, TProofProgressStatus*, TList**)
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidTVirtualPacketizer::SetFailedPackets(TList* list)
virtual voidTVirtualPacketizer::SetInitTime()
static voidTObject::SetObjectStat(Bool_t stat)
voidTVirtualPacketizer::SetProgressStatus(TProofProgressStatus* st)
voidTVirtualPacketizer::SetTotalEntries(Long64_t ent)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidTVirtualPacketizer::StopProcess(Bool_t abort, Bool_t stoptimer = kFALSE)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TPacketizerUnit(TList* slaves, Long64_t num, TList* input, TProofProgressStatus* st = 0)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
TDSetElement*TVirtualPacketizer::CreateNewPacket(TDSetElement* base, Long64_t first, Long64_t num)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Long64_tTVirtualPacketizer::GetEntries(Bool_t tree, TDSetElement* e)
virtual Bool_tTVirtualPacketizer::HandleTimer(TTimer* timer)
voidTObject::MakeZombie()

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TVirtualPacketizer::EStatusBitsTVirtualPacketizer::kIsDone
static TVirtualPacketizer::EStatusBitsTVirtualPacketizer::kIsInitializing
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TVirtualPacketizer::EStatusBitsTVirtualPacketizer::kIsTree
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
Bool_tTVirtualPacketizer::fAWLastFillWhether to fill the last measurement
Int_tTVirtualPacketizer::fActWrksLastActive workers at fProcTimeLast
Long_tTVirtualPacketizer::fCircNCircularity
TNtupleD*TVirtualPacketizer::fCircProgKeeps circular info for "instantenous"
TList*TVirtualPacketizer::fConfigParamsList of configuration parameters
TStringTVirtualPacketizer::fDataSetName of the dataset being processed (for dataset-driven runs)
Float_tTVirtualPacketizer::fEffSessLastNumber of effective sessions at fProcTimeLast
Float_tTVirtualPacketizer::fEvtRateLastEvt rate at fProcTimeLast
TList*TVirtualPacketizer::fFailedPacketsa list of packets that failed while processing
Float_tTVirtualPacketizer::fInitTimetime before processing
Float_tTVirtualPacketizer::fMBsReadLastMBs read at fProcTimeLast
Double_tTVirtualPacketizer::fMaxPacketTimemaximum packet time
Double_tTVirtualPacketizer::fMinPacketTimeminimum packet time
Float_tTVirtualPacketizer::fProcTimetime since start of processing
Float_tTVirtualPacketizer::fProcTimeLastTime of the last measurement
TTimer*TVirtualPacketizer::fProgressprogress updates timer
TNtuple*TVirtualPacketizer::fProgressPerf{Active workers, evt rate, MBs read} as a function of processing time
TProofProgressStatus*TVirtualPacketizer::fProgressStatuspointer to status in the player.
Float_tTVirtualPacketizer::fReportPeriodTime between reports if nothing changes (estimated proc time / 100)
TMap*TVirtualPacketizer::fSlaveStatsslave status, keyed by correspondig TSlave
TTimeTVirtualPacketizer::fStartTimetime offset
Bool_tTVirtualPacketizer::fStopTermination of Process() requested?
Float_tTVirtualPacketizer::fTimeUpdttime between updates
Long64_tTVirtualPacketizer::fTotalEntriestotal number of entries to be distributed;
TVirtualPacketizer::EUseEstOptTVirtualPacketizer::fUseEstOptControl usage of estimated values for the progress info
Bool_tTVirtualPacketizer::fValidConstructed properly?
static TVirtualPacketizer::EUseEstOptTVirtualPacketizer::kEstAverage
static TVirtualPacketizer::EUseEstOptTVirtualPacketizer::kEstCurrent
static TVirtualPacketizer::EUseEstOptTVirtualPacketizer::kEstOff
private:
Long64_tfAssignedEntries processed or being processed.
Double_tfCalibFracSize of the calibrating packet as fraction of Ntot/Nwrk
Bool_tfFixedNumWhether we must assign a fixed number of cycles per worker
TList*fInputInput list
Long64_tfNumPerWorkerNumber of cycles per worker, if this option
Long64_tfPacketSeqSequential number of the last packet assigned
TList*fPacketsAll processed packets
Long64_tfProcessingEvent being processed
TStopwatch*fStopwatchFor measuring the start time of each packet
TList*fWrkExcludedList of nodes excluded from distribution
TMap*fWrkStatsWorker status, keyed by correspondig TSlave

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TPacketizerUnit(TList* slaves, Long64_t num, TList* input, TProofProgressStatus* st = 0)
 Constructor
Int_t AssignWork(TDSet* , Long64_t , Long64_t num)
 Assign work to be done to this packetizer
~TPacketizerUnit()
 Destructor.
Double_t GetCurrentTime()
 Get current time
Float_t GetCurrentRate(Bool_t& all)
 Get Estimation of the current rate; just summing the current rates of
 the active workers
TDSetElement * GetNextPacket(TSlave* sl, TMessage* r)
 Get next packet
Int_t AddWorkers(TList* workers)
 Adds new workers. Returns the number of workers added, or -1 on failure.
TPacketizerUnit()
TPacketizerUnit(const TPacketizerUnit& )
void operator=(const TPacketizerUnit& )
Int_t GetActiveWorkers()
{ return fWrkStats->GetSize(); }