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
Modify CaloLayer1 emulator to properly handle saturation in all cases #20000
Conversation
A new Pull Request was created by @nsmith- (Nicholas Smith) for master. It involves the following packages: L1Trigger/L1TCaloLayer1 @cmsbuild, @rekovic, @mulhearn can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
Oh sweet 20000 do I get a prize? |
please test |
The tests are being triggered in jenkins. |
@nsmith- |
+1 The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic: |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 |
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 (and backports should be raised in the release meeting by the corresponding L2) |
@@ -18,5 +18,5 @@ | |||
unpackEcalMask = cms.bool(False), | |||
unpackHcalMask = cms.bool(False), | |||
# See UCTLayer1.hh for firmware version | |||
firmwareVersion = cms.int32(1), | |||
firmwareVersion = cms.int32(3), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes and no, the change will not break the ability to re-emulate using old data, but the bit-level agreement will be broken with old (bugged firmware) data.
So far, there has in general been no requirement that L1T emulation can reproduce historic data at bit-level automatically. (the latest firmware and latest emulator should agree of course)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hi @nsmith-interesting- remind me how this code gets used in production workflows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it is part of the stage2 L1 trigger emulation, not sure what you are asking specifically
if(value > 0xFF) { | ||
value = 0xFF; | ||
if ( fwVersion > 2 ) { | ||
uint32_t absCaloEta = abs(caloEta); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please use std::abs
+code-checks |
Well https://github.com/cms-sw/cmssw/releases/CMSSW_9_4_0_pre1 was, but I guess the original base of this PR wasn't 930. Sorry for the noise |
please test |
The tests are being triggered in jenkins. |
+1 The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic: |
Comparison job queued. |
+1 |
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 (and backports should be raised in the release meeting by the corresponding L2) |
Comparison is ready Comparison Summary:
|
+1 |
as for "Why the heck is 930 not an ancestor of 940" - its because the development for 940 starts before 930 is cut (the break point is when the features of 930 are finalized) |
Will make a backport too.
Firmware already at P5
more info: https://indico.cern.ch/event/655486/contributions/2672892/attachments/1498500/2332845/nsmith_layer1Saturation.pdf