| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

ForwardSchedulerControlFlowTest.py
Go to the documentation of this file.
1 #!/usr/bin/env gaudirun.py
2
3 from Gaudi.Configuration import *
4 from Configurables import HiveWhiteBoard, HiveSlimEventLoopMgr, ForwardSchedulerSvc, CPUCruncher, AlgResourcePool
5 from Configurables import GaudiSequencer
6
7 InertMessageSvc(OutputLevel=INFO)
8
9 # metaconfig
10 evtslots = 1
11 evtMax = 20
12 cardinality = 10
13 algosInFlight = 10
14
15 whiteboard = HiveWhiteBoard("EventDataSvc",
16 EventSlots=evtslots)
17
18 slimeventloopmgr = HiveSlimEventLoopMgr(OutputLevel=INFO)
19
20 scheduler = ForwardSchedulerSvc(MaxEventsInFlight=evtslots,
21 MaxAlgosInFlight=algosInFlight,
22 OutputLevel=DEBUG)
23
24 AlgResourcePool(OutputLevel=DEBUG)
25
26 FakeInput = CPUCruncher("FakeInput",
27 DataOutputs=[
28 '/Event/DAQ/ODIN', '/Event/DAQ/RawEvent', '/Event/Hlt/LumiSummary'],
29 shortCalib=True,
30 varRuntime=.1,
31 avgRuntime=.1)
32
33 BrunelInit = CPUCruncher("BrunelInit",
34 DataInputs=['/Event/DAQ/ODIN', '/Event/DAQ/RawEvent'],
35 DataOutputs=['/Event/Rec/Status',
36 '/Event/Rec/Header'],
37 shortCalib=True)
38
39 PhysFilter = CPUCruncher("PhysFilter",
40 shortCalib=True,
41 DataInputs=['/Event/Hlt/LumiSummary'])
42
43 HltDecReportsDecoder = CPUCruncher("HltDecReportsDecoder",
44 shortCalib=True,
45 DataInputs=['/Event/DAQ/RawEvent'],
46 DataOutputs=['/Event/Hlt/DecReports'])
47
48 HltErrorFilter = CPUCruncher("HltErrorFilter",
49 shortCalib=True,
50 DataInputs=['/Event/Hlt/DecReports'])
51
52 sequence1 = GaudiSequencer("Sequence1")
53 sequence1.Members += [FakeInput, BrunelInit, PhysFilter, HltDecReportsDecoder]
54 sequence1.ModeOR = False
55 sequence1.ShortCircuit = False # whether the evaluation is lazy or not!
56 sequence2 = GaudiSequencer("Sequence2")
57 sequence2.Members += [sequence1, HltErrorFilter]
58
59
60 ApplicationMgr(EvtMax=evtMax,
61 EvtSel='NONE',
62 ExtSvc=[whiteboard],
63 EventLoop=slimeventloopmgr,
64 TopAlg=[sequence2],
65 MessageSvcType="InertMessageSvc")
InertMessageSvc
Thread safe extension to the standard MessageSvc.
Definition: InertMessageSvc.h:26
Gaudi.Configuration
Definition: Configuration.py:1
ApplicationMgr
The Application Manager class.
Definition: ApplicationMgr.h:47