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.0.X] double precision in StandaloneTrackMonitor and TrackTypeMonitor plots to avoid numerical overflow with high number of bin counts #45315

Merged

Conversation

mmusich
Copy link
Contributor

@mmusich mmusich commented Jun 26, 2024

backport of #45325
backport of #45225

PR description:

The goal of this PR is to circumvent the issue reported at #45183.
In data/MC comparisons for tracking we were hit by the limits of TH1F numerical precision. Histograms with more than around 1e7 entries in a bin will stop accumulation in that bin (because within numerical precision x + 1. == x).
This PR changes the booking of StandaloneTrackMonitor and TrackTypeMonitor plots, from using book1D to book1DD in order to use double precision in bin content accumulation.
To limit the amount of changes in the tracking monitor classes a new overloaded book1DD method is added to DQMStore in order to be able to use the TH1D constructor of the type that creates a 1-Dim histogram with variable bins of type double:
TH1D (const char *name, const char *title, Int_t nbinsx, const Float_t *xbins)

PR validation:

cmssw compiles.

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:

Backport of #45325 and #45225 to CMSSW_14_0_X for convenience of usage in 2024 data.

@cmsbuild
Copy link
Contributor

cmsbuild commented Jun 26, 2024

A new Pull Request was created by @mmusich for CMSSW_14_0_X.

It involves the following packages:

  • DQM/TrackingMonitorSource (dqm)
  • DQMServices/Core (dqm)

@antoniovagnerini, @cmsbuild, @nothingface0, @rvenditti, @syuvivida, @tjavaid can you please review it and eventually sign? Thanks.
@JanFSchulte, @VinInn, @VourMa, @arossi83, @barvic, @fioriNTU, @idebruyn, @jandrea, @mmusich, @mtosi, @sroychow, @threus this is something you requested to watch as well.
@antoniovilela, @rappoccio, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Jun 26, 2024

cms-bot internal usage

@mmusich
Copy link
Contributor Author

mmusich commented Jun 26, 2024

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-550183/40098/summary.html
COMMIT: be76bf1
CMSSW: CMSSW_14_0_X_2024-06-26-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45315/40098/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@tjavaid
Copy link

tjavaid commented Jun 27, 2024

+1

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next CMSSW_14_0_X IBs (tests are also fine) and once validation in the development release cycle CMSSW_14_1_X is complete. This pull request will now be reviewed by the release team before it's merged. @sextonkennedy, @antoniovilela, @rappoccio (and backports should be raised in the release meeting by the corresponding L2)

@mmusich
Copy link
Contributor Author

mmusich commented Jun 27, 2024

hold

@cmsbuild
Copy link
Contributor

Pull request has been put on hold by @mmusich
They need to issue an unhold command to remove the hold state or L1 can unhold it for all

@cmsbuild
Copy link
Contributor

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

@mmusich
Copy link
Contributor Author

mmusich commented Jun 27, 2024

unhold

@mmusich
Copy link
Contributor Author

mmusich commented Jun 27, 2024

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-550183/40117/summary.html
COMMIT: 04dff6e
CMSSW: CMSSW_14_0_X_2024-06-26-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45315/40117/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@tjavaid
Copy link

tjavaid commented Jul 2, 2024

+1

@cmsbuild
Copy link
Contributor

cmsbuild commented Jul 2, 2024

This pull request is fully signed and it will be integrated in one of the next CMSSW_14_0_X IBs (tests are also fine) and once validation in the development release cycle CMSSW_14_1_X is complete. This pull request will now be reviewed by the release team before it's merged. @rappoccio, @antoniovilela, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2)

@rappoccio
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 0dd2923 into cms-sw:CMSSW_14_0_X Jul 2, 2024
10 checks passed
@mmusich mmusich deleted the dataMCValidation_fixes_14_0_X branch July 2, 2024 15:46
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.

4 participants