-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MTD reconstruction: speed up TrackExtenderWithMTD #36793
Changes from 3 commits
c66e89f
42b9d10
f70f9fe
0f3bf01
dda4ecb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
import FWCore.ParameterSet.Config as cms | ||
|
||
import collections | ||
|
||
def customiseEarlyDeleteForCKF(process, products): | ||
|
||
if "trackExtenderWithMTD" not in process.producerNames(): | ||
return products | ||
|
||
def _branchName(productType, moduleLabel, instanceLabel=""): | ||
return "%s_%s_%s_%s" % (productType, moduleLabel, instanceLabel, process.name_()) | ||
|
||
for name, module in process.producers_().items(): | ||
cppType = module._TypedParameterizable__type | ||
if cppType == "TrackProducer": | ||
if module.TrajectoryInEvent: | ||
products[name].append(_branchName("Trajectorys", name)) | ||
products[name].append(_branchName("TrajectorysToOnerecoTracksAssociation", name)) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Just to explain a bit more, these lines "declare" data products produced by this module that will be deleted early. The machinery in (and thus any module that has a hardcoded There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. So the only issue is in case one of these products should be made persistent, am I correct? Is there any built-in cross check to prevent conflicts in this case? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
By quick read on the code data products consumed by output modules are not deleted early. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ok, according to your last sentence persistency seems not the only possible issue... |
||
elif cppType == "DuplicateListMerger": | ||
if module.copyTrajectories: | ||
products[name].append(_branchName("Trajectorys", name)) | ||
products[name].append(_branchName("TrajectorysToOnerecoTracksAssociation", name)) | ||
|
||
return products |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also a few lines above
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the
tracksH
is then used by thefillValueMap
, if you refer to this in your comment