The Gaudi Framework  v36r1 (3e2fb5a8)
AtlasMCRecoFullPrecedenceDump.py
Go to the documentation of this file.
1 #!/usr/bin/env gaudirun.py
2 
12 
13 from Gaudi.Configuration import *
14 from Configurables import (HiveWhiteBoard, HiveSlimEventLoopMgr,
15  AvalancheSchedulerSvc, PrecedenceSvc, TimelineSvc)
16 
17 # convenience machinery for assembling custom graphs of algorithm
18 # precedence rules (w/ CPUCrunchers as algorithms)
19 from GaudiHive import precedence
20 
21 # metaconfig
22 evtslots = 2
23 evtMax = 4
24 algosInFlight = 2
25 enableTimeline = True
26 
27 InertMessageSvc(OutputLevel=INFO)
28 
29 
32 PrecedenceSvc(
33  DumpPrecedenceRules=True, DumpPrecedenceTrace=True, OutputLevel=DEBUG)
34 TimelineSvc(RecordTimeline=enableTimeline, OutputLevel=DEBUG)
35 
36 
37 whiteboard = HiveWhiteBoard(
38  "EventDataSvc", EventSlots=evtslots, OutputLevel=INFO)
39 
40 slimeventloopmgr = HiveSlimEventLoopMgr(
41  SchedulerName="AvalancheSchedulerSvc", OutputLevel=DEBUG)
42 
43 scheduler = AvalancheSchedulerSvc(
44  ThreadPoolSize=algosInFlight, OutputLevel=DEBUG)
45 
46 timeValue = precedence.RealTimeValue(
47  path="atlas/q431/time.r2a.json", defaultTime=0.1)
48 ifIObound = precedence.UniformBooleanValue(False)
49 
50 sequencer = precedence.CruncherSequence(
51  timeValue,
52  ifIObound,
53  sleepFraction=0.0,
54  cfgPath="atlas/q431/cf.r2a.graphml",
55  dfgPath="atlas/q431/df.r2a.graphml",
56  topSequencer='AthSequencer/AthMasterSeq',
57  timeline=enableTimeline).get()
58 
60  EvtMax=evtMax,
61  EvtSel='NONE',
62  ExtSvc=[whiteboard],
63  EventLoop=slimeventloopmgr,
64  TopAlg=[sequencer],
65  MessageSvcType="InertMessageSvc",
66  OutputLevel=INFO)
InertMessageSvc
Definition: InertMessageSvc.h:36
Gaudi::Functional::details::get
auto get(const Handle &handle, const Algo &, const EventContext &) -> decltype(details::deref(handle.get()))
Definition: FunctionalDetails.h:391
Gaudi.Configuration
Definition: Configuration.py:1
ApplicationMgr
Definition: ApplicationMgr.h:57