8 #include <cuda_runtime.h> 29 std::vector<unsigned int>
const&
fedIds = cablingMap.
fedIds();
30 std::unique_ptr<SiPixelFedCablingTree>
const& cabling = cablingMap.
cablingTree();
32 unsigned int startFed = *(
fedIds.begin());
33 unsigned int endFed = *(
fedIds.end() - 1);
38 for (
unsigned int fed = startFed; fed <= endFed; fed++) {
46 if (pixelRoc !=
nullptr) {
50 if (badPixelInfo !=
nullptr)
87 LogDebug(
"SiPixelROCsStatusAndMapping")
88 <<
"----------------------------------------------------------------------------" << std::endl;
89 LogDebug(
"SiPixelROCsStatusAndMapping")
92 LogDebug(
"SiPixelROCsStatusAndMapping")
95 LogDebug(
"SiPixelROCsStatusAndMapping")
97 LogDebug(
"SiPixelROCsStatusAndMapping")
98 <<
"----------------------------------------------------------------------------" << std::endl;
107 cudaStream_t cudaStream)
const {
116 return data.cablingMapDevice;
124 this->modToUnpDefault.data(),
129 return data.modToUnpDefault;
133 std::set<unsigned int>
const&
modules, cudaStream_t cudaStream)
const {
140 unsigned int startFed = *(
fedIds.begin());
141 unsigned int endFed = *(
fedIds.end() - 1);
146 for (
unsigned int fed = startFed; fed <= endFed; fed++) {
151 if (pixelRoc !=
nullptr) {
154 modToUnpHost[
index] =
true;
161 cudaCheck(cudaMemcpyAsync(modToUnpDevice.get(),
164 cudaMemcpyHostToDevice,
166 return modToUnpDevice;
const unsigned char * getModToUnpAllAsync(cudaStream_t cudaStream) const
unsigned char badRocs[pixelgpudetails::MAX_SIZE]
unsigned int rawId[pixelgpudetails::MAX_SIZE]
const SiPixelFedCablingMap * cablingMap_
std::unique_ptr< SiPixelFedCablingTree > cablingTree() const
bool IsRocBad(const uint32_t &detid, const short &rocNb) const
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
const SiPixelROCsStatusAndMapping * getGPUProductAsync(cudaStream_t cudaStream) const
unsigned int moduleId[pixelgpudetails::MAX_SIZE]
unsigned int roc[pixelgpudetails::MAX_SIZE]
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
std::unique_ptr< T, impl::DeviceDeleter > unique_ptr
SiPixelROCsStatusAndMapping * cablingMapHost
unsigned int rocInDet[pixelgpudetails::MAX_SIZE]
SiPixelROCsStatusAndMapping * cablingMapDevice
cms::cuda::ESProduct< GPUData > gpuData_
cms::cuda::ESProduct< ModulesToUnpack > modToUnp_
constexpr unsigned int MAX_ROC
std::vector< unsigned int > fedIds() const
constexpr uint16_t invalidModuleId
unsigned int link[pixelgpudetails::MAX_SIZE]
SiPixelROCsStatusAndMappingWrapper(SiPixelFedCablingMap const &cablingMap, TrackerGeometry const &trackerGeom, SiPixelQuality const *badPixelInfo)
char data[epos_bytes_allocation]
std::vector< unsigned char, cms::cuda::HostAllocator< unsigned char > > modToUnpDefault
constexpr unsigned int MAX_SIZE
constexpr unsigned int MAX_SIZE_BYTE_BOOL
unsigned int fed[pixelgpudetails::MAX_SIZE]
#define cudaCheck(ARG,...)
~SiPixelROCsStatusAndMappingWrapper()
constexpr unsigned int MAX_LINK
uint32_t rawId() const
return the DetUnit to which this ROC belongs to.
unsigned int idInDetUnit() const
id of this ROC in DetUnit etermined by token path
cms::cuda::device::unique_ptr< unsigned char[]> getModToUnpRegionalAsync(std::set< unsigned int > const &modules, cudaStream_t cudaStream) const