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

Irradiation Bias Correction (IBC) of pixel clusters at Alpaka #44569

Closed
wants to merge 6 commits into from

Conversation

mroguljic
Copy link
Contributor

@mroguljic mroguljic commented Mar 28, 2024

PR description:

Implemented Irradiation Bias Correction (IBC) in the Alpaka version of the generic algorithm for esimating pixel cluster positions. Legacy implementation can be found here and here. The feature may be used to study how much the IBC will help with generic CPE algorithm at high irradiation doses and may be turned on if favorable.

The PR also includes a bug fix in the SiPixelRecHits/src/PixelCPEFastParamsHost.cc where template error parameters would be loaded at incorrect charge categories for certain modules. Small changes in standard workflows are expected as the errors of the RecHit positions on affected modules will differ.

PR validation:

Ran "11634.402" upgrade workflow in CMSSW_14_1_0_pre1 on 1000 events. Compared the results of "step3_RAW2DIGI_RECO_VALIDATION_DQM" with and without IBC using harvestTrackValidationPlots.py and makeTrackValidationPlots.py. Comparison can be found here. Some effects to tracking are observerd, but no major changes, which was expected.

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:

Not a backport.

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 28, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44569/39720

@cmsbuild
Copy link
Contributor

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

It involves the following packages:

  • RecoLocalTracker/SiPixelRecHits (reconstruction)

@jfernan2, @cmsbuild, @mandrenguyen can you please review it and eventually sign? Thanks.
@threus, @felicepantaleo, @JanFSchulte, @gpetruc, @missirol, @mmusich, @ferencek, @mroguljic, @GiacomoSguazzoni, @tvami, @VinInn, @mtosi, @rovere, @dkotlins, @VourMa, @tsusa this is something you requested to watch as well.
@rappoccio, @sextonkennedy, @antoniovilela you are the release manager for this.

cms-bot commands are listed here

@mroguljic mroguljic marked this pull request as ready for review March 28, 2024 14:27
@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44569/39733

@cmsbuild
Copy link
Contributor

Pull request #44569 was updated. @mandrenguyen, @jfernan2, @cmsbuild can you please check and sign again.

@mmusich
Copy link
Contributor

mmusich commented Mar 29, 2024

enable gpu

@mmusich
Copy link
Contributor

mmusich commented Mar 29, 2024

test parameters:

  • workflow_opts_gpu= -w upgrade
  • workflows_gpu= 12434.403, 12434.503

@mmusich
Copy link
Contributor

mmusich commented Mar 29, 2024

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-84c28a/38509/summary.html
COMMIT: 7216e30
CMSSW: CMSSW_14_1_X_2024-03-28-2300/el8_amd64_gcc12
Additional Tests: GPU
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/44569/38509/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

GPU Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 30 differences found in the comparisons
  • DQMHistoTests: Total files compared: 5
  • DQMHistoTests: Total histograms compared: 72013
  • DQMHistoTests: Total failures: 3225
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 68788
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 4 files compared)
  • Checked 16 log files, 20 edm output root files, 5 DQM output files
  • TriggerResults: no differences found

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 3, 2024

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44569/39788

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 3, 2024

Pull request #44569 was updated. @jfernan2, @cmsbuild, @mandrenguyen can you please check and sign again.

@mroguljic
Copy link
Contributor Author

What is the impact of the changes in PixelCPEFastParamsHost<TrackerTraits>::fillParamsForDevice() when the IBC is disabled ?

The loop assigning error parameters to detParameters runs slightly faster because it loops only up to the charge belonging to the largest qBin category. I tried validating the results on tracking using some TTbar events as explained in this comment. As stated, small changes are present, but I am not sure if this validation is enough.

@jfernan2
Copy link
Contributor

type bug-fix

@jfernan2
Copy link
Contributor

assign heterogeneous

@cmsbuild
Copy link
Contributor

New categories assigned: heterogeneous

@fwyzard,@makortel you have been requested to review this Pull request/Issue and eventually sign? Thanks

@jfernan2
Copy link
Contributor

please test

Copy link
Contributor

@fwyzard fwyzard left a comment

Choose a reason for hiding this comment

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

Apart from a couple of minor suggestions, the changes look good to me.

Could you measure the impact on the HLT timing of

  • only the bugfix
  • the bugfix and the IBC enabled

?

@@ -61,6 +62,7 @@ class PixelCPEFastParamsHost : public PixelCPEGenericBase {
void fillParamsForDevice();

Buffer buffer_;
bool irradiationBiasCorrection_;
Copy link
Contributor

Choose a reason for hiding this comment

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

can this be const ?

@@ -31,6 +32,7 @@ PixelCPEFastParamsHost<TrackerTraits>::PixelCPEFastParamsHost(edm::ParameterSet
<< (*genErrorDBObject_).version();
}

irradiationBiasCorrection_ = irradiationBiasCorrection;
Copy link
Contributor

Choose a reason for hiding this comment

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

can this be set in the member initialiser list above ?

                                                              const SiPixelLorentzAngle* lorentzAngleWidth,
                                                              const bool irradiationBiasCorrection)
    : PixelCPEGenericBase(conf, mag, geom, ttopo, lorentzAngle, genErrorDBObject, lorentzAngleWidth),
      buffer_(cms::alpakatools::make_host_buffer<pixelCPEforDevice::ParamsOnDeviceT<TrackerTraits>>()),
      irradiationBiasCorrection_(irradiationBiasCorrection) {

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-84c28a/38754/summary.html
COMMIT: 6226f19
CMSSW: CMSSW_14_1_X_2024-04-10-1100/el8_amd64_gcc12
Additional Tests: GPU
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/44569/38754/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially removed 2 lines from the logs
  • Reco comparison results: 48 differences found in the comparisons
  • DQMHistoTests: Total files compared: 48
  • DQMHistoTests: Total histograms compared: 3316263
  • DQMHistoTests: Total failures: 6
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3316237
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 47 files compared)
  • Checked 202 log files, 165 edm output root files, 48 DQM output files
  • TriggerResults: no differences found

GPU Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 57 differences found in the comparisons
  • DQMHistoTests: Total files compared: 5
  • DQMHistoTests: Total histograms compared: 72013
  • DQMHistoTests: Total failures: 4837
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 67176
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 4 files compared)
  • Checked 16 log files, 20 edm output root files, 5 DQM output files
  • TriggerResults: no differences found

@mroguljic
Copy link
Contributor Author

Apart from a couple of minor suggestions, the changes look good to me.

Could you measure the impact on the HLT timing of

* only the bugfix

* the bugfix and the IBC enabled

?

Sure, are there instructions on how to do so?

@mmusich
Copy link
Contributor

mmusich commented Apr 11, 2024

Sure, are there instructions on how to do so?

e.g. https://twiki.cern.ch/twiki/bin/view/CMS/TriggerStudiesTiming

@AdrianoDee
Copy link
Contributor

Find few results with 2023 conditions TTbar (with PU) MC here. E.g., the hit resolution in X for Barrel 1 attached here. Legend:

  • blue (invisible) the results for `master;
  • orange results for this PR without IBC;
  • red results for this PR with IBC.

@mmusich
Copy link
Contributor

mmusich commented Apr 11, 2024

image

doesn't look good.

@mroguljic
Copy link
Contributor Author

@fwyzard The IBC part needs further studies to understand why the resolution apparently becomes worse. I've added the bugfix in a separate PR.

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

6 participants