The Gaudi Framework  v29r0 (ff2e7097)
BugCFHEP114.py
Go to the documentation of this file.
1 #!/usr/bin/env gaudirun.py
2 
3 '''
4 Options file to test fix for https://sft.its.cern.ch/jira/browse/CFHEP-114
5 a problem which is ther when declaring dependencies explicitely in the scheduler
6 and having more dependencies than algorithms.
7 '''
8 
9 from Gaudi.Configuration import *
10 from Configurables import HiveWhiteBoard, HiveSlimEventLoopMgr, ForwardSchedulerSvc, CPUCruncher, AlgResourcePool
11 
12 InertMessageSvc(OutputLevel=INFO)
13 
14 # metaconfig
15 evtslots = 13
16 evtMax = 50
17 cardinality = 10
18 algosInFlight = 10
19 
20 whiteboard = HiveWhiteBoard("EventDataSvc",
21  EventSlots=evtslots)
22 
23 slimeventloopmgr = HiveSlimEventLoopMgr(OutputLevel=INFO)
24 
25 scheduler = ForwardSchedulerSvc(MaxEventsInFlight=evtslots,
26  MaxAlgosInFlight=algosInFlight,
27  OutputLevel=WARNING)
28 
29 AlgResourcePool(OutputLevel=DEBUG)
30 
31 a1 = CPUCruncher("A1",
32  shortCalib=True,
33  varRuntime=.01,
34  avgRuntime=.1)
35 a1.outKeys = ['/Event/a1']
36 
37 a2 = CPUCruncher("A2",
38  shortCalib=True)
39 a2.outKeys = ['/Event/a2']
40 
41 a3 = CPUCruncher("A3",
42  shortCalib=True)
43 a3.outKeys = ['/Event/a3', '/Event/a4']
44 
45 a4 = CPUCruncher("A4",
46  shortCalib=True)
47 a4.outKeys = ['/Event/a5']
48 
49 for algo in [a1, a2, a3, a4]:
50  algo.Cardinality = cardinality
51  algo.OutputLevel = WARNING
52 
53 ApplicationMgr(EvtMax=evtMax,
54  EvtSel='NONE',
55  ExtSvc=[whiteboard],
56  EventLoop=slimeventloopmgr,
57  TopAlg=[a1, a2, a3, a4],
58  MessageSvcType="InertMessageSvc")
Thread safe extension to the standard MessageSvc.
The Application Manager class.