The Gaudi Framework  master (82fdf313)
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 PreemptiveBlockingTasks=True,
41 MaxBlockingAlgosInFlight=50,
42 DumpIntraEventDynamics=True,
43)
44
45CPUCrunchSvc(shortCalib=True)
46
47# timeValue = precedence.UniformTimeValue(avgRuntime=0.1)
49 path="atlas/mcreco/averageTiming.mcreco.TriggerOff.json", defaultTime=0.0
50)
51# ifBlocking = precedence.UniformBooleanValue(False)
52ifBlocking = precedence.RndBiasedBooleanValue(pattern={True: 17, False: 152}, seed=1)
53
55 timeValue,
56 ifBlocking,
57 sleepFraction=0.9,
58 cfgPath="atlas/mcreco/cf.mcreco.TriggerOff.graphml",
59 dfgPath="atlas/mcreco/df.mcreco.TriggerOff.3rdEvent.graphml",
60 topSequencer="AthSequencer/AthMasterSeq",
61).get()
62
64 EvtMax=evtMax,
65 EvtSel="NONE",
66 ExtSvc=[whiteboard],
67 EventLoop=slimeventloopmgr,
68 TopAlg=[sequencer],
69 MessageSvcType="InertMessageSvc",
70 OutputLevel=INFO,
71)
The Application Manager class.
Data service base class.
Thread safe extension to the standard MessageSvc.