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
Trim FastjetJetProducer memory (forward port #9203) #9206
Trim FastjetJetProducer memory (forward port #9203) #9206
Conversation
This is a good cleanup anyway, so I think it should be included in 75x also. Cheers, |
A new Pull Request was created by @mark-grimes (Mark Grimes) for CMSSW_7_5_X. Trim FastjetJetProducer memory (forward port #9203) It involves the following packages: RecoJets/JetProducers @cmsbuild, @cvuosalo, @nclopezo, @slava77 can you please review it and eventually sign? Thanks. |
@cmsbuild please test |
The tests are being triggered in jenkins. |
+1 Reduces memory usage by clearing some FastJetProducer objects after they are no longer needed. No change in monitored quantities should occur. #9210 (already approved) is the 74X version of this PR. The code changes are satisfactory, as are the Jenkins tests. Tests with workflow 25202.0_TTbar_13 against baseline CMSSW_7_5_X_2015-05-20-2300 using 50 events show no significant differences. Similar tests for #9210 show the same. Memory usage seems to go down slightly: CMSSW_7_5_X_2015-05-20-2300 #9206 |
This pull request is fully signed and it will be integrated in one of the next CMSSW_7_5_X IBs unless changes (tests are also fine). This pull request requires discussion in the ORP meeting before it's merged. @davidlange6, @nclopezo, @smuzaffar |
+1 |
Trim FastjetJetProducer memory (forward port #9203)
This forward ports some memory improvements found in 6_2_X_SLHC. At 200 pileup it saved ~70Mb memory, there are plots on #9203. Presumably at lower pileup the savings aren't as good.
Note that this is from empirically checking where the memory was being used - there could be other subclasses of
VirtualJetProducer
that would benefit from a similar fix. I didn't want to touch thefjClusterSeq_
object in the base class because I didn't know how the other subclasses use it - for FastjetJetProducer I can see that it's recreated anew with every event.At 200 pileup 1/7th of the memory saving was from swapping out the work vectors, and 6/7th was from freeing the
fjClusterSeq_
object.@rappoccio, @lgray