|
Graph Framework
|
Run a work item in a fixed iteration loop. More...
#include <workflow.hpp>
Public Member Functions | |
| loop_item (graph::input_nodes< T, SAFE_MATH > &in, graph::output_nodes< T, SAFE_MATH > &out, graph::map_nodes< T, SAFE_MATH > &maps, graph::input_nodes< T, SAFE_MATH > &atomics, graph::shared_random_state< T, SAFE_MATH > &state, const std::string name, const size_t size, jit::context< T, SAFE_MATH > &context, const size_t iterations) | |
| 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. | |
Protected Attributes | |
| std::function< void(void)> | kernel |
| Kernel function. | |
| const std::string | kernel_name |
| Name of the GPU kernel. | |
| const size_t | kernel_size |
| Size of the GPU kernel. | |
| graph::input_nodes< T, SAFE_MATH > | inputs |
| Input nodes. | |
| graph::output_nodes< T, SAFE_MATH > | outputs |
| Output nodes. | |
| graph::input_nodes< T, SAFE_MATH > | atomics |
| Atomic nodes. | |
| graph::shared_random_state< T, SAFE_MATH > | state |
| Random state node. | |
Run a work item in a fixed iteration loop.
| T | Base type of the calculation. |
| SAFE_MATH | Use Safe Math operations. |
|
inline |
Construct a workflow item.
| [in] | in | Input variables. |
| [in] | out | Output nodes. |
| [in] | maps | Setter maps. |
| [in] | atomics | Input variables for atomic operations. |
| [in] | state | Random state node. |
| [in] | name | Name of the work item. |
| [in] | size | Size of the work item. |
| [in,out] | context | Jit context. |
| [in] | iterations | Number of iterations to run the loop. |
|
inlinevirtual |
Set the kernel function.
| [in,out] | context | Jit context. |
Implements workflow::item< T, SAFE_MATH >.
|
inlinevirtual |
Run the workitem.
Implements workflow::item< T, SAFE_MATH >.