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

Improve the memory usage in the alpaka pixel reconstruction #44458

Merged

Conversation

fwyzard
Copy link
Contributor

@fwyzard fwyzard commented Mar 18, 2024

PR description:

  • Fix the TrackingRecHitsDevice constructor:
    Fix the hitsModuleStart copy to use the correct source (device-to-device instead of host-to-device).
    Improve the offsetBPIX2 copy and use the data member as source, to guarantee the lifetime of the source.
    Remove the queue synchronisation.

  • Remove an unused variable from SiPixelRawToCluster::acquire().

  • Improve memory usage in SiPixelRawToCluster::acquire():
    Allocate device memory only when actually used.

  • Use cached memory buffers in WordFedAppender.

PR validation:

Run the HLT 2024 v1.0 menu with the changes.

Backport status

To be backported to CMSSW 14.0.x for data taking (see #44459).

@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 18, 2024

type bugfix

@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 18, 2024

enable gpu

@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 18, 2024

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 18, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44458/39532

@cmsbuild
Copy link
Contributor

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

It involves the following packages:

  • DataFormats/TrackingRecHitSoA (reconstruction, heterogeneous)
  • RecoLocalTracker/SiPixelClusterizer (reconstruction)

@jfernan2, @fwyzard, @makortel, @mandrenguyen can you please review it and eventually sign? Thanks.
@mroguljic, @JanFSchulte, @mmusich, @ferencek, @GiacomoSguazzoni, @threus, @felicepantaleo, @rovere, @VinInn, @gpetruc, @VourMa, @dkotlins, @mtosi, @tsusa, @missirol, @tvami 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

fwyzard and others added 4 commits March 19, 2024 00:26
Fix the hitsModuleStart copy to use the correct source (device-to-device
instead of host-to-device).

Improve the offsetBPIX2 copy and use the data member as source, to guarantee
the lifetime of the source.

Remove the queue synchronisation.

Update the unit test accordingly.
Allocate device memory only when actually used.

Co-authored-by: Matti Kortelainen <[email protected]>
@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 18, 2024

please test

@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 20, 2024

please test

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44458/39593

@cmsbuild
Copy link
Contributor

Pull request #44458 was updated. @fwyzard, @makortel can you please check and sign again.

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-837ba7/38304/summary.html
COMMIT: 70494ae
CMSSW: CMSSW_14_1_X_2024-03-20-1100/el8_amd64_gcc12
Additional Tests: GPU
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/44458/38304/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: 48 differences found in the comparisons
  • DQMHistoTests: Total files compared: 3
  • DQMHistoTests: Total histograms compared: 39740
  • DQMHistoTests: Total failures: 1149
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 38591
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 2 files compared)
  • Checked 8 log files, 10 edm output root files, 3 DQM output files
  • TriggerResults: no differences found

@fwyzard
Copy link
Contributor Author

fwyzard commented Mar 21, 2024

+heterogeneous

Further improvements will be done in a separate PR.

@cmsbuild
Copy link
Contributor

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

@antoniovilela
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 7911d8c into cms-sw:master Mar 21, 2024
14 checks passed
artlbv added a commit to artlbv/cmssw that referenced this pull request Mar 25, 2024
commit b3970a8
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 17:21:00 2024 +0100

    Cleaning up AXO model from L1Global

commit ccb11e8
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 12:31:05 2024 +0100

    Remove spurious comments

commit 261c747
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 12:30:04 2024 +0100

    Apply suggestions from code review

    Co-authored-by: Marco Musich <[email protected]>

commit 1530330
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 11:10:42 2024 +0100

    Remove AXO model in customize HLT

commit c691834
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 10:37:44 2024 +0100

    Remove debug print

commit bbd270a
Author: Artur Lobanov <[email protected]>
Date:   Thu Mar 21 23:36:47 2024 +0100

    Apply code format

commit 215cb70
Author: Artur Lobanov <[email protected]>
Date:   Thu Mar 21 23:29:08 2024 +0100

    Set AXO condition model from template

commit 1dec93d
Author: Artur Lobanov <[email protected]>
Date:   Thu Mar 21 23:29:08 2024 +0100

    Set AXO condition model from template

commit 3e82bc4
Author: Artur Lobanov <[email protected]>
Date:   Thu Mar 21 23:28:48 2024 +0100

    Remove Axo model setting from L1 Global

commit 2c51218
Author: Artur Lobanov <[email protected]>
Date:   Thu Mar 21 22:26:54 2024 +0100

    Add backwards compatibility to AXO condition in TM parser

commit 12c3ddb
Author: Artur Lobanov <[email protected]>
Date:   Fri Mar 22 10:17:34 2024 +0100

    Original AXO emu changes from Melissa quinnanm

commit 4ce99ab
Merge: 7911d8c 233a0ae
Author: cmsbuild <[email protected]>
Date:   Thu Mar 21 20:29:32 2024 +0100

    Merge pull request cms-sw#44402 from kyungminparkdrums/fifoflagchange_141X

    Change FEStatus flag labels in ECAL DQM

commit 7911d8c
Merge: 86d37c3 70494ae
Author: cmsbuild <[email protected]>
Date:   Thu Mar 21 18:19:23 2024 +0100

    Merge pull request cms-sw#44458 from fwyzard/improve_alpaka_Pixel_memory_usage_141x

    Improve the memory usage in the alpaka pixel reconstruction

commit 70494ae
Author: Andrea Bocci <[email protected]>
Date:   Tue Mar 19 18:43:46 2024 +0100

    Update OneToManyAssocRandomAccess to use the preferred warp size

commit a7047fd
Author: Andrea Bocci <[email protected]>
Date:   Mon Mar 18 23:01:38 2024 +0100

    Use cached memory buffers in WordFedAppender

    Co-authored-by: Matti Kortelainen <[email protected]>

commit 5a2feb1
Author: Andrea Bocci <[email protected]>
Date:   Mon Mar 18 22:41:49 2024 +0100

    Improve memory usage in SiPixelRawToCluster::acquire()

    Allocate device memory only when actually used.

    Co-authored-by: Matti Kortelainen <[email protected]>

commit 4bf2fb9
Author: Andrea Bocci <[email protected]>
Date:   Mon Mar 18 22:29:46 2024 +0100

    Remove unused variable from SiPixelRawToCluster::acquire()

    Co-authored-by: Matti Kortelainen <[email protected]>

commit 418f6e2
Author: Andrea Bocci <[email protected]>
Date:   Mon Mar 18 22:24:17 2024 +0100

    Fix the TrackingRecHitsDevice constructor

    Fix the hitsModuleStart copy to use the correct source (device-to-device
    instead of host-to-device).

    Improve the offsetBPIX2 copy and use the data member as source, to guarantee
    the lifetime of the source.

    Remove the queue synchronisation.

    Update the unit test accordingly.

commit 233a0ae
Author: Kyungmin Park <[email protected]>
Date:   Thu Mar 14 13:02:17 2024 +0100

    Change FIFOFULL flag to FORCEDFULLSUPP and FULLL1ADESYNC to FIFOFULL

Co-authored-by: Andrea Bocci <[email protected]>
Co-authored-by: Artur Lobanov <[email protected]>
Co-authored-by: cmsbuild <[email protected]>
Co-authored-by: Kyungmin Park <[email protected]>
Co-authored-by: Marco Musich <[email protected]>
Co-authored-by: Matti Kortelainen <[email protected]>
@fwyzard fwyzard deleted the improve_alpaka_Pixel_memory_usage_141x branch April 7, 2024 10:02
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.

5 participants