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

migrate few E/Gamma HLT modules from legacy to stream or global #6449

Merged

Conversation

fwyzard
Copy link
Contributor

@fwyzard fwyzard commented Nov 17, 2014

No description provided.

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @fwyzard (Andrea Bocci) for CMSSW_7_3_X.

migrate few E/Gamma HLT modules from legacy to stream or global

It involves the following packages:

RecoEgamma/EgammaHLTProducers

@Martin-Grunewald, @perrotta, @cmsbuild, @nclopezo, @fwyzard can you please review it and eventually sign? Thanks.
@lgray 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.
@nclopezo you are the release manager for this.
You can merge this pull request by typing 'merge' in the first line of your comment.

@Martin-Grunewald
Copy link
Contributor

Hi @fwyzard

I am confused how you decide between "stream" and "global".
I thought that "stream" should be default (for EDProducers and EDFilters,
who are fine with just seeing the stream-subset of events) while "global"
should just be for those which need to see all events, such as EDAnalyzers
or OMs.
So what drives your choices?

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 17, 2014

Hi Martin,
so far I'm basing my choice on this:

  • if the module does not have any non-const data members (i.e., nothing but the configuration parameters), I make it global ;
  • if the module has non-const data members (including objects that depend on the current IOV), I make it stream .

My assumption is that a global module is slightly more efficient, so I try that when possible.

.A

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 17, 2014

By the way, we should add some multithreading run-time tests.
@Martin-Grunewald , is it OK for you if I turn on multithreading in the pass of hltIntegrationTest that runs the whole menu ?
Comparing its results with single-threaded, single-trigger reseults should spot some basic problems.

@Martin-Grunewald
Copy link
Contributor

Please make it a configurable option with some default... :)

@Dr15Jones
Copy link
Contributor

global modules should be faster (probably small) and use less memory

@Dr15Jones
Copy link
Contributor

Are you also looking at the static analyzer report to be sure those modules do not access any global variables?

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 17, 2014

hi @Dr15Jones ,
actually no, I've just gone quickly through the code... I'll check that, too.

@Dr15Jones
Copy link
Contributor

You'll want to look at 'Modules to thread unsafe statics' off of the Integration build page.
http://cms-sw.github.io/showIB.html

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 18, 2014

@Martin-Grunewald : the parallel checks are implemented in #6461 .

@Martin-Grunewald
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next CMSSW_7_3_X IBs unless changes (tests are also fine). This pull request will be automatically merged.

cmsbuild added a commit that referenced this pull request Nov 18, 2014
migrate few E/Gamma HLT modules from legacy to stream or global
@cmsbuild cmsbuild merged commit 27c5daa into cms-sw:CMSSW_7_3_X Nov 18, 2014
@fwyzard fwyzard deleted the migrate_EGM_to_stream_or_global branch December 23, 2014 10:27
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