| The Gaudi Framework v29r1 (5cd95fa2)

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

- File List
- File Members

ForwardSchedulerStall.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
5
6 InertMessageSvc(OutputLevel=WARNING)
7
8 # metaconfig
9 evtslots = 10
10 evtMax = 15
11 cardinality = 20
12 algosInFlight = 20
13
14 whiteboard = HiveWhiteBoard("EventDataSvc",
15 EventSlots=evtslots)
16
17 slimeventloopmgr = HiveSlimEventLoopMgr(OutputLevel=INFO)
18
19 scheduler = ForwardSchedulerSvc(MaxAlgosInFlight=algosInFlight,
20 OutputLevel=INFO)
21
22 a1 = CPUCruncher("A1",
23 shortCalib=True,
24 varRuntime=.1,
25 avgRuntime=.5)
26 a1.outKeys = ['/Event/a1']
27
28 a2 = CPUCruncher("A2",
29 shortCalib=True)
30 a2.inpKeys = ['/Event/a1']
31 a2.outKeys = ['/Event/a2']
32
33 a3 = CPUCruncher("A3",
34 shortCalib=True)
35 a3.inpKeys = ['/Event/a1']
36 a3.outKeys = ['/Event/a3UPS!'] # <=== MISTAKE!
37
38 a4 = CPUCruncher("A4",
39 shortCalib=True)
40 a4.inpKeys = ['/Event/a2', '/Event/a3']
41 a4.outKeys = ['/Event/a4']
42
43 for algo in [a1, a2, a3, a4]:
44 algo.Cardinality = cardinality
45 algo.OutputLevel = WARNING
46
47 ApplicationMgr(EvtMax=evtMax,
48 EvtSel='NONE',
49 ExtSvc=[whiteboard],
50 EventLoop=slimeventloopmgr,
51 TopAlg=[a1, a2, a3, a4],
52 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