Skip to content
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

MET PAT tool update + update of MET significance #13115

Merged
merged 38 commits into from Mar 17, 2016

Conversation

mmarionncern
Copy link

This PR contains the following changes :

  • fix several tiny bugs in the MET tool (e.g. JECs were not properly propagated when only reapplied on slimmed jets, met significance set to zero arbitrary in the wrong constructor)
  • revisits the jet smearing code
  • enable the jet smearing and its propagation to the MET
  • revisits the MET unclustered energy uncertainties with detector based resolution instead of the ad-hoc 10%
  • uniformize the jet selection for Type1MET correction and MET JES uncertainties
  • enable the use of DB JER numbers for teh MET significance and jet smearing
  • fix the scheduled mode of the PAT MET tool

======= /!\ IMPORTANT NOTICE /!\ =========

Jet energy resolution values are now available in the database, but not yet stored in it. and those values are used in the jet smearing and in the met significance computation. In the lack of GT containing a JetResolutionRcd entry, all tests (runTheMatrix or standard tests) involving a PAT process will fail if it touches the MET tool.

Packages involved :

  • DataFormats/METReco
  • DataFormats/PatCandidates
  • JetMETCorrections/Modules
  • JetMETCorrections/Type1MET
  • PhysicsTools/PatAlgos
  • PhysicsTools/PatUtils
  • RecoMET/METAlgorithms
  • RecoMET/METProducers

Changes expected :

  • very tiny change in CPU consumption due the MET significance computation
  • MET significance is now computed in the central pat::MET
  • tiny change expected in the slimmedMET/ patPFMetType1 pT values due to the uniformization of cleaning (removal of overlaps selected/slimmed muons and electrons)
  • unclustered uncertainties changed
  • smeared MET not set to the central value anymore
  • JER uncertainties accessible if someone uses the smeared MET

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @mmarionncern for CMSSW_8_0_X.

It involves the following packages:

DataFormats/PatCandidates
JetMETCorrections/Type1MET
PhysicsTools/PatAlgos
PhysicsTools/PatUtils
RecoMET/METAlgorithms
RecoMET/METProducers

@cvuosalo, @monttj, @cmsbuild, @slava77, @vadler, @davidlange6 can you please review it and eventually sign? Thanks.
@rappoccio, @imarches, @ahinzmann, @acaudron, @TaiSakuma, @jdolen, @nhanvtran, @schoef, @ferencek, @gpetruc, @mariadalfonso, @pvmulder this is something you requested to watch as well.
@slava77, @Degano, @smuzaffar you are the release manager for this.

cms-bot commands are list here #13028

{
token_ = consumes<std::vector<T> >(cfg.getParameter<edm::InputTag>("src"));

if ( cfg.exists("offsetCorrLabel") ) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cfg.exists can be used only in exceptional cases (e.g. there is a large number of existing configs to be modified or the parameter is interpreted by a remotely called helper class).
Please use fillDescriptions method
https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideConfigurationValidationAndHelp

@slava77
Copy link
Contributor

slava77 commented Jan 28, 2016

@mmarionncern
when should we expect the GT?
If I understood your message correctly, if we runTheMatrix.py -l limited -i all, the steps with PAT will now fail.

@slava77
Copy link
Contributor

slava77 commented Jan 28, 2016

@cmsbuild please test
(there are enough code changes so that the static analysis would be useful, even though it sounds like the code will fail run time)

@cmsbuild
Copy link
Contributor

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/10829/console

@mmarionncern
Copy link
Author

@slava77 the GT should come soon, this has been set to the highest priority by the JetMET people. And yes, the runTheMatrix step in PAT will fail

@cmsbuild
Copy link
Contributor

-1

Tested at: e4ca7a3
I found errors in the following unit tests:

---> test testRecoMETMETProducers had ERRORS
---> test runtestPhysicsToolsPatAlgos had ERRORS

you can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-13115/10829/summary.html

@schoef
Copy link
Contributor

schoef commented Jan 29, 2016

GT has been requested by Sebastian
https://hypernews.cern.ch/HyperNews/CMS/get/calibrations/2212.html

@mmusich
Copy link
Contributor

mmusich commented Jan 29, 2016

assign alca

@mmusich
Copy link
Contributor

mmusich commented Jan 29, 2016

@mmarionncern the requested Global Tags (for MC) are ready:
https://hypernews.cern.ch/HyperNews/CMS/get/calibrations/2212/2/1/1/1.html

  • 80X_mcRun2_design_v3
    As 80X_mcRun2_design_v2 with:
    additions of 8 labels for JetResolutionRcdand 4 labels for JetResolutionScaleFactorRcd
  • 80X_mcRun2_asymptotic_v3
    As 80X_mcRun2_asymptotic_v2 with:
    additions of 8 labels for JetResolutionRcd and 4 labels for JetResolutionScaleFactorRcd
  • 80X_mcRun2_startup_v3
    As 80X_mcRun2_startup_v2 with:
    additions of 8 labels for JetResolutionRcdand 4 labels for JetResolutionScaleFactorRcd

Please update your branch chaging the relevant keys of Configuration/AlCa/autoCond.py

@slava77
Copy link
Contributor

slava77 commented Jan 29, 2016

There are problems running the tests unrelated to GT

An exception of category 'WrongPluginLoaded' occurred while
   [0] Constructing the EventProcessor
Exception Message:
The plugin 'JetCorrectionESChain' should have been loaded from
 '/tmp/cmsbuild/workspace/ib-any-integration/CMSSW_8_0_X_2016-01-27-2300/lib/slc6_amd64_gcc493/pluginPhysicsToolsPatAlgos_plugins.so'
 but instead it was already loaded from
 '/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-01-27-2300/lib/slc6_amd64_gcc493/pluginRecoLocalCaloHcalRecAlgosPlugin.so'
 because some other plugin was loaded from the latter loadables.
To work around the problem the plugin 'JetCorrectionESChain' should only be defined in one of these loadables.
----- End Fatal Exception -------------------------------------------------

It looks like JetMETCorrections/Modules/src containing plugins is the problem.
All files (and headers for them) that define plugins (ES/EDProducers) should be collected in the plugins/ directory; things go unexpectedly bad when they are in /src and /plugins.

@cmsbuild
Copy link
Contributor

Pull request #13115 was updated. @cvuosalo, @monttj, @cmsbuild, @slava77, @vadler, @davidlange6 can you please check and sign again.

@slava77
Copy link
Contributor

slava77 commented Mar 10, 2016

@cmsbuild please test

@cmsbuild
Copy link
Contributor

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/11811/console

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

@slava77
Copy link
Contributor

slava77 commented Mar 10, 2016

+1

for #13115 1f1c606

  • code changes are somewhat in line with the description (plus the puppi for MET updates mentioned towards the end of the thread). Changes affect only miniAOD products.
  • jenkins tests pass and comparisons with baseline show rather minor changes in puppi MET and in puppi Jet quantities: in the jets the changes are driven by the reduction of the threshold to 15 GeV
  • technical performance was checked earlier in MET PAT tool update + update of MET significance #13115 (comment) : CPU increase is small
    • all new modules and different copies of jets and candidates introduced by new modules (~100 modules selecting/shifting/smearing jets/leptons/candidates) correspond to about 67 MB/thread increase in memory of miniAOD-only application (my 8-thread test had ~540MB increase in RSS). It's probably OK now (it doesn't look like a leak, just a baseline increase).
  • tested locally on ttbar PU35 ~1.5K events: the tail in MET introduced in the next-to-last iteration is gone together with the change in HFEM ET fraction

@slava77
Copy link
Contributor

slava77 commented Mar 10, 2016

@davidlange6 this so far is the last large PR with 80X miniAOD changes

@slava77
Copy link
Contributor

slava77 commented Mar 10, 2016

I looked at the memory with one thread now. All of the ~500MB are here as well, not plainly proportional per thread.
This may start killing RelVals.
I'm going to look in more details.
It sounds like the saga is not over yet.

@slava77
Copy link
Contributor

slava77 commented Mar 10, 2016

@davidlange6
Fix to the memory issue reported in #13115 (comment)
is resolved in #13682

davidlange6 added a commit that referenced this pull request Mar 17, 2016
MET PAT tool update + update of MET significance
@davidlange6 davidlange6 merged commit 6c4b6cd into cms-sw:CMSSW_8_0_X Mar 17, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet