Graph Framework
Loading...
Searching...
No Matches
workflow::converge_item< T, SAFE_MATH > Class Template Referencefinal

Class representing a convergence workitem. More...

#include <workflow.hpp>

Inheritance diagram for workflow::converge_item< T, SAFE_MATH >:
workflow::work_item< T, SAFE_MATH >

Public Member Functions

 converge_item (graph::input_nodes< T, SAFE_MATH > inputs, graph::output_nodes< T, SAFE_MATH > outputs, graph::map_nodes< T, SAFE_MATH > maps, graph::shared_random_state< T, SAFE_MATH > state, const std::string name, const size_t size, jit::context< T, SAFE_MATH > &context, const T tol=1.0E-30, const size_t max_iter=1000)
 Construct a workflow item.
 
virtual void create_kernel_call (jit::context< T, SAFE_MATH > &context)
 Set the kernel function.
 
virtual void run ()
 Run the workitem.
 
- Public Member Functions inherited from workflow::work_item< T, SAFE_MATH >
 work_item (graph::input_nodes< T, SAFE_MATH > in, graph::output_nodes< T, SAFE_MATH > out, graph::map_nodes< T, SAFE_MATH > maps, graph::shared_random_state< T, SAFE_MATH > state, const std::string name, const size_t size, jit::context< T, SAFE_MATH > &context)
 Construct a workflow item.
 

Additional Inherited Members

- Protected Attributes inherited from workflow::work_item< T, SAFE_MATH >
const std::string kernel_name
 Name of the GPU kernel.
 
const size_t kernel_size
 Name of the GPU kernel.
 
graph::input_nodes< T, SAFE_MATH > inputs
 Input nodes.
 
graph::output_nodes< T, SAFE_MATH > outputs
 Output nodes.
 
graph::shared_random_state< T, SAFE_MATH > state
 Random state node.
 
std::function< void(void)> kernel
 Kernel function.
 

Detailed Description

template<jit::float_scalar T, bool SAFE_MATH = false>
class workflow::converge_item< T, SAFE_MATH >

Class representing a convergence workitem.

Template Parameters
TBase type of the calculation.
SAFE_MATHUse Safe Math operations.

Constructor & Destructor Documentation

◆ converge_item()

template<jit::float_scalar T, bool SAFE_MATH = false>
workflow::converge_item< T, SAFE_MATH >::converge_item ( graph::input_nodes< T, SAFE_MATH >  inputs,
graph::output_nodes< T, SAFE_MATH >  outputs,
graph::map_nodes< T, SAFE_MATH >  maps,
graph::shared_random_state< T, SAFE_MATH >  state,
const std::string  name,
const size_t  size,
jit::context< T, SAFE_MATH > &  context,
const T  tol = 1.0E-30,
const size_t  max_iter = 1000 
)
inline

Construct a workflow item.

Parameters
[in]inputsInput variables.
[in]outputsOutput nodes.
[in]mapsSetter maps.
[in]stateRandom state node.
[in]nameName of the workitem.
[in]sizeSize of the workitem.
[in,out]contextJit context.
[in]tolTolarance to solve the dispersion function to.
[in]max_iterMaximum number of iterations before giving up.

Member Function Documentation

◆ create_kernel_call()

template<jit::float_scalar T, bool SAFE_MATH = false>
virtual void workflow::converge_item< T, SAFE_MATH >::create_kernel_call ( jit::context< T, SAFE_MATH > &  context)
inlinevirtual

Set the kernel function.

Parameters
[in,out]contextJit context.

Reimplemented from workflow::work_item< T, SAFE_MATH >.

◆ run()

template<jit::float_scalar T, bool SAFE_MATH = false>
virtual void workflow::converge_item< T, SAFE_MATH >::run ( )
inlinevirtual

Run the workitem.

Reimplemented from workflow::work_item< T, SAFE_MATH >.


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