CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
customizeHcalOnlyForProfiling.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # Customise the HCAL-only reconstruction to run on GPU
4 #
5 # Currently, this means:
6 # - running the unpacker on CPU, converting the digis into SoA format and copying them to GPU;
7 # - running the HBHE local reconstruction, including MAHI, on GPU.
9 
10  process.consumer = cms.EDAnalyzer("GenericConsumer",
11  eventProducts = cms.untracked.vstring('hbheRecHitProducerGPU')
12  )
13 
14  process.consume_step = cms.EndPath(process.consumer)
15 
16  process.schedule = cms.Schedule(process.raw2digi_step, process.reconstruction_step, process.consume_step)
17 
18  return process
19 
20 
21 # Customise the HCAL-only reconstruction to run on GPU, and copy the data to the host
22 #
23 # Currently, this means:
24 # - running the unpacker on CPU, converting the digis into SoA format and copying them to GPU;
25 # - running the HBHE local reconstruction, including MAHI, on GPU;
26 # - copying the rechits to CPU and converting them to legacy format.
27 #
28 # (this is equivalent to customizeHcalOnlyForProfiling, as the copy and conversion is done by the same module)
30 
31  process.consumer = cms.EDAnalyzer("GenericConsumer",
32  eventProducts = cms.untracked.vstring('hbheprereco')
33  )
34 
35  process.consume_step = cms.EndPath(process.consumer)
36 
37  process.schedule = cms.Schedule(process.raw2digi_step, process.reconstruction_step, process.consume_step)
38 
39  return process
40 
41 
42 # Customise the HCAL-only reconstruction to run on GPU, copy the data to the host, and convert to legacy format
43 #
44 # Currently, this means:
45 # - running the unpacker on CPU, converting the digis into SoA format and copying them to GPU;
46 # - running the HBHE local reconstruction, including MAHI, on GPU;
47 # - copying the rechits to CPU and converting them to legacy format.
48 #
49 # The same customisation can be also used on the CPU workflow, running up to the rechits on CPU.
51 
52  process.consumer = cms.EDAnalyzer("GenericConsumer",
53  eventProducts = cms.untracked.vstring('hbheprereco')
54  )
55 
56  process.consume_step = cms.EndPath(process.consumer)
57 
58  process.schedule = cms.Schedule(process.raw2digi_step, process.reconstruction_step, process.consume_step)
59 
60  return process