forked from cms-sw/cmssw
-
Notifications
You must be signed in to change notification settings - Fork 5
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
Clean up the pixel local reconstruction code #593
Merged
fwyzard
merged 40 commits into
cms-patatrack:CMSSW_11_2_X_Patatrack
from
fwyzard:address_pixel_local_reco_review_comments
Dec 18, 2020
Merged
Changes from 35 commits
Commits
Show all changes
40 commits
Select commit
Hold shift + click to select a range
f17d75c
Simple cleanup
fwyzard 115a591
Rename gpuClusteringConstants to lowercase
fwyzard c962e79
Use member initializer list in the constructor
fwyzard 2316401
Drop TrackingRecHit2DCUDA.h compatibility header
fwyzard e682d25
Allow "if constexpr" in CUDA code
fwyzard ceb57cd
Update comment about m_averageGeometry ownership
fwyzard da59043
Recover missing changes from #29805
fwyzard fca2278
Cleanup SiPixelGainCalibrationForHLTGPU
fwyzard 089d20c
Rename variables according to the coding rules
fwyzard e307ae2
Move to LogDebug and other clean up
fwyzard c6b266b
Rename variables according to the coding rules
fwyzard 536c666
Reorder parameters in the autogenerated cfi file
fwyzard 90834a7
Rename PixelRecHits.{h,cu} to PixelRecHitGPUKernel.{h,cu}
fwyzard c099c10
Use gpuClustering::invalidModuleId instead of 9999
fwyzard c362200
Update comments about GPU_SMALL_EVENTS
fwyzard f6924bb
Consistently use gpuClustering::maxNumModules
fwyzard f217a05
Extend the SiPixelCluster constructor
fwyzard 1894353
Remove forwarding header file
fwyzard 3f06c72
Added comments
fwyzard 9dc3931
General code cleanup
fwyzard b7c5879
General code cleanup
fwyzard 85d69f9
General code cleanup
fwyzard 7ae9dde
Use std::size instead of hardcoding the array size
fwyzard 949a08a
Update comments
fwyzard 1037357
Move common code to PixelClusterizerBase
fwyzard 5ca25bb
General code cleanup
fwyzard e78b05c
Apply code formatting
fwyzard 7870594
Convert iterator-based loops to range-based loops
fwyzard 6352b74
Convert iterator-based loops to range-based loops
fwyzard e0fa391
General code cleanup
fwyzard e5c8318
Clarify comments and types regarding HostProduct
fwyzard deeb33a
Rename siPixelRecHitHostSoA to siPixelRecHitSoAFromLegacy
fwyzard 52480b6
Rename siPixelClustersCUDAPreSplitting to siPixelClustersPreSplitting…
fwyzard dc20554
Rename siPixelRecHitsCUDAPreSplitting and siPixelRecHitsLegacyPreSpli…
fwyzard a12321f
Minor cleanup of gpuPixelRecHits.h
fwyzard 78337cc
Use the autogenerated cfi file instead of PixelCPEFast_cfi.py
fwyzard 28b7aee
Minor cleanup of SiPixelRecHitFromSOA
fwyzard 6a4e3e5
Rename SiPixelRecHitFromSOA to SiPixelRecHitFromCUDA
fwyzard 90d989d
Add put tokens and apply code formatting
fwyzard 43edd12
Minor cleanup of PixelCPEFast
fwyzard File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,9 @@ | ||
<use name="DataFormats/Common"/> | ||
<use name="CUDADataFormats/Common"/> | ||
<use name="HeterogeneousCore/CUDAUtilities"/> | ||
<use name="cuda"/> | ||
<use name="rootcore"/> | ||
<use name="CUDADataFormats/Common"/> | ||
<use name="DataFormats/Common"/> | ||
<use name="HeterogeneousCore/CUDAUtilities"/> | ||
|
||
<export> | ||
<lib name="1"/> | ||
</export> | ||
|
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,30 +2,35 @@ | |
#define CUDADataFormats_SiPixelCluster_interface_gpuClusteringConstants_h | ||
|
||
#include <cstdint> | ||
#include <limits> | ||
|
||
namespace pixelGPUConstants { | ||
#ifdef GPU_SMALL_EVENTS | ||
// kept for testing and debugging | ||
constexpr uint32_t maxNumberOfHits = 24 * 1024; | ||
#else | ||
constexpr uint32_t maxNumberOfHits = | ||
48 * 1024; // data at pileup 50 has 18300 +/- 3500 hits; 40000 is around 6 sigma away | ||
// data at pileup 50 has 18300 +/- 3500 hits; 40000 is around 6 sigma away | ||
// tested on MC events with 55-75 pileup events | ||
constexpr uint32_t maxNumberOfHits = 48 * 1024; | ||
#endif | ||
} // namespace pixelGPUConstants | ||
|
||
namespace gpuClustering { | ||
#ifdef GPU_SMALL_EVENTS | ||
// kept for testing and debugging | ||
constexpr uint32_t maxHitsInIter() { return 64; } | ||
#else | ||
// optimized for real data PU 50 | ||
// tested on MC events with 55-75 pileup events | ||
constexpr uint32_t maxHitsInIter() { return 160; } | ||
#endif | ||
constexpr uint32_t maxHitsInModule() { return 1024; } | ||
|
||
constexpr uint32_t MaxNumModules = 2000; | ||
constexpr int32_t MaxNumClustersPerModules = maxHitsInModule(); | ||
constexpr uint32_t MaxHitsInModule = maxHitsInModule(); // as above | ||
constexpr uint32_t MaxNumClusters = pixelGPUConstants::maxNumberOfHits; | ||
constexpr uint16_t InvId = 9999; // must be > MaxNumModules | ||
constexpr uint16_t maxNumModules = 2000; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why 2000? just to choose a round number? |
||
constexpr int32_t maxNumClustersPerModules = maxHitsInModule(); | ||
constexpr uint32_t maxNumClusters = pixelGPUConstants::maxNumberOfHits; | ||
constexpr uint16_t invalidModuleId = std::numeric_limits<uint16_t>::max() - 1; | ||
static_assert(invalidModuleId > maxNumModules); // invalidModuleId must be > maxNumModules | ||
|
||
} // namespace gpuClustering | ||
|
||
|
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
#ifndef CUDADataFormats_SiPixelCluster_classes_h | ||
#define CUDADataFormats_SiPixelCluster_classes_h | ||
#ifndef CUDADataFormats_SiPixelCluster_src_classes_h | ||
#define CUDADataFormats_SiPixelCluster_src_classes_h | ||
|
||
#include "CUDADataFormats/Common/interface/Product.h" | ||
#include "CUDADataFormats/SiPixelCluster/interface/SiPixelClustersCUDA.h" | ||
#include "DataFormats/Common/interface/Wrapper.h" | ||
|
||
#endif | ||
#endif // CUDADataFormats_SiPixelCluster_src_classes_h |
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
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
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
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
#ifndef CUDADataFormats_SiPixelDigi_classes_h | ||
#define CUDADataFormats_SiPixelDigi_classes_h | ||
#ifndef CUDADataFormats_SiPixelDigi_src_classes_h | ||
#define CUDADataFormats_SiPixelDigi_src_classes_h | ||
|
||
#include "CUDADataFormats/Common/interface/Product.h" | ||
#include "CUDADataFormats/SiPixelDigi/interface/SiPixelDigisCUDA.h" | ||
#include "CUDADataFormats/SiPixelDigi/interface/SiPixelDigiErrorsCUDA.h" | ||
#include "CUDADataFormats/SiPixelDigi/interface/SiPixelDigisCUDA.h" | ||
#include "DataFormats/Common/interface/Wrapper.h" | ||
|
||
#endif | ||
#endif // CUDADataFormats_SiPixelDigi_src_classes_h |
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
1 change: 0 additions & 1 deletion
1
CUDADataFormats/TrackingRecHit/interface/TrackingRecHit2DCUDA.h
This file was deleted.
Oops, something went wrong.
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
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
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
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
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,15 @@ | ||
<use name="cuda"/> | ||
<use name="FWCore/Framework"/> | ||
<use name="FWCore/ParameterSet"/> | ||
<use name="CalibTracker/Records"/> | ||
<use name="CalibTracker/SiPixelESProducers"/> | ||
<use name="CondFormats/DataRecord"/> | ||
<use name="CondFormats/SiPixelObjects"/> | ||
<use name="CondFormats/SiStripObjects"/> | ||
<use name="FWCore/Framework"/> | ||
<use name="FWCore/ParameterSet"/> | ||
<use name="Geometry/Records"/> | ||
<use name="Geometry/TrackerGeometryBuilder"/> | ||
<use name="CalibTracker/SiPixelESProducers"/> | ||
<use name="HeterogeneousCore/CUDACore"/> | ||
<use name="MagneticField/Engine"/> | ||
<library file="*.cc" name="CalibTrackerSiPixelESProducersPlugins"> | ||
<flags EDM_PLUGIN="1"/> | ||
</library> |
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.