Skip to content

Updated SoA View accessors from raw pointers to span#48377

Merged
cmsbuild merged 1 commit intocms-sw:masterfrom
leobeltra:span_accessors_view
Oct 1, 2025
Merged

Updated SoA View accessors from raw pointers to span#48377
cmsbuild merged 1 commit intocms-sw:masterfrom
leobeltra:span_accessors_view

Conversation

@leobeltra
Copy link
Copy Markdown

@leobeltra leobeltra commented Jun 20, 2025

PR description:

This PR updates the column accessors in the View from raw pointers to std::span<T>, providing automatic range checking. Adjustments have also been made in CMSSW to support this new approach. This PR is dependent on #48216, so it should be merged after that.

PR validation:

The unit tests in CMSSW still pass.

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented Jun 20, 2025

cms-bot internal usage

@cmsbuild
Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-48377/45264

@cmsbuild
Copy link
Copy Markdown
Contributor

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

It involves the following packages:

  • CUDADataFormats/TrackingRecHit (heterogeneous, reconstruction)
  • CondFormats/EcalObjects (db, alca)
  • CondFormats/HGCalObjects (db, upgrade, alca)
  • CondFormats/HcalObjects (db, alca)
  • DQM/SiPixelHeterogeneous (dqm)
  • DataFormats/HGCalDigi (upgrade, simulation)
  • DataFormats/HGCalRecHit (upgrade, reconstruction)
  • DataFormats/HGCalReco (upgrade, reconstruction)
  • DataFormats/ParticleFlowReco (reconstruction)
  • DataFormats/Portable (heterogeneous)
  • DataFormats/PortableTestObjects (heterogeneous)
  • DataFormats/SiPixelDigi (simulation)
  • DataFormats/SiPixelDigiSoA (heterogeneous, reconstruction)
  • DataFormats/SoATemplate (heterogeneous)
  • DataFormats/TrackingRecHitSoA (heterogeneous, reconstruction)
  • EventFilter/EcalRawToDigi (reconstruction)
  • HeterogeneousCore/AlpakaTest (heterogeneous)
  • HeterogeneousCore/CUDATest (heterogeneous)
  • RecoLocalCalo/EcalRecProducers (reconstruction)
  • RecoLocalCalo/HGCalRecAlgos (upgrade, reconstruction)
  • RecoLocalCalo/HGCalRecProducers (upgrade, reconstruction)
  • RecoLocalCalo/HcalRecProducers (reconstruction)
  • RecoLocalTracker/SiPixelClusterizer (reconstruction)
  • RecoLocalTracker/SiPixelRecHits (reconstruction)
  • RecoParticleFlow/PFClusterProducer (reconstruction)
  • RecoParticleFlow/PFRecHitProducer (reconstruction)
  • RecoTauTag/HLTProducers (hlt)
  • RecoTracker/LSTCore (reconstruction)
  • RecoTracker/PixelSeeding (reconstruction)
  • RecoTracker/PixelTrackFitting (reconstruction)
  • RecoTracker/TkSeedGenerator (reconstruction)
  • RecoVertex/PixelVertexFinding (reconstruction)

@Martin-Grunewald, @Moanwar, @antoniovagnerini, @atpathak, @civanch, @cmsbuild, @ctarricone, @francescobrivio, @fwyzard, @jfernan2, @kpedro88, @makortel, @mandrenguyen, @mdhildreth, @mmusich, @perrotta, @rseidita, @srimanob, @subirsarkar can you please review it and eventually sign? Thanks.
@GiacomoSguazzoni, @JanChyczynski, @Martin-Grunewald, @PonIlya, @ReyerBand, @VinInn, @VourMa, @abdoulline, @apsallid, @argiro, @azotz, @bsunanda, @cseez, @denizsun, @dgulhan, @dkotlins, @edjtscott, @fabiocos, @felicepantaleo, @ferencek, @fioriNTU, @gpetruc, @hatakeyamak, @idebruyn, @jandrea, @lecriste, @lgray, @makortel, @mariadalfonso, @martinamalberti, @mbluj, @missirol, @mmarionncern, @mmusich, @mroguljic, @mtosi, @pfs, @rchatter, @rovere, @rsreds, @salimcerci, @sameasy, @seemasharmafnal, @sethzenz, @thomreis, @threus, @tocheng, @tsusa, @tvami, @vandreev11, @wang0jin, @youyingli, @yuanchao 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

@mmusich
Copy link
Copy Markdown
Contributor

mmusich commented Jun 20, 2025

type ngt

@mmusich
Copy link
Copy Markdown
Contributor

mmusich commented Jun 20, 2025

enable gpu

@mmusich
Copy link
Copy Markdown
Contributor

mmusich commented Jun 20, 2025

@cmsbuild, please test

@mmusich
Copy link
Copy Markdown
Contributor

mmusich commented Jun 20, 2025

allow @leobeltra test rights

@leobeltra leobeltra changed the title Updated SoA accessors view from raw pointers to span Updated SoA View accessors from raw pointers to span Jun 20, 2025
@cmsbuild
Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-48377/46214

@cmsbuild
Copy link
Copy Markdown
Contributor

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Sep 29, 2025

@leobeltra I think you are basing your commit(s) on the wrong branch, you should use master or CMSSW_16_0_X.

@cmsbuild
Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-48377/46219

@cmsbuild
Copy link
Copy Markdown
Contributor

@cmsbuild
Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-48377/46222

@cmsbuild
Copy link
Copy Markdown
Contributor

Comment on lines -25 to -27
auto& error_data() { return (*view().pixelErrors()); }
auto const& error_data() const { return (*view().pixelErrors()); }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

For consistency, can you remove error_data() also from DataFormats/SiPixelDigiSoA/interface/SiPixelDigiErrorsDevice.h ?

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Sep 29, 2025

@leobeltra thanks !

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Sep 29, 2025

please test

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Sep 29, 2025

+heterogeneous

@cmsbuild
Copy link
Copy Markdown
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-48377/46224

@cmsbuild
Copy link
Copy Markdown
Contributor

Pull request #48377 was updated. @Martin-Grunewald, @Moanwar, @civanch, @ctarricone, @gabrielmscampos, @jfernan2, @kpedro88, @mandrenguyen, @mdhildreth, @mmusich, @nothingface0, @rseidita, @srimanob, @subirsarkar can you please check and sign again.

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Sep 29, 2025

Looks good to me, some improvements can be worked on in separate PRs.

@cms-sw/reconstruction-l2 can you confirm that all changes are fine for you and the POGs ?

@jfernan2
Copy link
Copy Markdown
Contributor

Reco is fine with the changes, I will propagate the info to the POGs even though most of them are already tagged in this PR

@cmsbuild
Copy link
Copy Markdown
Contributor

+1

Size: This PR adds an extra 60KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-4f8d28/48341/summary.html
COMMIT: fbce99f
CMSSW: CMSSW_16_0_X_2025-09-29-1100/el8_amd64_gcc12
Additional Tests: GPU,AMD_MI300X,NVIDIA_H100,NVIDIA_L40S,NVIDIA_T4
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/48377/48341/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: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 53
  • DQMHistoTests: Total histograms compared: 4153945
  • DQMHistoTests: Total failures: 38
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4153887
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 52 files compared)
  • Checked 226 log files, 198 edm output root files, 53 DQM output files
  • TriggerResults: no differences found

AMD_MI300X Comparison Summary

Summary:

NVIDIA_H100 Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 261 differences found in the comparisons
  • DQMHistoTests: Total files compared: 11
  • DQMHistoTests: Total histograms compared: 146188
  • DQMHistoTests: Total failures: 28809
  • DQMHistoTests: Total nulls: 7
  • DQMHistoTests: Total successes: 117372
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 10 files compared)
  • Checked 42 log files, 45 edm output root files, 11 DQM output files
  • TriggerResults: no differences found

NVIDIA_L40S Comparison Summary

Summary:

NVIDIA_T4 Comparison Summary

Summary:

@mmusich
Copy link
Copy Markdown
Contributor

mmusich commented Sep 30, 2025

+hlt

  • changes in RecoTauTag/HLTProducers are minimal and coherent with the rest of the PR.

@civanch
Copy link
Copy Markdown
Contributor

civanch commented Sep 30, 2025

+simulation

@gabrielmscampos
Copy link
Copy Markdown
Member

+dqm

@jfernan2
Copy link
Copy Markdown
Contributor

jfernan2 commented Oct 1, 2025

+1

@fwyzard
Copy link
Copy Markdown
Contributor

fwyzard commented Oct 1, 2025

@cms-sw/upgrade-l2 may I ask you to (review and) sign ?
thanks !

@Moanwar
Copy link
Copy Markdown
Contributor

Moanwar commented Oct 1, 2025

+Upgrade

@cmsbuild
Copy link
Copy Markdown
Contributor

cmsbuild commented Oct 1, 2025

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. @mandrenguyen, @sextonkennedy, @ftenchini (and backports should be raised in the release meeting by the corresponding L2)

@mandrenguyen
Copy link
Copy Markdown
Contributor

+1

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.