1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
# The purpose of this unit test is to execute the code
# in the FastTimerService and at least verify that it
# runs without crashing. There is output in the log
# file and also a json file.
# The output times and memory usage values may vary from
# one job to the next. We do not want a test that can
# occasionally fail and require investigation when
# nothing is wrong, so we choose not to require certain
# values in the output.
# Besides the FastTimerService, the rest of the
# configuration is of no significance. This is
# just copied from another test configuration.
# We just needed some modules and paths to run
# in order to exercise the service.
import FWCore.ParameterSet.Config as cms
process = cms.Process("PROD1")
process.load('DQMServices.Core.DQMStore_cfi')
from HLTrigger.Timer.FastTimerService_cfi import *
process.FastTimerService = FastTimerService
process.FastTimerService.printEventSummary = True
process.FastTimerService.writeJSONSummary = True
process.FastTimerService.dqmTimeRange = 2000
process.FastTimerService.enableDQM = True
process.FastTimerService.enableDQMTransitions = True
process.FastTimerService.enableDQMbyLumiSection = True
process.FastTimerService.enableDQMbyModule = True
process.FastTimerService.enableDQMbyPath = True
process.FastTimerService.enableDQMbyProcesses = True
process.MessageLogger = cms.Service("MessageLogger",
cerr = cms.untracked.PSet(
FastReport = cms.untracked.PSet(
limit = cms.untracked.int32(1000000)
),
threshold = cms.untracked.string('INFO')
)
)
process.options = cms.untracked.PSet(
numberOfStreams = cms.untracked.uint32(1),
numberOfConcurrentRuns = cms.untracked.uint32(1),
numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(1)
)
process.source = cms.Source("IntSource")
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(3)
)
process.out = cms.OutputModule("PoolOutputModule",
fileName = cms.untracked.string('testFastTimerService.root')
)
process.dqmOutput = cms.OutputModule('DQMRootOutputModule',
fileName = cms.untracked.string('dqmOutput.root')
)
process.busy1 = cms.EDProducer("BusyWaitIntProducer",ivalue = cms.int32(1), iterations = cms.uint32(10*1000*1000))
process.a1 = cms.EDAnalyzer("TestFindProduct",
inputTags = cms.untracked.VInputTag( cms.InputTag("source") ),
expectedSum = cms.untracked.int32(530021),
inputTagsNotFound = cms.untracked.VInputTag(
cms.InputTag("source", processName=cms.InputTag.skipCurrentProcess()),
cms.InputTag("intProducer", processName=cms.InputTag.skipCurrentProcess()),
cms.InputTag("intProducerU", processName=cms.InputTag.skipCurrentProcess())
),
inputTagsBeginProcessBlock = cms.untracked.VInputTag(
cms.InputTag("intProducerBeginProcessBlock"),
),
inputTagsEndProcessBlock = cms.untracked.VInputTag(
cms.InputTag("intProducerEndProcessBlock"),
),
inputTagsEndProcessBlock2 = cms.untracked.VInputTag(
cms.InputTag("intProducerEndProcessBlock", "two"),
),
inputTagsEndProcessBlock3 = cms.untracked.VInputTag(
cms.InputTag("intProducerEndProcessBlock", "three"),
),
inputTagsEndProcessBlock4 = cms.untracked.VInputTag(
cms.InputTag("intProducerEndProcessBlock", "four"),
),
testGetterOfProducts = cms.untracked.bool(True)
)
process.a2 = cms.EDAnalyzer("TestFindProduct",
inputTags = cms.untracked.VInputTag( cms.InputTag("intProducerA") ),
expectedSum = cms.untracked.int32(300)
)
process.intProducer = cms.EDProducer("IntProducer", ivalue = cms.int32(1))
process.intProducerDeleted = cms.EDProducer("IntProducer", ivalue = cms.int32(10))
process.intProducerU = cms.EDProducer("IntProducer", ivalue = cms.int32(10))
process.intProducerA = cms.EDProducer("IntProducer", ivalue = cms.int32(100))
process.intVectorProducer = cms.EDProducer("IntVectorProducer",
count = cms.int32(9),
ivalue = cms.int32(11)
)
process.intProducerB = cms.EDProducer("IntProducer", ivalue = cms.int32(1000))
process.thingProducer = cms.EDProducer("ThingProducer")
process.intProducerBeginProcessBlock = cms.EDProducer("IntProducerBeginProcessBlock", ivalue = cms.int32(10000))
process.intProducerEndProcessBlock = cms.EDProducer("IntProducerEndProcessBlock", ivalue = cms.int32(100000))
process.t = cms.Task(process.intProducerDeleted,
process.intProducerU,
process.intProducerA,
process.intProducerB,
process.intVectorProducer,
process.intProducerBeginProcessBlock,
process.intProducerEndProcessBlock
)
process.p1 = cms.Path(process.intProducer * process.a1 * process.a2, process.t)
process.p2 = cms.Path(process.busy1 * process.thingProducer)
#process.e = cms.EndPath(process.out * process.dqmOutput)
|