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
Reco Updates -- Fix ParticleFlow ECAL Cluster timing. #837
Conversation
…er by refactorizing PositionCalc
A new Pull Request was created by @lgray (Lindsey Gray) for CMSSW_7_0_X. Fix particleFlowClusterECAL timing. It involves the following packages: RecoParticleFlow/Configuration @thspeer, @slava77 can you please review it and eventually sign? Thanks. |
On 15 Sep 2013, at 18:58, Lindsey Gray notifications@github.com wrote:
sure, it's probably quicker if you do the change and I will review and cross check Stefano
|
Hi @lgray |
@nclopezo Ahh ok, I was just uninformed. :-) |
Indeed. The plan is to have a "tests-pending" / "tests-done" label so that we can quickly find out what as been tested and what not, eventually resetting the label if a pull request is updated. @nclopezo this does not prevent you from actually reading the comments. In this particular case a change was requested and in any case you'll have to run again. |
@slava77 working on it |
@lgray Changes in PF photons in EE are quite significant for TTBarPU workflow (202.0) The same distribution looks ~OK for signle gamma 35 sample. Could you please investigate and see if there is a bug. I was testing with respect to CMSSW_7_0_X_2013-09-24-1400 Thanks Slava |
Pull request #837 was updated. @nclopezo, @smuzaffar, @thspeer, @slava77 can you please check and sign again. |
Pull request #837 was updated. @nclopezo, @smuzaffar, @thspeer, @slava77 can you please check and sign again. |
Pull request #837 was updated. @nclopezo, @smuzaffar, @thspeer, @slava77 can you please check and sign again. |
if( 0 == iRecHits || 0 == iSubGeom ) { | ||
throw cms::Exception("PositionCalc") | ||
<< "Calculate_Location() called uninitialized or wrong initialization."; | ||
} | ||
|
||
if( 0 != iDetIds.size() && |
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.
(since we are still fishing for a problem in this PR, why not make a simple fix)
! iDetIds.empty()
(and similarly below) takes less cycles
Hi Lindsey, Redoing the tests from scratch still didn't help. It's not immediately obvious to me that the changes in the PFClusterAlgo are identical Slava |
Pull request #837 was updated. @nclopezo, @smuzaffar, @thspeer, @slava77 can you please check and sign again. |
+1 https://cmssdt.cern.ch/jenkins/job/Pull-Request-Integration/ARCHITECTURE=slc5_amd64_gcc481/699/console And you can see the comparison with CMSSW_7_0_X_2013-09-30-0200 here: |
Logs are suspiciously too equal. We should check they are actually correct. |
Which logs? |
The comparison log @nclopezo post ed Sent from my iPhone On 30/set/2013, at 15:58, slava77 notifications@github.com wrote:
|
Do you mean the baseLineComparisons ? (my inference powers are dwindling) |
yes, that ones |
OK, that was the goal of this PR, to have no differences in physics performance |
@slava77 I'll check again to make sure the timing improvements are there after moving the push_back(). |
Lindsey, |
@slava77 0.045 sec/event from running on 200 events of ttbar. Let me know how the rest turns out. |
+1 Tested 8eba4e6 in CMSSW_7_0_X_2013-09-24-1400 as sign254. Timing of particleFlowClusterECAL went down reasonably close to the performance before changes made in #706. |
This pull request is fully signed and it will be integrated in one of the next IBs unless changes or unless it breaks tests. @ktf can you please take care of it? |
Reco Updates -- Fix ParticleFlow ECAL Cluster timing.
@bendavid @slava77
Down to 0.05 sec/event from 0.12 sec/event in #706.
The timing was 0.03 sec/event originally.
Further improvements would require factorization of PositionCalc code to take advantage of the PFCluster's refs to its rechits. Most of the extra time is spent building the necessary structures for pos calc and then in poscalc it is spent searching for the rechits in the sorted collection.
Since the PFClusters have the refs to the rechits that compose them, searching for the associated rechit again isn't really necessary.
@argiro : Perhaps we could factor apart the rechit energy determination and position weighting parts of PositionCalc into two steps? If the sorted rechit collection wasn't required for the latter it would speed things up significantly in PFClusterAlgo.