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

[14_1_X] Added more ZDC functionality to DQM #46407

Open
wants to merge 2 commits into
base: CMSSW_14_1_X
Choose a base branch
from

Conversation

cfmcginn
Copy link
Contributor

Code reformatted, emulator updates, and histogram title change

PR description:

This is a backport to CMSSW_14_1_X of existing PR here: #45948

The PR adds to the DQM for ZDC specific histograms, via ZDCQIE10Task

The backport is updated relative to the main PR, mostly fixing build issue, retitling some histograms, and updating python such that emulated ZDC sums fill. It is also rebased to 14_1_X for the backport.

PR validation:

PR is tested in CMSSW_14_1_X_2024-10-15-2300, after running a merge-topic to incorporate the PR into a fresh area
scram b ran successfully, validating the build

Following test command produces the expected output:

cmsRun DQM/Integration/python/clients/hcal_dqm_sourceclient-live_cfg.py inputFiles=/eos/cms/store/group/dpg_hcal/comm_hcal/PFG/backup_raw/HIHLTPhysics-HIRun2023A-RAW-v1-375754.root runkey=hi_run

under the upload directory. Inspected histograms inside the DQM file appear reasonable for ZDC sums.

In addition, the following set of commands are run
scram b runtests
scram build code-checks
scram build code-format

code-checks revealed no issues, code-format suggestions were adopted. runtests had multiple failures, detailed below - however, every failure existed already with runtests in a fresh area of CMSSW_14_1_X_2024-10-15-2300 with the same packages checked out (before merge-topic), so it is unclear it is the result of the PR

>> Local Products Rules ..... started
>> Local Products Rules ..... done
Creating test log file logs/el9_amd64_gcc12/testing.log
Fail   26s ... DQM/Integration/TestDQMOnlineClient-beam_dqm_sourceclient
Pass   38s ... DQM/Integration/TestDQMOnlineClient-beamhlt_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-beampixel_dqm_sourceclient
Fail   49s ... DQM/Integration/TestDQMOnlineClient-csc_dqm_sourceclient
Fail    7s ... DQM/Integration/TestDQMOnlineClient-ctpps_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-dt4ml_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-dt_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-ecal_dqm_sourceclient
Pass   17s ... DQM/Integration/TestDQMOnlineClient-ecalgpu_dqm_sourceclient
Fail    7s ... DQM/Integration/TestDQMOnlineClient-es_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-fed_dqm_sourceclient
Fail    7s ... DQM/Integration/TestDQMOnlineClient-gem_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-hcal_dqm_sourceclient
Pass   10s ... DQM/Integration/TestDQMOnlineClient-hcalgpu_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-hcalreco_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-hlt_dqm_clientPB
Fail    6s ... DQM/Integration/TestDQMOnlineClient-hlt_dqm_sourceclient
Fail    5s ... DQM/Integration/TestDQMOnlineClient-info_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-l1tstage2_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-l1tstage2emulator_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-mutracking_dqm_sourceclient
Pass    9s ... DQM/Integration/TestDQMOnlineClient-onlinebeammonitor_dqm_sourceclient
Pass    7s ... DQM/Integration/TestDQMOnlineClient-pfgpu_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-pixel_dqm_sourceclient
Pass   10s ... DQM/Integration/TestDQMOnlineClient-pixelgpu_dqm_sourceclient
Fail    5s ... DQM/Integration/TestDQMOnlineClient-pixellumi_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-rpc_dqm_sourceclient
Fail    5s ... DQM/Integration/TestDQMOnlineClient-scal_dqm_sourceclient
Pass   33s ... DQM/Integration/TestDQMOnlineClient-sistrip_approx_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-sistrip_dqm_sourceclient
Fail    6s ... DQM/Integration/TestDQMOnlineClient-visualization
Fail    6s ... DQM/Integration/TestDQMOnlineClient-visualization_secondInstance
Pass  172s ... DQM/Integration/TestDQMOnlineClients-compilation_commissioning_run
Pass  142s ... DQM/Integration/TestDQMOnlineClients-compilation_cosmic_run
Pass  145s ... DQM/Integration/TestDQMOnlineClients-compilation_cosmic_run_stage1
Pass  155s ... DQM/Integration/TestDQMOnlineClients-compilation_hi_run
Pass  152s ... DQM/Integration/TestDQMOnlineClients-compilation_hpu_run
Pass  149s ... DQM/Integration/TestDQMOnlineClients-compilation_pp_run
Pass  131s ... DQM/Integration/TestDQMOnlineClients-compilation_pp_run_stage1
>> Test sequence completed for CMSSW CMSSW_14_1_X_2024-10-15-2300

If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:

As mentioned above, PR is a backport (with modification) of #45948, intended for CMSSW_14_1_X

One note - close inspection of the changes to the python file would be welcome - the changes were made as part of testing the full package but unclear to me all should be incorporated into the branch as is. Guidance appreciated.

@hjbossi @mandrenguyen

Code-reformated + title change
@cmsbuild
Copy link
Contributor

A new Pull Request was created by @cfmcginn for CMSSW_14_1_X.

It involves the following packages:

  • DQM/HcalTasks (dqm)
  • DQM/Integration (dqm)

@antoniovagnerini, @cmsbuild, @nothingface0, @rvenditti, @syuvivida, @tjavaid can you please review it and eventually sign? Thanks.
@DryRun, @abdoulline, @batinkov, @bsunanda, @denizsun, @francescobrivio, @salimcerci, @threus this is something you requested to watch as well.
@antoniovilela, @mandrenguyen, @rappoccio, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 16, 2024

cms-bot internal usage

@cfmcginn cfmcginn changed the title Rebased version of DQM PR for backport [14_1_X] Added more ZDC functionality to DQM Oct 16, 2024
@mandrenguyen
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor

+1

Size: This PR adds an extra 24KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-a9b9d8/42239/summary.html
COMMIT: 2b258ab
CMSSW: CMSSW_14_1_X_2024-10-16-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/46407/42239/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 1 lines to the logs
  • Reco comparison results: 11 differences found in the comparisons
  • DQMHistoTests: Total files compared: 44
  • DQMHistoTests: Total histograms compared: 3331166
  • DQMHistoTests: Total failures: 6
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3331140
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 43 files compared)
  • Checked 191 log files, 161 edm output root files, 44 DQM output files
  • TriggerResults: no differences found

@hjbossi
Copy link
Contributor

hjbossi commented Oct 17, 2024

Just to add another tag for relevant reviewers: @denizsun, @salimcerci, @JoshPBR2, @abdoulline. This is a modification of of the original PR, which we intend to update with the changes once @JoshPBR2 is available to do so. The current version of the release is 14_1_3, built yesterday. If possible, we would love for this to be included the next release, i.e. 14_1_4.

As @cfmcginn mentions, it would be good to understand what is most appropriate to do for the source client file. The reason why we have questions is that I am not entirely sure what is used to create the plots online vs. local tests. Please let us know what you think!

Copy link
Contributor

@mmusich mmusich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is different from the master one: #45948, thus it's not a backport. You need to close that one and open another one that contains the same changes as this one in the master (CMSSW_14_2_X) cycle.

Comment on lines 51 to 53
// std::shared_ptr<hcaldqm::Cache> globalBeginLuminosityBlock(edm::LuminosityBlock const &,
// edm::EventSetup const &) const override;
//void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, removed in most recent commit

edm::EDGetToken sumToken_;
edm::ESGetToken<HcalTopology, HcalRecNumberingRecord> htopoToken_;
edm::ESGetToken<HcalLongRecoParams, HcalLongRecoParamsRcd> paramsToken_;
//edm::EDGetTokenT<l1t::EtSumBxCollection> sumZDCToken_;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
//edm::EDGetTokenT<l1t::EtSumBxCollection> sumZDCToken_;

needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, removed in most recent commit

_tagQIE10 = ps.getUntrackedParameter<edm::InputTag>("tagQIE10", edm::InputTag("hcalDigis", "ZDC"));
_tokQIE10 = consumes<QIE10DigiCollection>(_tagQIE10);

//const edm::EDGetTokenT<l1t::EtSumBxCollection> sumZDCToken_;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
//const edm::EDGetTokenT<l1t::EtSumBxCollection> sumZDCToken_;

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adopted

//const edm::EDGetTokenT<l1t::EtSumBxCollection> sumZDCToken_;

sumTag = ps.getUntrackedParameter<edm::InputTag>("etSumTag", edm::InputTag("etSumZdcProducer", ""));
//sumTag = ps.getParameter<edm::InputTag>("etSumTag");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
//sumTag = ps.getParameter<edm::InputTag>("etSumTag");

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adopted

sumTag = ps.getUntrackedParameter<edm::InputTag>("etSumTag", edm::InputTag("etSumZdcProducer", ""));
//sumTag = ps.getParameter<edm::InputTag>("etSumTag");
sumToken_ = consumes<l1t::EtSumBxCollection>(sumTag);
//sumZDCToken_ = consumes<l1t::EtSumBxCollection>(ps.getUntrackedParameter<edm::InputTag>("sumZDCToken"));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
//sumZDCToken_ = consumes<l1t::EtSumBxCollection>(ps.getUntrackedParameter<edm::InputTag>("sumZDCToken"));

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adopted

process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
process.GlobalTag.globaltag = autoCond['run3_data_prompt']
process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
process.GlobalTag.globaltag = '141X_dataRun3_Prompt_Candidate_2024_10_08_09_42_50'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't change the default here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good, the above is a candidate GT, but the default version will change once the new GT (containing the changes from the candidate) is in place.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is reverted in most recent commit

@@ -57,10 +58,12 @@
process.dqmSaverPB.runNumber = options.runNumber
process = customise(process)
process.DQMStore.verbose = 0

'''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't comment the lines in between.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, no longer commented in most recent commit

process.hcalDigis.InputLabel = rawTag
process.emulTPDigisNoTDCCut = process.emulTPDigis.clone(
parameters = cms.untracked.PSet(
ADCThresholdHF = cms.uint32(255),
TDCMaskHF = cms.uint64(0xFFFFFFFFFFFFFFFF)
)
)
process.HcalTPGCoderULUT.LUTGenerationMode = False
process.HcalTPGCoderULUT.LUTGenerationMode = True
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what's the purpose of this change?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is actually what we would like feedback on from @denizsun and @salimcerci, this is necessary for the code to run with the candidate GT (which does not yet include an updated L1TriggerObject) , but probably not necessary for actual data-taking. In this case, should we include this or leave it out?

Comment on lines 257 to 259
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(-1)
)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(-1)
)

in live mode the number of events processed is regulated elsewhere:

source = cms.Source("DQMStreamerReader",
runNumber = cms.untracked.uint32(options.runNumber),
runInputDir = cms.untracked.string(options.runInputDir),
SelectEvents = cms.untracked.vstring('*'),
streamLabel = cms.untracked.string(streamLabel),
scanOnce = cms.untracked.bool(options.scanOnce),
datafnPosition = cms.untracked.uint32(options.datafnPosition),
minEventsPerLumi = cms.untracked.int32(1),
delayMillis = cms.untracked.uint32(500),
nextLumiTimeoutMillis = cms.untracked.int32(nextLumiTimeoutMillis),
skipFirstLumis = cms.untracked.bool(options.skipFirstLumis),
deleteDatFiles = cms.untracked.bool(False),
endOfRunKills = cms.untracked.bool(endOfRunKills),
inputFileTransitionsEachEvent = cms.untracked.bool(False)
)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed in most recent commit

@hjbossi
Copy link
Contributor

hjbossi commented Oct 17, 2024

This PR is different from the master one: #45948, thus it's not a backport. You need to close that one and open another one that contains the same changes as this one in the master (CMSSW_14_2_X) cycle.

Hi @mmusich, thanks for your comment! The plan is to update the PR to master (CMSSW_14_2_X) cycle to have the same changes as the one here, i.e. this would be a true backport. Unfortunately, we've been unable to get ahold of Josh (I believe he might be traveling to CERN), and he is needed in order to make this change. We wanted to give ample time for review of these changes, so we decided to open the PR to 14_1_X as soon as possible. Let me know what you think of this strategy.

@mmusich
Copy link
Contributor

mmusich commented Oct 17, 2024

Let me know what you think of this strategy.

well, abandoning the unattended PR and opening a new one from scratch will get you merged faster. This one cannot be integrated until the master one is merged.

@hjbossi
Copy link
Contributor

hjbossi commented Oct 17, 2024

Let me know what you think of this strategy.

well, abandoning the unattended PR and opening a new one from scratch will get you merged faster. This one cannot be integrated until the master one is merged.

Okay I see, in that case we will see if Josh gets back to us today, and if not, we will close the master PR and open a new one.

@antoniovagnerini
Copy link

Let me know what you think of this strategy.

well, abandoning the unattended PR and opening a new one from scratch will get you merged faster. This one cannot be integrated until the master one is merged.

Okay I see, in that case we will see if Josh gets back to us today, and if not, we will close the master PR and open a new one.

@hjbossi any updates on the comments by Marco? At this stage, I would also recommend closing the master #45948 and making a new one that matches the backport.

@cfmcginn
Copy link
Contributor Author

Let me know what you think of this strategy.

well, abandoning the unattended PR and opening a new one from scratch will get you merged faster. This one cannot be integrated until the master one is merged.

Okay I see, in that case we will see if Josh gets back to us today, and if not, we will close the master PR and open a new one.

@hjbossi any updates on the comments by Marco? At this stage, I would also recommend closing the master #45948 and making a new one that matches the backport.

I intend to open the new PR to main today; I don't know that I have power to close the old, but that should follow

@hjbossi
Copy link
Contributor

hjbossi commented Oct 22, 2024

Looking at the master PR #45948, I don't think I have permissions to close it, which means that must be done by @JoshPBR2. Although maybe someone with less restricted permissions can do so?

@cfmcginn
Copy link
Contributor Author

PR to main can be found here:

#46478

@cmsbuild
Copy link
Contributor

Pull request #46407 was updated. @antoniovagnerini, @cmsbuild, @nothingface0, @rvenditti, @syuvivida, @tjavaid can you please check and sign again.

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.

6 participants