Go to the documentation of this file.
43 srcToken_{consumes<cms::cuda::Product<cms::cudatest::Thing>>(iConfig.getParameter<
edm::InputTag>(
"src"))},
44 dstToken_{produces<cms::cuda::Product<cms::cudatest::Thing>>()} {
47 hostData_ = cms::cuda::make_host_noncached_unique<float>();
56 "This EDProducer is part of the TestCUDAProducer* family. It models a GPU algorithm this is not the first "
57 "algorithm in the chain of the GPU EDProducers, and that transfers some data from GPU to CPU and thus needs to "
58 "synchronize GPU and CPU. The synchronization is implemented with the ExternalWork extension. Produces "
59 "cms::cuda::Product<cms::cuda::Thing>.");
66 <<
iEvent.id().event() <<
" stream " <<
iEvent.streamID();
79 <<
iEvent.id().event() <<
" stream " <<
iEvent.streamID();
84 <<
label_ <<
" TestCUDAProducerGPUEW::produce begin event " <<
iEvent.id().event() <<
" stream "
92 <<
iEvent.id().event() <<
" stream " <<
iEvent.streamID();
cms::cuda::device::unique_ptr< float[]> devicePtr_
cms::cuda::host::noncached::unique_ptr< float > hostData_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
cms::cuda::ContextState ctxState_
ParameterDescriptionBase * add(U const &iLabel, T const &value)
static const std::string input
cms::cuda::device::unique_ptr< float[]> runAlgo(const std::string &label, cudaStream_t stream) const
unique_ptr< ClusterSequence > cs
TestCUDAProducerGPUKernel gpuAlgo_
std::unique_ptr< T, impl::HostDeleter > unique_ptr
#define DEFINE_FWK_MODULE(type)
~TestCUDAProducerGPUEW() override=default
TestCUDAProducerGPUEW(edm::ParameterSet const &iConfig)
const edm::EDPutTokenT< cms::cuda::Product< cms::cudatest::Thing > > dstToken_
const edm::EDGetTokenT< cms::cuda::Product< cms::cudatest::Thing > > srcToken_
void setComment(std::string const &value)
void produce(edm::Event &iEvent, edm::EventSetup const &iSetup) override
std::unique_ptr< T, impl::DeviceDeleter > unique_ptr
T getParameter(std::string const &) const
#define cudaCheck(ARG,...)
void acquire(edm::Event const &iEvent, edm::EventSetup const &iSetup, edm::WaitingTaskWithArenaHolder waitingTaskHolder) override
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)