CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Attributes
TestCUDAProducerGPUKernel Class Reference

#include <TestCUDAProducerGPUKernel.h>

Public Member Functions

cms::cuda::device::unique_ptr< float[]> runAlgo (const std::string &label, const float *d_input, cudaStream_t stream) const
 
cms::cuda::device::unique_ptr< float[]> runAlgo (const std::string &label, cudaStream_t stream) const
 
void runSimpleAlgo (float *d_data, cudaStream_t stream) const
 
 TestCUDAProducerGPUKernel ()=default
 
 ~TestCUDAProducerGPUKernel ()=default
 

Static Public Attributes

static constexpr int NUM_VALUES = 4000
 

Detailed Description

This class models the actual CUDA implementation of an algorithm.

Memory is allocated dynamically with the allocator in cms::cuda.

The algorithm is intended to waste time with large matrix operations so that the asynchronous nature of the CUDA integration becomes visible with debug prints.

Definition at line 19 of file TestCUDAProducerGPUKernel.h.

Constructor & Destructor Documentation

◆ TestCUDAProducerGPUKernel()

TestCUDAProducerGPUKernel::TestCUDAProducerGPUKernel ( )
default

◆ ~TestCUDAProducerGPUKernel()

TestCUDAProducerGPUKernel::~TestCUDAProducerGPUKernel ( )
default

Member Function Documentation

◆ runAlgo() [1/2]

cms::cuda::device::unique_ptr<float[]> TestCUDAProducerGPUKernel::runAlgo ( const std::string &  label,
const float *  d_input,
cudaStream_t  stream 
) const

◆ runAlgo() [2/2]

cms::cuda::device::unique_ptr<float[]> TestCUDAProducerGPUKernel::runAlgo ( const std::string &  label,
cudaStream_t  stream 
) const
inline

◆ runSimpleAlgo()

void TestCUDAProducerGPUKernel::runSimpleAlgo ( float *  d_data,
cudaStream_t  stream 
) const

Member Data Documentation

◆ NUM_VALUES

constexpr int TestCUDAProducerGPUKernel::NUM_VALUES = 4000
staticconstexpr
TestCUDAProducerGPUKernel::runAlgo
cms::cuda::device::unique_ptr< float[]> runAlgo(const std::string &label, cudaStream_t stream) const
Definition: TestCUDAProducerGPUKernel.h:27
cms::cuda::stream
uint32_t const T *__restrict__ const uint32_t *__restrict__ int32_t int Histo::index_type cudaStream_t stream
Definition: HistoContainer.h:51
label
const char * label
Definition: PFTauDecayModeTools.cc:11