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
Removed use of CLHEP::HepMatrix::determinant #8318
Removed use of CLHEP::HepMatrix::determinant #8318
Conversation
The determinant calculation of CLHEP::HepMatrix is not thread safe since it uses a global memory cache. Switching to SMatrix solve the problem. One complication is HeMatrix starts counting at 1 while SMatrix starts at 0.
A new Pull Request was created by @Dr15Jones (Chris Jones) for CMSSW_7_4_X. Removed use of CLHEP::HepMatrix::determinant It involves the following packages: RecoMuon/MuonSeedGenerator @cmsbuild, @cvuosalo, @nclopezo, @slava77 can you please review it and eventually sign? Thanks. |
I did test running workflow 14.0 with this change and it succeeded. It was on workflow 14.0 which helgrind found the problem originally. |
please test |
The tests are being triggered in jenkins. |
Starting matrix tests since Jenkins doesn't seem to be giving any results. |
In file SETFilter.cc, on lines 616-619, the static analyzer notes that the "newPhi" variable is calculated but never used: double newPhi = result_phi.first; Looking at the code, I wonder whether newPhi should be used in place of "result_phi.first". If it really isn't needed, it should be deleted. This issue could be addressed in this PR or a later one. |
+1 This PR replaces use of non-thread-safe CLHEP::HepMatrix with a thread-safe matrix class. The new class should duplicate the old functionality, so there should be no change in reco outputs. The code change is satisfactory, as are the Jenkins test results. Short matrix tests against baseline CMSSW_7_4_X_2015-03-15-0200 show no significant differences, as expected. |
+1 Trying again to approve. Maybe the bot will notice this time. |
This pull request is fully signed and it will be integrated in one of the next CMSSW_7_4_X IBs unless changes (tests are also fine). This pull request requires discussion in the ORP meeting before it's merged. @davidlange6, @Degano, @ktf, @smuzaffar |
+1 |
Removed use of CLHEP::HepMatrix::determinant
The determinant calculation of CLHEP::HepMatrix is not thread safe
since it uses a global memory cache. Switching to SMatrix solve the
problem. One complication is HeMatrix starts counting at 1 while
SMatrix starts at 0.