13A test for isolating sub-slot data from the parent slot.
14The main sequence has two steps of creating and running sub-events.
16The ViewTester is an algorithm specifically designed to create sub-event
17contexts, pass them to the scheduler, and report on the current context.
19Seven instances of ViewTester are used as follows:
20 - Algorithm A1 creates a sub-event context
21 - Algorithms A2 and A3 run within the sub-event, sharing data
22 - Algorithm A4 creates another sub-event contexts, and a data output
23 - Algorithms A5 and A6 run within the new sub-event, but cannot access data from A4
24 - Algorithm A7 runs in the whole event context, after the sub-events
26The test should stall if isolation is working
29from Configurables
import (
31 AvalancheSchedulerSvc,
61 SchedulerName=
"AvalancheSchedulerSvc", OutputLevel=DEBUG
72 ThreadPoolSize=threads, OutputLevel=INFO, VerboseSubSlots=
True
85a1 = Test__ViewTester(
"A1")
86a1.baseViewName =
"viewOne"
87a1.viewNumber = viewsPerEvt
88a1.viewNodeName =
"viewNodeOne"
90a2 = Test__ViewTester(
"A2")
92a2.outKeys = [
"/Event/a2"]
94a3 = Test__ViewTester(
"A3")
96a3.inpKeys = [
"/Event/a2"]
98a4 = Test__ViewTester(
"A4")
99a4.baseViewName =
"viewTwo"
100a4.viewNumber = viewsPerEvt
101a4.viewNodeName =
"viewNodeTwo"
102a4.outKeys = [
"/Event/a4"]
104a5 = Test__ViewTester(
"A5")
106a5.inpKeys = [
"/Event/a4"]
108a6 = Test__ViewTester(
"A6")
111a7 = Test__ViewTester(
"A7")
114for algo
in [a1, a2, a3, a4, a5, a6, a7]:
115 algo.Cardinality = cardinality
116 algo.OutputLevel = DEBUG
118viewNodeOne = Gaudi__Sequencer(
119 "viewNodeOne", Members=[a2, a3], Sequential=
False, ShortCircuit=
False
122viewNodeTwo = Gaudi__Sequencer(
123 "viewNodeTwo", Members=[a5, a6], Sequential=
False, ShortCircuit=
False
126createViewSeq = Gaudi__Sequencer(
128 Members=[a1, viewNodeOne, a4, viewNodeTwo, a7],
140 EventLoop=slimeventloopmgr,
141 TopAlg=[createViewSeq],
142 MessageSvcType=
"InertMessageSvc",
The AlgResourcePool is a concrete implementation of the IAlgResourcePool interface.
The Application Manager class.