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
Bring L1T emulation up to date with l1t-tsg-v4 tag #13767
Bring L1T emulation up to date with l1t-tsg-v4 tag #13767
Conversation
…ript - thanks Nick Smith
Conflicts: L1Trigger/L1TCalorimeter/data/Flat_Tau_iso_LUT_eff70.txt L1Trigger/L1TCalorimeter/data/Flat_Tau_iso_LUT_eff80.txt L1Trigger/L1TCalorimeter/data/Flat_Tau_iso_LUT_eff90.txt
… the raw track address.
…muons if no muon was in the BX.
* the phi angle converions follows hardware mroe closely
@@ -70,7 +71,8 @@ namespace l1t { | |||
emtf::EventTrailer GetEventTrailer() { return EventTrailer; }; | |||
emtf::MTF7Trailer GetMTF7Trailer() { return MTF7Trailer; }; | |||
emtf::AMC13Trailer GetAMC13Trailer() { return AMC13Trailer; }; | |||
const uint64_t Dataword() const { return dataword; }; | |||
const int Format_Errors() const { return format_errors; }; | |||
const uint64_t Dataword() const { return dataword; }; |
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.
Right, yeah, that was one of the conflicted files when merging this PR into 81X. I guess some DQM changes were already merged in 81X. I'm pretty sure now this is a harmless difference, but I am still checking.
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 was the DQM that made these changes:
mulhearn@lxplus071>git show aeba2b41b2de9ec4382915a4ba29257e410c7800 -- DataFormats/L1TMuon/interface/EMTFOutput.h
commit aeba2b41b2de9ec4382915a4ba29257e410c7800
Author: Sean-Jiun Wang <churchguitarist@gmail.com>
Date: Mon Mar 7 18:04:48 2016 +0100
First commit: compiles and runs
diff --git a/DataFormats/L1TMuon/interface/EMTFOutput.h b/DataFormats/L1TMuon/interface/EMTFOutput.h
index 7d607b3..bc8968d 100644
--- a/DataFormats/L1TMuon/interface/EMTFOutput.h
+++ b/DataFormats/L1TMuon/interface/EMTFOutput.h
@@ -50,27 +50,27 @@ namespace l1t {
void set_AMC13Trailer(emtf::AMC13Trailer bits) { AMC13Trailer = bits; hasAMC13Trailer = true; };
void set_dataword(uint64_t bits) { dataword = bits; };
- bool HasAMC13Header() { return hasAMC13Header; };
- bool HasMTF7Header() { return hasMTF7Header; };
- bool HasEventHeader() { return hasEventHeader; };
- bool HasCounters() { return hasCounters; };
- int NumSP() { return numSP; };
- int NumRPC() { return numRPC; };
- int NumME() { return numME; };
- bool HasAMC13Trailer() { return hasAMC13Trailer; };
- bool HasMTF7Trailer() { return hasMTF7Trailer; };
- bool HasEventTrailer() { return hasEventTrailer; };
- emtf::AMC13Header GetAMC13Header() { return AMC13Header; };
- emtf::MTF7Header GetMTF7Header() { return MTF7Header; };
- emtf::EventHeader GetEventHeader() { return EventHeader; };
- emtf::Counters GetCounters() { return Counters; };
- emtf::MECollection GetMECollection() { return MECollection; };
- emtf::RPCCollection GetRPCCollection() { return RPCCollection; };
- emtf::SPCollection GetSPCollection() { return SPCollection; };
- emtf::EventTrailer GetEventTrailer() { return EventTrailer; };
- emtf::MTF7Trailer GetMTF7Trailer() { return MTF7Trailer; };
- emtf::AMC13Trailer GetAMC13Trailer() { return AMC13Trailer; };
- const uint64_t Dataword() const { return dataword; };
+ const bool HasAMC13Header() const { return hasAMC13Header; };
+ const bool HasMTF7Header() const { return hasMTF7Header; };
+ const bool HasEventHeader() const { return hasEventHeader; };
+ const bool HasCounters() const { return hasCounters; };
+ const int NumSP() const { return numSP; };
+ const int NumRPC() const { return numRPC; };
+ const int NumME() const { return numME; };
+ const bool HasAMC13Trailer() const { return hasAMC13Trailer; };
+ const bool HasMTF7Trailer() const { return hasMTF7Trailer; };
+ const bool HasEventTrailer() const { return hasEventTrailer; };
...
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.
Why do you even have separate branches for the code for 8.0.x and 8.1.x ?
At the very least, they list of commits should be the same, cherry-picked form one release (whatever you consider the one people should be developing with) to the other.
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.
Uggh, this was a pain to track down... this difference is due to the DQM PR (#13891):
mulhearn@lxplus071>git show --name-only aeba2b41b2de9ec4382915a4ba29257e410c7800
commit aeba2b41b2de9ec4382915a4ba29257e410c7800
Author: Sean-Jiun Wang <churchguitarist@gmail.com>
Date: Mon Mar 7 18:04:48 2016 +0100
First commit: compiles and runs
DQM/Integration/python/clients/l1tstage2_dqm_sourceclient-live_cfg.py
DQM/L1TMonitor/interface/L1TStage2EMTF.h
DQM/L1TMonitor/python/L1TStage2EMTF_cfi.py
DQM/L1TMonitor/python/L1TStage2_cff.py
DQM/L1TMonitor/src/L1TStage2EMTF.cc
DQM/L1TMonitor/src/SealModule.cc
DataFormats/L1TMuon/interface/EMTFOutput.h
EventFilter/L1TRawToDigi/python/emtfStage2Digis_cfi.py
this will all be consistent again once the PR is merged, and Vladimir makes the 80x version of that DQM PR.
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.
@fwyzard: because there were merge conflicts when merging 80x version of PR into 81x.
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.
why?
I would hope the L1 code is not diverging between 80x and 81x
On Apr 6, 2016, at 1:38 PM, mulhearn notifications@github.com wrote:
In DataFormats/L1TMuon/interface/EMTFOutput.h:
@@ -70,7 +71,8 @@ namespace l1t {
emtf::EventTrailer GetEventTrailer() { return EventTrailer; };
emtf::MTF7Trailer GetMTF7Trailer() { return MTF7Trailer; };
emtf::AMC13Trailer GetAMC13Trailer() { return AMC13Trailer; };
- const uint64_t Dataword() const { return dataword; };
- const int Format_Errors() const { return format_errors; };
- const uint64_t Dataword() const { return dataword; };
@fwyzard: because there were merge conflicts when merging 80x version of PR into 81x.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
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.
The point here is the code in 80X is diverging from 81X on account of a separate PR as Mike mentioned. (#13891)
If we were to compare the L1 packages at a point in the 81X history before this other PR, I suspect no discrepancy would be found.
+1 |
Following Perrotta's comments I did a check of all L1T files between this and the 81X version of this PR. All differences are understood. |
+1 |
Are you really changing 168 files with 239 commits, or the history here is trashed with merge commits? |
Well, not quite trashed, e.g. I don't see a bunch of duplicate version of same commit, but the usual multiple useless empty merge commit business plus lots of small commits. |
Why did you had to do git merge? How many of these commits out of 239 should actually be part of this PR? Just trying to understand. |
The typical workflow for a change in L1 trigger land is something like:
So every time someone makes a change and makes PR to l1t-integration, there is the empty merge commit that brings the HEAD (from-CMSSW...) up to where cms-l1t-offline is at. This is where most of the merge commits come from, they are harmless, and just an artifact of the development process that L1 offline has subscribed to. Granted, there are alternatives that might make the commit history cleaner, but they require commands more unfamiliar to cmssw users |
Yes, exactly. I'm considering cleaning up commit history at point we push into official CMSSW in future, but definitely not here in this PR. |
And adding to nsmith, you also get two more merge commits if you follow github standard recipe for merging their PRs into the integration branch. So one small change can have four commits. |
At integration branch level, we need to keep the developer commits intact so we can sort out what happens. But once we make a tag (l1t-tsg-vX), I think it would be fine to push to CMSSW a cleaned up history with fewer topical commits ("bring L1TGlobal up-to date with l1t-tsg-vX"). |
But that robs developers of their credit, which is actually a non-neglible consideration now that some firms check github before hiring... |
Anyway, let's merge this sucka. |
Let's fix all the 81x problems first;) Cheers, On 06 Apr 2016, at 14:08, mulhearn <notifications@github.commailto:notifications@github.com> wrote: Anyway, let's merge this sucka. — |
On 6 April 2016 at 14:07, mulhearn notifications@github.com wrote:
In general I agree, I prefer to leave the commit to original authors - if You can rebase most of the merges away, and also squash successive commits, But trying to rebase this PR now is simply impossible - and pointless, .A |
+1 |
Brings the L1T emulator algorithms up to date with the l1t-tsg-v4 tag.
This depends on data area PRs: