The Gaudi Framework  v31r0 (aeb156f0)
AtlasMCRecoFullPrecedenceDump.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,
5  AvalancheSchedulerSvc, PrecedenceSvc, TimelineSvc)
6 
7 # convenience machinery for assembling custom graphs of algorithm
8 # precedence rules (w/ CPUCrunchers as algorithms)
9 from GaudiHive import precedence
10 
11 # metaconfig
12 evtslots = 1
13 evtMax = 1
14 algosInFlight = 1
15 enableTimeline = True
16 
17 InertMessageSvc(OutputLevel=INFO)
18 
19 ##########################################################################
20 # test the task precedence rules and trace dumping mechanisms ############
21 ##########################################################################
23  DumpPrecedenceRules=True, DumpPrecedenceTrace=True, OutputLevel=DEBUG)
24 TimelineSvc(RecordTimeline=enableTimeline, OutputLevel=DEBUG)
25 ##########################################################################
26 
27 whiteboard = HiveWhiteBoard(
28  "EventDataSvc", EventSlots=evtslots, OutputLevel=INFO)
29 
30 slimeventloopmgr = HiveSlimEventLoopMgr(
31  SchedulerName="AvalancheSchedulerSvc", OutputLevel=DEBUG)
32 
34  ThreadPoolSize=algosInFlight, OutputLevel=DEBUG)
35 
36 timeValue = precedence.RealTimeValue(
37  path="atlas/mcreco/averageTiming.mcreco.TriggerOff.json", defaultTime=0.0)
38 ifIObound = precedence.UniformBooleanValue(False)
39 
40 sequencer = precedence.CruncherSequence(
41  timeValue,
42  ifIObound,
43  sleepFraction=0.0,
44  cfgPath="atlas/mcreco/cf.mcreco.TriggerOff.graphml",
45  dfgPath="atlas/mcreco/df.mcreco.TriggerOff.3rdEvent.graphml",
46  topSequencer='AthSequencer/AthMasterSeq',
47  timeline=enableTimeline).get()
48 
50  EvtMax=evtMax,
51  EvtSel='NONE',
52  ExtSvc=[whiteboard],
53  EventLoop=slimeventloopmgr,
54  TopAlg=[sequencer],
55  MessageSvcType="InertMessageSvc",
56  OutputLevel=INFO)
Thread safe extension to the standard MessageSvc.
A service to resolve the task execution precedence.
Definition: PrecedenceSvc.h:21
Data service base class.
The Application Manager class.