The Gaudi Framework  master (ad37f17d)
Loading...
Searching...
No Matches
OffloadAtlasMCRecoScenario.py
Go to the documentation of this file.
1#!/usr/bin/env gaudirun.py
2
12
13from Configurables import (
14 AvalancheSchedulerSvc,
15 CPUCrunchSvc,
16 HiveSlimEventLoopMgr,
17 HiveWhiteBoard,
18)
19from Gaudi.Configuration import *
20
21# convenience machinery for assembling custom graphs of algorithm precedence rules (w/ CPUCrunchers as algorithms)
22from GaudiHive import precedence
23
24# metaconfig
25evtslots = 1
26evtMax = 10
27algosInFlight = 4
28
29InertMessageSvc(OutputLevel=INFO)
30
31whiteboard = HiveWhiteBoard("EventDataSvc", EventSlots=evtslots, OutputLevel=INFO)
32
33slimeventloopmgr = HiveSlimEventLoopMgr(
34 SchedulerName="AvalancheSchedulerSvc", OutputLevel=INFO
35)
36
38 ThreadPoolSize=algosInFlight,
39 OutputLevel=INFO,
40 DumpIntraEventDynamics=True,
41)
42
43CPUCrunchSvc(shortCalib=True)
44
45# timeValue = precedence.UniformTimeValue(avgRuntime=0.1)
47 path="atlas/mcreco/averageTiming.mcreco.TriggerOff.json", defaultTime=0.0
48)
49# ifBlocking = precedence.UniformBooleanValue(False)
50ifBlocking = precedence.RndBiasedBooleanValue(pattern={True: 17, False: 152}, seed=1)
51
53 timeValue,
54 ifBlocking,
55 sleepFraction=0.9,
56 cfgPath="atlas/mcreco/cf.mcreco.TriggerOff.graphml",
57 dfgPath="atlas/mcreco/df.mcreco.TriggerOff.3rdEvent.graphml",
58 topSequencer="AthSequencer/AthMasterSeq",
59).get()
60
62 EvtMax=evtMax,
63 EvtSel="NONE",
64 ExtSvc=[whiteboard],
65 EventLoop=slimeventloopmgr,
66 TopAlg=[sequencer],
67 MessageSvcType="InertMessageSvc",
68 OutputLevel=INFO,
69)
The Application Manager class.
Data service base class.
Thread safe extension to the standard MessageSvc.