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

migrating to multithreading of RPCPointProducer #9100

Merged
merged 10 commits into from
Jul 7, 2015

Conversation

HuguesBrun
Copy link
Contributor

  • migration of the module to a stream producer
  • make const the configuration parameters
  • add override to inherited methods

will be backported in 74X

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @HuguesBrun (Hugues BRUN) for CMSSW_7_5_X.

migrating to multithreading of RPCPointProducer

It involves the following packages:

RecoLocalMuon/RPCRecHit

@cmsbuild, @cvuosalo, @nclopezo, @slava77 can you please review it and eventually sign? Thanks.
@bellan, @jhgoh this is something you requested to watch as well.
You can sign-off by replying to this message having '+1' in the first line of your reply.
You can reject by replying to this message having '-1' in the first line of your reply.
If you are a L2 or a release manager you can ask for tests by saying 'please test' in the first line of a comment.
@nclopezo you are the release manager for this.
You can merge this pull request by typing 'merge' in the first line of your comment.

@slava77
Copy link
Contributor

slava77 commented May 15, 2015

@cmsbuild please test

@cmsbuild
Copy link
Contributor

The tests are being triggered in jenkins.

@Dr15Jones
Copy link
Contributor

I'm afraid RPCPointProducer can't be made thread safe since it accesses a static. The static analyzer found the following global variable accessed by RPCPointProducer

In call stack '  RPCPointProducer::produce() calls function  CSCSegtoRPC::CSCSegtoRPC() calls function  ObjectMapCSC::GetRolls() static variable  ObjectMapCSC::mapInstance' is accessed , 'RPCPointProducer::produce()' overrides 'edm::EDProducer::produce() virtual'

In call stack '  RPCPointProducer::produce() calls function  DTSegtoRPC::DTSegtoRPC() calls function  ObjectMap::GetInstance() static variable  ObjectMap::mapInstance' is accessed , 'RPCPointProducer::produce()' overrides 'edm::EDProducer::produce() virtual'

In call stack '  RPCPointProducer::produce() calls function  TracktoRPC::TracktoRPC() calls function  ObjectMap2::GetInstance() static variable  ObjectMap2::mapInstance' is accessed , 'RPCPointProducer::produce()' overrides 'edm::EDProducer::produce() virtual'

In call stack '  RPCPointProducer::produce() calls function  TracktoRPC::TracktoRPC() calls function  ObjectMap2CSC::GetRolls() static variable  ObjectMap2CSC::mapInstance' is accessed , 'RPCPointProducer::produce()' overrides 'edm::EDProducer::produce() virtual'

@Dr15Jones
Copy link
Contributor

-1

@cmsbuild
Copy link
Contributor

@cvuosalo
Copy link
Contributor

cvuosalo commented Jul 5, 2015

+1

For #9100 cb784e5

Making RPCPointProducer thread safe. There should be no change in monitored quantities.

The code changes are satisfactory, and Jenkins tests against baseline CMSSW_7_5_X_2015-07-03-2300 show no significant differences, as expected.

@cmsbuild
Copy link
Contributor

cmsbuild commented Jul 5, 2015

This pull request is fully signed and it will be integrated in one of the next CMSSW_7_5_X IBs once checked with relvals in the development release cycle of CMSSW (tests are also fine). This pull request requires discussion in the ORP meeting before it's merged. @davidlange6, @Degano, @smuzaffar

@davidlange6
Copy link
Contributor

+1

@Martin-Grunewald
Copy link
Contributor

Now 75X IBs are broken as well!
This is not acceptable.
Please revert these changes from all releases!

@Dr15Jones
Copy link
Contributor

@Martin-Grunewald Could you be a bit more specific about what is broken?

@Martin-Grunewald
Copy link
Contributor

Please see the thread for the same 76X PR, #9760 .

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

7 participants