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

Update muon shower (HMT) emulator #38941

Merged
merged 13 commits into from Sep 1, 2022
Merged

Conversation

kakwok
Copy link
Contributor

@kakwok kakwok commented Aug 2, 2022

PR description:

This PR updates muon shower (HMT) emulator based on the data/emulator comparison study with Run 3 data. Most changes are done in collaboration with TMB developer @tahuang1991 .

Changes for CSC trigger primitive emulator:

  • Output a vector of valid HMT bits within TMB readout window
  • Remove dead-time selection for anode hits in anode HMT emulation
  • Add peak-check option for cathode HMT emulation
  • Add dead-time consideration for cathode HMT emulation
  • Add configurable matching logic per-station/ring chamber

Changes for CSC Packer/Unpacker:

  • Assign BX for anode/cathode and matched HMT during unpacking
  • Update corresponding packing

Changes for CSCShowerDigi:

  • Add BX property
  • Add number of wire/comparator hits
    • Can be filled from emulator or from TMB header

PR validation:

Data/Emulation comparison studies with Run 3 data are presented here:
(https://indico.cern.ch/event/1161409/contributions/4965616/attachments/2481743/4260443/HMT_firstLook_L1DPG.pdf)

Unpack-pack-unpack sequence was checked with this config:
https://gist.github.com/tahuang1991/3805853ff6c0b340605afe1f461822c8

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 2, 2022

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-38941/31385

  • This PR adds an extra 100KB to repository

  • Found files with invalid states:

    • DataFormats/CSCDigi/src/classes_def.xml.generated:

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 2, 2022

A new Pull Request was created by @kakwok for master.

It involves the following packages:

  • DataFormats/CSCDigi (simulation)
  • EventFilter/CSCRawToDigi (reconstruction)
  • L1Trigger/CSCTriggerPrimitives (l1)

@civanch, @epalencia, @clacaputo, @cmsbuild, @rekovic, @mdhildreth, @jpata, @cecilecaillol can you please review it and eventually sign? Thanks.
@giovanni-mocellin, @barvic, @rovere, @eyigitba, @valuev, @missirol, @Martin-Grunewald, @ptcox this is something you requested to watch as well.
@perrotta, @dpiparo, @qliphy, @rappoccio you are the release manager for this.

cms-bot commands are listed here

@civanch
Copy link
Contributor

civanch commented Aug 2, 2022

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 2, 2022

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-b7c06f/26610/summary.html
COMMIT: af71bd7
CMSSW: CMSSW_12_5_X_2022-08-02-1100/el8_amd64_gcc10
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/38941/26610/install.sh to create a dev area with all the needed externals and cmssw changes.

Build

I found compilation error when building:

>> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/GMTCollections.cc
>> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/GMTSetup.cc
>> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/GMTTokens.cc
>> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/GTCollections.cc
/data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/EMTFBlockME.cc: In member function 'virtual bool l1t::stage2::emtf::MEBlockUnpacker::unpack(const l1t::Block&, l1t::UnpackerCollections*)':
/data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/EMTFBlockME.cc:307:47: error: no matching function for call to 'CSCShowerDigi::CSCShowerDigi(int, int, CSCDetId)'
  307 |                               Hit_.CSC_DetId());
      |                                               ^
In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/DataFormats/CSCDigi/interface/CSCShowerDigiCollection.h:5,
                 from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/EMTFCollections.h:15,
                 from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_5_X_2022-08-02-1100/src/EventFilter/L1TRawToDigi/plugins/implementations_stage2/EMTFBlockME.cc:5:


tahuang1991 and others added 3 commits August 4, 2022 17:47
…uctor

2.Add two more shower types: EMTFShower and GMTShower
3.removed comment-out lines in CSCAnodeLCTProcessor.cc
Update the CSCDigi shower constructor and also where the constructor is called
@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 4, 2022

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-38941/31422

  • This PR adds an extra 72KB to repository

  • Found files with invalid states:

    • DataFormats/CSCDigi/src/classes_def.xml.generated:

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-b7c06f/27188/summary.html
COMMIT: e27b5f3
CMSSW: CMSSW_12_6_X_2022-08-29-2300/el8_amd64_gcc10
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/38941/27188/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3696018
  • DQMHistoTests: Total failures: 259
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3695737
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 50 files compared)
  • Checked 212 log files, 49 edm output root files, 51 DQM output files
  • TriggerResults: found differences in 4 / 50 workflows

@tahuang1991
Copy link
Contributor

It seems that the CSCMotherboard objects can be created without calling setConfigParameters. Now e27b5f3 sets the values in the constructor. Tested in local set-up this fixes the crash.

setConfigParameters is used to read in OTMB/TMB configuration from database and usually it is not used. The configuration parameter is parsed from python configuration in almost all cases. So yes, parameters for HMT should either go to constructor or go to configuration parameters

@kakwok
Copy link
Contributor Author

kakwok commented Aug 31, 2022

@jpata @perrotta All checks has been passed, and the two back-ports PR (#39260, #39228) are ready as well.

@cecilecaillol
Copy link
Contributor

+l1

@jpata
Copy link
Contributor

jpata commented Aug 31, 2022

+reconstruction

@civanch
Copy link
Contributor

civanch commented Sep 1, 2022

+1

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 1, 2022

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. @perrotta, @dpiparo, @rappoccio (and backports should be raised in the release meeting by the corresponding L2)

@rappoccio
Copy link
Contributor

+1

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

10 participants