ViennaCL - The Vienna Computing Library
1.5.2
|
The main class for representing a statement such as x = inner_prod(y,z); at runtime. More...
#include <forwards.h>
Public Types | |
typedef statement_node | value_type |
typedef viennacl::vcl_size_t | size_type |
typedef std::vector< value_type > | container_type |
Public Member Functions | |
statement (container_type const &custom_array) | |
template<typename LHS , typename OP , typename RHS > | |
statement (LHS &lhs, OP const &, RHS const &rhs) | |
Generate the runtime statement from an expression template. | |
container_type const & | array () const |
size_type | root () const |
The main class for representing a statement such as x = inner_prod(y,z); at runtime.
This is the equivalent to an expression template tree, but entirely built at runtime in order to perform really cool stuff such as kernel fusion.
typedef std::vector<value_type> container_type |
typedef viennacl::vcl_size_t size_type |
typedef statement_node value_type |
statement | ( | container_type const & | custom_array | ) | [inline] |
statement | ( | LHS & | lhs, |
OP const & | , | ||
RHS const & | rhs | ||
) | [inline] |
Generate the runtime statement from an expression template.
Constructing a runtime statement from expression templates makes perfect sense, because this way only a single allocation is needed when creating the statement.
container_type const& array | ( | ) | const [inline] |