|
Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
|
A tensor operation, containing all the data (op, lhs, rhs) required to run it. Also provides methods to get a list of inputs and outputs, as well as successor and dependency information used in scheduling. More...
#include <schedule.h>


Public Member Functions | |
| TensorOperation (TensorOperationTypes op, Idx_Tensor *lhs, const CTF_int::Term *rhs) | |
| Constructor, create the tensor operation lhs op= rhs. More... | |
| void | get_outputs (std::set< Idx_Tensor *, CTF_int::tensor_name_less > *outputs_set) const |
| appends the tensors this writes to to the input set More... | |
| void | get_inputs (std::set< Idx_Tensor *, CTF_int::tensor_name_less > *inputs_set) const |
| appends the tensors this depends on (reads from, including the output if a previous value is required) to the input set More... | |
| void | execute (std::map< CTF_int::tensor *, CTF_int::tensor * > *remap=NULL) |
| runs this operation, but does NOT handle dependency scheduling optionally takes a remapping of tensors More... | |
| double | estimate_time () |
| provides an estimated runtime cost More... | |
| bool | is_dummy () |
| const char * | name () |
Public Member Functions inherited from CTF::TensorOperationBase | |
| virtual | ~TensorOperationBase () |
Data Fields | |
| int | dependency_count |
| std::vector< TensorOperation * > | successors |
| std::vector< TensorOperation * > | reads |
| int | dependency_left |
Protected Attributes | |
| TensorOperationTypes | op |
| Idx_Tensor * | lhs |
| const CTF_int::Term * | rhs |
| double | cached_estimated_cost |
A tensor operation, containing all the data (op, lhs, rhs) required to run it. Also provides methods to get a list of inputs and outputs, as well as successor and dependency information used in scheduling.
Definition at line 34 of file schedule.h.