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

RecoParticleFlow/PFProducer - some cleanup and modernization #26519

Merged
merged 5 commits into from Apr 25, 2019
Merged

RecoParticleFlow/PFProducer - some cleanup and modernization #26519

merged 5 commits into from Apr 25, 2019

Conversation

guitargeek
Copy link
Contributor

@guitargeek guitargeek commented Apr 23, 2019

PR description:

After my last slightly unpopular PR with the PFBlockAlgo I'm back with some other quick ideas on simplifying and modernizing the PF code :)

  • KDTreeLinkerTools: structs with only public members don't need constructors and setters/getters
  • PFAlgo: unique_ptr to sub-algos instead of raw pointers
  • PFCandConnector: change some members to local variables which allows for const member functions and avoids smart pointers
  • PFProducer: have the PFAlgo on the stack and use the PutToken at one place to accommodate for not using unique_ptr in the PFCandConnector
  • PFBlockLink: remove that class. The information it stores became redundant after the Run2 rewrite of the BlockProducer, only the dist member is actually used => the class can just be replaced with a double
  • PFBlockAlgo: adapt to the removal of the PFBlockLink class

Furthermore, the includes in the PFBlockAlgo/PFBlockProducer were cleaned up. For this, I used the necessary includes found by the include-what-you-use (iwyu) tool in my old PR and spread them across the 4 files as appropriate.

PR validation:

Code compiles and matrix tests complete.

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@guitargeek
Copy link
Contributor Author

Hi @slava77, I just saw you commented in my last PR which was closed (so I didn't get an email notification). Right, the includes! I should quickly clean them up. Moving the algo in the plugins directory would be a bit too much I think, because that would apply to all the algos actually. And moving only one would be a bit inconsistent...

@guitargeek guitargeek changed the title RecoParticleFlow/PFProduce - some cleanup and modernization RecoParticleFlow/PFProducer - some cleanup and modernization Apr 23, 2019
@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26519/9381

  • This PR adds an extra 100KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @guitargeek (Jonas Rembser) for master.

It involves the following packages:

RecoParticleFlow/PFProducer

@perrotta, @cmsbuild, @slava77 can you please review it and eventually sign? Thanks.
@mmarionncern, @hatakeyamak, @lgray, @seemasharmafnal, @cbernet, @bachtis this is something you requested to watch as well.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@slava77
Copy link
Contributor

slava77 commented Apr 23, 2019

@cmsbuild please test

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26519/9382

  • This PR adds an extra 104KB to repository

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 23, 2019

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/34310/console Started: 2019/04/23 23:46

@cmsbuild
Copy link
Contributor

Pull request #26519 was updated. @perrotta, @cmsbuild, @slava77 can you please check and sign again.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.




private :

/// Analyse nuclear interactions where a primary or merged track is present
void analyseNuclearWPrim(std::unique_ptr<reco::PFCandidateCollection>&, unsigned int);
void analyseNuclearWPrim(reco::PFCandidateCollection&, std::vector<bool> &, unsigned int) const;

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I updated with force-push because my mistake that caused the differences was not interesting enough for it's own commit: I forgot to pass the mask vector by reference (also in the other function)...

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26519/9387

  • This PR adds an extra 104KB to repository

@cmsbuild
Copy link
Contributor

Pull request #26519 was updated. @perrotta, @cmsbuild, @slava77 can you please check and sign again.

@slava77
Copy link
Contributor

slava77 commented Apr 24, 2019

@cmsbuild please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 24, 2019

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/34320/console Started: 2019/04/24 14:26

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-26519/34320/summary.html

There are some workflows for which there are errors in the baseline:
1001.0 step 2
The results for the comparisons for these workflows could be incomplete
This means most likely that the IB is having errors in the relvals.The error does NOT come from this pull request

Comparison Summary:

  • You potentially added 530 lines to the logs
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3211870
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3211665
  • DQMHistoTests: Total skipped: 204
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 130 log files, 14 edm output root files, 32 DQM output files

@slava77
Copy link
Contributor

slava77 commented Apr 24, 2019

+1

for #26519 23dd640

  • code changes are in line with the PR description
  • jenkins tests pass and comparisons with the baseline show no differences

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2)

@kpedro88
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 01cf38a into cms-sw:master Apr 25, 2019
@guitargeek guitargeek deleted the PFProducer_cleanup_1 branch April 25, 2019 21:40
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

4 participants