forked from cms-sw/cmssw
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Migration of SiStripClusterizer to Alpaka #134
Open
mmasciov
wants to merge
4
commits into
from-CMSSW_13_1_0
Choose a base branch
from
alpakaSiStrip
base: from-CMSSW_13_1_0
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@dan131riley, @slava77: of course, your feedback is welcome even while the PR awaits to be completed. |
mmasciov
pushed a commit
that referenced
this pull request
Jan 17, 2025
The following is a squashed commit of the contributions of different people Co-authored-by: IzaakWN <[email protected]> Co-authored-by: Lovisa <[email protected]> Co-authored-by: Matti Kortelainen <[email protected]> Co-authored-by: Pedro Silva <[email protected]> Co-authored-by: Yulun Miao <[email protected]> Co-authored-by: ineuteli <[email protected]> Co-authored-by: ywkao <[email protected]> A summary of contents follows. Note this has been edited (ammended by @pfs): - HGCal Electronics Mapping for alpaka (cms-sw#161) - add dense index map for HGCalElectronicsId - add getMaxDataSize & getMaxERxSize functions - fix getDenseIndex bug; add typcode map to ModuleIndexer (to retrieve module dense index offset); use regexp for type code - add getFedAndModuleIndex; rename getDenseIndex -> getIndexForModule(Data) for elecID - add typecode regexp; pass typecode to modIndexer_.processNewModule - adding dense index info producer - adding hgcalmapping customise - fix misunderstanding in max data size expected from indexer - remove_if was missing a call to std::vector::erase to effectively remove unused entries - typecodemap was missing a reset with the final indices - usage of command line options was missing in module map tester - do not use moduleLUT in DenseIndexInfoESProducer!! it has the full dimensions before trimming to the actual number of ECON-Ds in a FED - Add irot to module mapper (#134) - move variables to private, use getters and move bulky code to .cc in HGCalMappingModuleIndexer / apply code checks - CondFormats - add calibrations Alpaka ESProducer - rename ES_HGCal*Parameter.cc -> HGCal*ParameterHostCollection.cc for clarity - moving to single record as all conds produced have the same IOV - add HGCal configuration ESProducers + record + tester - Record descriptions added - Re-introducing 1 record per payload, addressing additional code comments - rename ES_HGCal*Parameter.cc -> HGCal*ParameterHostCollection.cc for clarity - rename HGCal*ParameterHostCollection.cc -> HGCal*ParameterDeviceCollection.cc for clarity - rename 'HGCal.*(Device|Host)Collection -> (Device|Host)' for readability; move calib SoAs to CondFormats/HGCalObjects/; move TestHGCalRecHitESProducers to test - fill HGCal config structs for unpacker (header marks, charMode) - read HGCal FED & ECON-D configuration from JSON - Adding digi SoAs - moving digi soa filler to alpaka and adding extra tools - rename 'HGCal.*(Device|Host)Collection -> HGCal.*(Device|Host)' for readability - Refactor unpacker. - parse arrays of gain-dependent calibration parameters in eRx-blocks (simplified in latter commits to remove explicit gain-dependence) - add missing Noise attribute - Convert ECON-D payload to 32b words. - rebase the unpacker on denseIdx and SoA digis - Moving emulators to SimCalorimetry/HGCalSimAlgos, adapting paths - fix undefined left shift in HGCalRawDataPackingTools.cc; remove duplicate line in HGCalMappingTools.h (32 -> 31 to solve undefined left shift) - SoA format of HGCal ECON-D header - Unpack header information to HGCalECONDInfoSoA; Add in quality checks for ECON-D - Update unpacker to use HGCalConfiguration structure - Add flags for passthrough ECON-Ds - Fix the number of channel in eRx;Add default flag for digi, representing digi not read in raw data - Add parsing function for econd flag; renaming HGCalECONDInfo to HGCalECONDPacketInfo - Add in common mode in ECOND packet information - enable FED-level Parallelization through config - Remove change of location when something wrong in S-Link trailer - Add HGCalRecHit - add DIGI2RECO calibration algorithms (see https://gitlab.cern.ch/hgcal-dpg/hgcal-comm/-/merge_requests/3)[C; remove detId/elecId from SoAs (should be redundant since common indexer); add HGCROCChannelDataFrame<HGCalDetId> to classes_def.xml - Move HGCalRawDataDefinitions.h. - Update and rename HGCalRecHitProducer.cc to HGCalRecHitProducers.cc - update calibration kernels - bugfix in the cm Sum - fill rec hitflags - update kernel after closure - swap arguments in tot kernel - Code formats / checks - Removing unused includes and delarations - Re-introducing headers.h file needed for serialization classes - Remove data and change locations to cms-data folder - moving to printf, removing unused product, and message logger - int -> uint32_t; uncomment debugging print out - Change to LogDebug
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR description:
Migration of SiStripClusterizer to Alpaka, building on PR cms-sw#34618.
The migration of each data format entails adjustments to relevant producers/kernels.
PR validation:
In TTbar events + PU, performance compared to reference is ~ identical on both CPU and GPU:
https://mmasciov.web.cern.ch/mmasciov/SiStripAlpaka/MTV_trackrecoSiStripAlpaka_all/
FYI: @dan131riley, @slava77, @VourMa