12 #ifndef ROOT_TPacketizerAdaptive 13 #define ROOT_TPacketizerAdaptive 37 #ifndef ROOT_TVirtualPacketizer 98 TFileStat *
GetNextUnAlloc(TFileNode *node = 0,
const char *nodeHostName = 0);
void MarkBad(TSlave *s, TProofProgressStatus *status, TList **missingFiles)
This method can be called at any time during processing as an effect of handling kPROOF_STOPPROCESS I...
void Reset()
Reset the internal data structure for packet distribution.
A simple TTree restricted to a list of double variables only.
Float_t fBaseLocalPreference
void SplitPerHost(TList *elements, TList **listOfMissingFiles)
Split into per host entries The files in the listOfMissingFiles can appear several times; in order to...
This class implements a data set to be used for PROOF processing.
void ValidateFiles(TDSet *dset, TList *slaves, Long64_t maxent=-1, Bool_t byfile=kFALSE)
Check existence of file/dir/tree an get number of entries.
Int_t GetEstEntriesProcessed(Float_t, Long64_t &ent, Long64_t &bytes, Long64_t &calls)
Get estimation for the number of processed entries and bytes read at time t, based on the numbers alr...
Long64_t fNEventsOnRemLoc
virtual ~TPacketizerAdaptive()
Destructor.
Int_t GetActiveWorkers()
Return the number of workers still processing.
TFileNode * NextNode()
Get next node which has unallocated files.
Manages an element of a TDSet.
void operator=(const TPacketizerAdaptive &)
TFileStat * GetNextActive()
Get next active file.
#define ClassDef(name, id)
This is the base class for the ROOT Random number generators.
Int_t AddProcessed(TSlave *sl, TProofProgressStatus *st, Double_t latency, TList **listOfMissingFiles=0)
To be used by GetNextPacket but also in reaction to kPROOF_STOPPROCESS message (when the worker was a...
Double_t fMaxEntriesRatio
A sorted doubly linked list.
TDSetElement * GetNextPacket(TSlave *sl, TMessage *r)
Get next packet; A meaningfull difference to TPacketizer is the fact that this packetizer, for each worker, tries to predict whether the worker will finish processing it's local files before the end of the query.
This packetizer is based on TPacketizer but uses different load-balancing algorithms and data structu...
Int_t CalculatePacketSize(TObject *slstat, Long64_t cachesz, Int_t learnent)
The result depends on the fStrategy.
TFileNode * NextActiveNode()
Get next active node.
Int_t ReassignPacket(TDSetElement *e, TList **listOfMissingFiles)
The file in the listOfMissingFiles can appear several times; in order to fix that, a TDSetElement::Merge method is needed.
void InitStats()
(re)initialise the statistics called at the begining or after a worker dies.
The packetizer is a load balancing object created for each query.
Float_t fFractionOfRemoteFiles
TMap implements an associative array of (key,value) pairs using a THashTable for efficient retrieval ...
TFileStat * GetNextUnAlloc(TFileNode *node=0, const char *nodeHostName=0)
Get next unallocated file from 'node' or other nodes: First try 'node'.
TSortedList * fFilesToProcess
Float_t GetCurrentRate(Bool_t &all)
Get Estimation of the current rate; just summing the current rates of the active workers.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Mother of all ROOT objects.
void RemoveActiveNode(TFileNode *)
Remove node from the list of actives.
void RemoveUnAllocNode(TFileNode *)
Remove unallocated node.
A TTree object has a header with a name and a title.
Class describing a PROOF worker server.
Container class for processing statistics.
void RemoveActive(TFileStat *file)
Remove file from the list of actives.