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
Devirtualize PFBlockElement daughter classes #33127
Devirtualize PFBlockElement daughter classes #33127
Conversation
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33127/21481
|
A new Pull Request was created by @zeratul87 for master. It involves the following packages: DataFormats/ParticleFlowReco @perrotta, @jpata, @cmsbuild, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33127/21483
|
@cmsbuild please test |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-ab0946/13394/summary.html Comparison SummarySummary:
|
Excellent. Would it make sense to have a look to all other daughters of "PFBlockElement"? |
On 3/10/21 1:46 AM, Vincenzo Innocente wrote:
Excellent. Would it make sense to have a look to all other daughters of
"PFBlockElement"?
—
I agree, it makes sense to check there as well
|
OTOH, nothing else similarly relevant shows up in the profiler report https://jpata.web.cern.ch/jpata/cgi-bin/igprof-navigator/releases/11_3_0_pre4/23434.21/step3/cpu/252 Perhaps a trivial finalization can still be done. |
+1
@zeratul87 please update the PR description to include the latest profiler result corresponding to the current status of this PR |
I have added devirtualization for the other PFBlockElement daughter classes here since it is a minor change. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33127/21505
|
@cmsbuild please test @zeratul87 thank you for the quick update |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-ab0946/13429/summary.html Comparison SummarySummary:
|
+1
|
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. @silviodonato, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
This PR addresses the performance issues discussed in issue #33083. The
PFBlockElementTrack
,PFBlockElementBrem
,PFBlockElementCluster
,PFBlockElementSuperCluster
, andPFBlockElementGsfTrack
daughter classes ofPFBlockElement
are devirtualized. Bitmasks are now used forPFBlockElementGsfTrack::isSecondary
and in place of the logical operators used forPFBlockElementTrack::isLinkedToDisplacedVertex
.PR validation:
The performance was profiled with igprof using step 3 of matrix test 23434.21:
Base: https://msaunder.web.cern.ch/msaunder/cgi-bin/igprof-navigator/gitIssues/33083/step3_23434_21_base/1728
Final: https://msaunder.web.cern.ch/msaunder/cgi-bin/igprof-navigator/gitIssues/33083/step3_23434_21_final/3332
This is not a backport.
@hatakeyamak @bendavid @rappoccio @laurenhay