NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
MultifieldGPUPipelineStage Class Reference
Collaboration diagram for MultifieldGPUPipelineStage:
[legend]

Public Member Functions

uint32_t setup (Runtime::Execution::PipelineExecutionContext &pipelineExecutionContext) override
 Must be called only once per executable pipeline and initializes the pipeline execution context. e.g, creates the individual operator states -> window handler. More...
 
ExecutionResult execute (Runtime::TupleBuffer &buffer, Runtime::Execution::PipelineExecutionContext &ctx, Runtime::WorkerContext &wc) override
 Is called once per input buffer and performs the computation of each operator. It can access the state in the PipelineExecutionContext and uns the WorkerContext to identify the current worker thread. More...
 
uint32_t stop (Runtime::Execution::PipelineExecutionContext &pipelineExecutionContext) override
 Must be called exactly once per executable pipeline to remove operator state. More...
 
- Public Member Functions inherited from NES::Runtime::Execution::ExecutablePipelineStage
virtual ~ExecutablePipelineStage ()=default
 
 ExecutablePipelineStage (PipelineStageArity arity=PipelineStageArity::Unary)
 
PipelineStageArity getArity () const
 Returns the arity of this pipeline. More...
 
virtual uint32_t start (PipelineExecutionContext &pipelineExecutionContext)
 Must be called only once per executable pipeline and starts the executable pipeline. e.g. starts the threads for the window handler. More...
 
virtual uint32_t open (PipelineExecutionContext &pipelineExecutionContext, WorkerContext &workerContext)
 Must be called exactly once per worker thread and initializes worker local state. For instance a worker local aggregation state. More...
 
virtual uint32_t close (PipelineExecutionContext &pipelineExecutionContext, WorkerContext &workerContext)
 Must be called exactly once per worker thread to remove worker local state. More...
 
virtual std::string getCodeAsString ()
 return the code of the pipeline More...
 

Public Attributes

CUDAKernelWrapper< InputRecord, OutputRecord > cudaKernelWrapper
 

Member Function Documentation

◆ execute()

ExecutionResult MultifieldGPUPipelineStage::execute ( Runtime::TupleBuffer inputTupleBuffer,
Runtime::Execution::PipelineExecutionContext pipelineExecutionContext,
Runtime::WorkerContext workerContext 
)
inlineoverridevirtual

Is called once per input buffer and performs the computation of each operator. It can access the state in the PipelineExecutionContext and uns the WorkerContext to identify the current worker thread.

Parameters
inputTupleBuffer
pipelineExecutionContext
workerContext
Returns
0 if an error occurred.

Implements NES::Runtime::Execution::ExecutablePipelineStage.

References NES::Runtime::WorkerContext::allocateTupleBuffer(), NES::Runtime::Execution::PipelineExecutionContext::emitBuffer(), NES::Runtime::TupleBuffer::getBuffer(), NES::Runtime::TupleBuffer::getNumberOfTuples(), and NES::Ok.

Here is the call graph for this function:

◆ setup()

uint32_t MultifieldGPUPipelineStage::setup ( Runtime::Execution::PipelineExecutionContext pipelineExecutionContext)
inlineoverridevirtual

Must be called only once per executable pipeline and initializes the pipeline execution context. e.g, creates the individual operator states -> window handler.

Parameters
pipelineExecutionContext
Returns
0 if no error occurred.

Reimplemented from NES::Runtime::Execution::ExecutablePipelineStage.

References NUMBER_OF_TUPLE.

◆ stop()

uint32_t MultifieldGPUPipelineStage::stop ( Runtime::Execution::PipelineExecutionContext pipelineExecutionContext)
inlineoverridevirtual

Must be called exactly once per executable pipeline to remove operator state.

Parameters
pipelineExecutionContext
Returns
0 if no error occurred.

Reimplemented from NES::Runtime::Execution::ExecutablePipelineStage.

Member Data Documentation

◆ cudaKernelWrapper

CUDAKernelWrapper<InputRecord, OutputRecord> MultifieldGPUPipelineStage::cudaKernelWrapper

The documentation for this class was generated from the following file: