CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Attributes
pixelgpudetails::SiPixelRawToClusterGPUKernel Class Reference

#include <SiPixelRawToClusterGPUKernel.h>

Classes

class  WordFedAppender
 

Public Member Functions

SiPixelDigiErrorsCUDA && getErrors ()
 
std::pair< SiPixelDigisCUDA, SiPixelClustersCUDAgetResults ()
 
void makeClustersAsync (bool isRun2, const SiPixelClusterThresholds clusterThresholds, const SiPixelROCsStatusAndMapping *cablingMap, const unsigned char *modToUnp, const SiPixelGainForHLTonGPU *gains, const WordFedAppender &wordFed, SiPixelFormatterErrors &&errors, const uint32_t wordCounter, const uint32_t fedCounter, bool useQualityInfo, bool includeErrors, bool debug, cudaStream_t stream)
 
SiPixelRawToClusterGPUKerneloperator= (const SiPixelRawToClusterGPUKernel &)=delete
 
SiPixelRawToClusterGPUKerneloperator= (SiPixelRawToClusterGPUKernel &&)=delete
 
 SiPixelRawToClusterGPUKernel ()=default
 
 SiPixelRawToClusterGPUKernel (const SiPixelRawToClusterGPUKernel &)=delete
 
 SiPixelRawToClusterGPUKernel (SiPixelRawToClusterGPUKernel &&)=delete
 
 ~SiPixelRawToClusterGPUKernel ()=default
 

Private Attributes

SiPixelClustersCUDA clusters_d
 
SiPixelDigiErrorsCUDA digiErrors_d
 
SiPixelDigisCUDA digis_d
 
uint32_t nDigis = 0
 
cms::cuda::host::unique_ptr< uint32_t[]> nModules_Clusters_h
 

Detailed Description

Definition at line 118 of file SiPixelRawToClusterGPUKernel.h.

Constructor & Destructor Documentation

◆ SiPixelRawToClusterGPUKernel() [1/3]

pixelgpudetails::SiPixelRawToClusterGPUKernel::SiPixelRawToClusterGPUKernel ( )
default

◆ ~SiPixelRawToClusterGPUKernel()

pixelgpudetails::SiPixelRawToClusterGPUKernel::~SiPixelRawToClusterGPUKernel ( )
default

◆ SiPixelRawToClusterGPUKernel() [2/3]

pixelgpudetails::SiPixelRawToClusterGPUKernel::SiPixelRawToClusterGPUKernel ( const SiPixelRawToClusterGPUKernel )
delete

◆ SiPixelRawToClusterGPUKernel() [3/3]

pixelgpudetails::SiPixelRawToClusterGPUKernel::SiPixelRawToClusterGPUKernel ( SiPixelRawToClusterGPUKernel &&  )
delete

Member Function Documentation

◆ getErrors()

SiPixelDigiErrorsCUDA&& pixelgpudetails::SiPixelRawToClusterGPUKernel::getErrors ( )
inline

Definition at line 170 of file SiPixelRawToClusterGPUKernel.h.

170 { return std::move(digiErrors_d); }

References digiErrors_d, and eostools::move().

Referenced by SiPixelRawToClusterCUDA::produce().

◆ getResults()

std::pair<SiPixelDigisCUDA, SiPixelClustersCUDA> pixelgpudetails::SiPixelRawToClusterGPUKernel::getResults ( )
inline

Definition at line 157 of file SiPixelRawToClusterGPUKernel.h.

157  {
160  // need to explicitly deallocate while the associated CUDA
161  // stream is still alive
162  //
163  // technically the statement above is not true anymore now that
164  // the CUDA streams are cached within the cms::cuda::StreamCache, but it is
165  // still better to release as early as possible
166  nModules_Clusters_h.reset();
167  return std::make_pair(std::move(digis_d), std::move(clusters_d));
168  }

References clusters_d, digis_d, eostools::move(), nDigis, nModules_Clusters_h, SiPixelClustersCUDA::setNClusters(), and SiPixelDigisCUDA::setNModulesDigis().

Referenced by SiPixelRawToClusterCUDA::produce().

◆ makeClustersAsync()

void pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync ( bool  isRun2,
const SiPixelClusterThresholds  clusterThresholds,
const SiPixelROCsStatusAndMapping cablingMap,
const unsigned char *  modToUnp,
const SiPixelGainForHLTonGPU gains,
const WordFedAppender wordFed,
SiPixelFormatterErrors &&  errors,
const uint32_t  wordCounter,
const uint32_t  fedCounter,
bool  useQualityInfo,
bool  includeErrors,
bool  debug,
cudaStream_t  stream 
)

◆ operator=() [1/2]

SiPixelRawToClusterGPUKernel& pixelgpudetails::SiPixelRawToClusterGPUKernel::operator= ( const SiPixelRawToClusterGPUKernel )
delete

◆ operator=() [2/2]

SiPixelRawToClusterGPUKernel& pixelgpudetails::SiPixelRawToClusterGPUKernel::operator= ( SiPixelRawToClusterGPUKernel &&  )
delete

Member Data Documentation

◆ clusters_d

SiPixelClustersCUDA pixelgpudetails::SiPixelRawToClusterGPUKernel::clusters_d
private

Definition at line 178 of file SiPixelRawToClusterGPUKernel.h.

Referenced by getResults().

◆ digiErrors_d

SiPixelDigiErrorsCUDA pixelgpudetails::SiPixelRawToClusterGPUKernel::digiErrors_d
private

Definition at line 179 of file SiPixelRawToClusterGPUKernel.h.

Referenced by getErrors().

◆ digis_d

SiPixelDigisCUDA pixelgpudetails::SiPixelRawToClusterGPUKernel::digis_d
private

Definition at line 177 of file SiPixelRawToClusterGPUKernel.h.

Referenced by getResults().

◆ nDigis

uint32_t pixelgpudetails::SiPixelRawToClusterGPUKernel::nDigis = 0
private

Definition at line 173 of file SiPixelRawToClusterGPUKernel.h.

Referenced by getResults().

◆ nModules_Clusters_h

cms::cuda::host::unique_ptr<uint32_t[]> pixelgpudetails::SiPixelRawToClusterGPUKernel::nModules_Clusters_h
private

Definition at line 176 of file SiPixelRawToClusterGPUKernel.h.

Referenced by getResults().

pixelgpudetails::SiPixelRawToClusterGPUKernel::digis_d
SiPixelDigisCUDA digis_d
Definition: SiPixelRawToClusterGPUKernel.h:177
SiPixelDigisCUDA::setNModulesDigis
void setNModulesDigis(uint32_t nModules, uint32_t nDigis)
Definition: SiPixelDigisCUDA.h:21
pixelgpudetails::SiPixelRawToClusterGPUKernel::clusters_d
SiPixelClustersCUDA clusters_d
Definition: SiPixelRawToClusterGPUKernel.h:178
pixelgpudetails::SiPixelRawToClusterGPUKernel::digiErrors_d
SiPixelDigiErrorsCUDA digiErrors_d
Definition: SiPixelRawToClusterGPUKernel.h:179
SiPixelClustersCUDA::setNClusters
void setNClusters(uint32_t nClusters)
Definition: SiPixelClustersCUDA.h:21
pixelgpudetails::SiPixelRawToClusterGPUKernel::nDigis
uint32_t nDigis
Definition: SiPixelRawToClusterGPUKernel.h:173
eostools.move
def move(src, dest)
Definition: eostools.py:511
pixelgpudetails::SiPixelRawToClusterGPUKernel::nModules_Clusters_h
cms::cuda::host::unique_ptr< uint32_t[]> nModules_Clusters_h
Definition: SiPixelRawToClusterGPUKernel.h:176