Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:38:35

0001 #ifndef CUDADataFormats_SiPixelCluster_interface_gpuClusteringConstants_h
0002 #define CUDADataFormats_SiPixelCluster_interface_gpuClusteringConstants_h
0003 
0004 #include <cstdint>
0005 #include <limits>
0006 
0007 namespace gpuClustering {
0008 #ifdef GPU_SMALL_EVENTS
0009   // kept for testing and debugging
0010   constexpr uint32_t maxHitsInIter() { return 64; }
0011 #else
0012   // optimized for real data PU 50
0013   // tested on MC events with 55-75 pileup events
0014   constexpr uint32_t maxHitsInIter() { return 160; }  //TODO better tuning for PU 140-200
0015 #endif
0016 
0017   constexpr uint16_t clusterThresholdLayerOne = 2000;
0018   constexpr uint16_t clusterThresholdOtherLayers = 4000;
0019 
0020   constexpr uint32_t maxNumDigis = 3 * 256 * 1024;  // @PU=200 µ=530 σ=50k this is >4σ away
0021   constexpr uint16_t maxNumModules = 4000;
0022 
0023   constexpr uint16_t invalidModuleId = std::numeric_limits<uint16_t>::max() - 1;
0024   constexpr int invalidClusterId = -9999;
0025   static_assert(invalidModuleId > maxNumModules);  // invalidModuleId must be > maxNumModules
0026 
0027 }  // namespace gpuClustering
0028 
0029 #endif  // CUDADataFormats_SiPixelCluster_interface_gpuClusteringConstants_h