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

DAQ multi-LS output module (10_6_X) #26425

Merged

Conversation

smorovic
Copy link
Contributor

PR description:

This is DAQ (HLT/Filter Farm) output module implementation based on one::OutputModule watching LuminosityBlockCache. In that case limitation of handling only one LS at the time present in current DAQ module is removed. Based on #25951 which was an attempt to do this using limited output module class, and possible thanks to improvements made in #26196.

StreamerOutputModuleBase (inheriting one::OutputModule) base is restructured and serializer code (shared with the new EvFOutputModule) extracted to a common class which can be used by both module types (which inherit on different templated class of one::OutputModule). Currently, "base" is used by: DQM test module, Streamer writer module and previous DAQ output module which will still be kept for some time in the release.

New module is called EvFOutputModule while previous DAQ module remains registered ShmStreamConsumer (this name is currently still used in production configurations).

PR validation:

Output module was added and tested with configuration EventFilter/Utilities/test/startFU.py and also new configuration configured to work with 2 concurrent LS at the time: start_multiLS_FU.py.

It has also been verified to work in test setup emulating the Filter Farm: using both old and new version of the output module (former being tested due to changes made in the base class). Both output modules produced files or comparable size, identical header. Also, dat files from the new module could be normally read by the NewEventStreamFileReader source.

 moved serialization code to external base class (which doesn't inherit from edm::one::OutputModule). This allows sharing serialization code
   with global and limited output modules.
It is registered in the Framework as vFOutputModule.
For backwards compatibility and testing/comparison, old module will not (yet) be removed and will be
usable using the old macro name (ShmStreamConsumer).
Conflicts:
	EventFilter/Utilities/test/startFU.py
of the call. There is also possibility to inherit Common by EvFOutputModule, but
serializer calls will then have to be const-friendly (i.e there is need to
initialize several variables earlier).
- StreamerOutputModuleCommon no longer needs getSelections. serializer
  is initialized at construction.
- updated test scripts
undetected without stripping const in write and global EoL
-propagate and use ofstream close to close streamer data file in the output
module
cache. This now permits module to see more than one lumisection.
@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26425/9198

  • This PR adds an extra 72KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @smorovic (Srecko Morovic) for master.

It involves the following packages:

EventFilter/Utilities
IOPool/Streamer

@perrotta, @smuzaffar, @Dr15Jones, @emeschi, @cmsbuild, @slava77, @mommsen can you please review it and eventually sign? Thanks.
@Martin-Grunewald, @makortel, @wddgit this is something you requested to watch as well.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@Dr15Jones
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 10, 2019

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/34127/console Started: 2019/04/10 15:27

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-26425/34127/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3140495
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3140297
  • DQMHistoTests: Total skipped: 197
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 133 log files, 14 edm output root files, 32 DQM output files

@slava77
Copy link
Contributor

slava77 commented Apr 11, 2019

@cmsbuild please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 11, 2019

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/34142/console Started: 2019/04/11 10:47

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-26425/34142/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3140495
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3140297
  • DQMHistoTests: Total skipped: 197
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 133 log files, 14 edm output root files, 32 DQM output files

@slava77
Copy link
Contributor

slava77 commented Apr 12, 2019

+1

for #26425 4bc1f86

  • reco files in the EventFilter/Utilities package shared with DAQ are not affected
  • jenkins tests pass

@emeschi
Copy link
Contributor

emeschi commented Apr 15, 2019

+1

@Dr15Jones
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

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. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2)

@fabiocos
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit c34ccef into cms-sw:master Apr 17, 2019
@smorovic smorovic deleted the 10_6_0_pre3-new-output-module-april2019 branch May 7, 2019 14:57
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

6 participants