3 A totally synthetic test of scheduler performance, with a large number of CF nodes and algorithms, but each algorithm does no work. 5 In the flat mode (nested=False) 1000 algorithms are added directly to the base CF node as a baseline measurement. 7 In nested mode the algorithms are grouped into sets of under a parent CF node. 8 Those nodes are then given 2 different CF node parents (20 in total) which include a prescale algorithm. 10 In sequential mode (sequence=True) the prescale algorithms will randomly deactivate CF nodes at a frequency given by filterPass 13 from Configurables
import (HiveWhiteBoard, HiveSlimEventLoopMgr,
14 AvalancheSchedulerSvc, AlgResourcePool, Prescaler,
15 GaudiSequencer, Test__ViewTester)
34 "EventDataSvc", EventSlots=evtslots, OutputLevel=FATAL)
43 SchedulerName=
"AvalancheSchedulerSvc", OutputLevel=INFO)
53 ThreadPoolSize=threads,
54 ShowControlFlow=
False,
55 ShowDataDependencies=
False,
70 alg.OutputLevel = FATAL
71 alg.Cardinality = cardinality
72 alg.PercentPass = 100.0
88 seqAlgs = allAlgs[10 * i:10 * (i + 1)]
99 seqSeqs = allSeqs[10 * i:10 * (i + 1)]
102 filterAlg.OutputLevel = FATAL
103 filterAlg.Cardinality = cardinality
104 filterAlg.PercentPass = filterPass
108 Members=[filterAlg] + seqSeqs,
113 allSeqSeqs.append(seq)
116 seqSeqs = allSeqs[5 + (10 * i):15 + (10 * i)]
118 filterAlg =
Prescaler(
"filterAlg" + str(i + 10))
119 filterAlg.OutputLevel = FATAL
120 filterAlg.Cardinality = cardinality
121 filterAlg.PercentPass = filterPass
124 "seqSeq" + str(i + 10),
125 Members=[filterAlg] + seqSeqs,
130 allSeqSeqs.append(seq)
132 baseSeq.Members = allSeqSeqs
141 EventLoop=slimeventloopmgr,
143 MessageSvcType=
"InertMessageSvc")
Sequencer for executing several algorithms, stopping when one is faulty.
The AlgResourcePool is a concrete implementation of the IAlgResourcePool interface.
The Application Manager class.
decltype(auto) range(Args &&... args)
Zips multiple containers together to form a single range.