|
void | execute_composite (statement const &s, statement_node const &root_node) |
| Deals with x = RHS where RHS is an expression and x is either a scalar, a vector, or a matrix. More...
|
|
void | execute_single (statement const &, statement_node const &root_node) |
| Deals with x = y for a scalar/vector/matrix x, y. More...
|
|
void | execute_impl (statement const &s, statement_node const &root_node) |
|
void | execute_axbx (statement const &s, statement_node const &root_node) |
| Deals with x = (y) +- (z) where y and z are either data objects or expressions. More...
|
|
void | element_op (lhs_rhs_element result, lhs_rhs_element const &x, operation_node_type op_type) |
|
void | element_op (lhs_rhs_element result, lhs_rhs_element const &x, lhs_rhs_element const &y, operation_node_type op_type) |
|
template<typename ScalarType1 > |
void | ax (lhs_rhs_element &x1, lhs_rhs_element const &x2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha) |
| Wrapper for viennacl::linalg::av(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | axbx (lhs_rhs_element &x1, lhs_rhs_element const &x2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &x3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | axbx_x (lhs_rhs_element &x1, lhs_rhs_element const &x2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &x3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv_v(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 > |
void | am (lhs_rhs_element &mat1, lhs_rhs_element const &mat2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha) |
| Wrapper for viennacl::linalg::av(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | ambm (lhs_rhs_element &mat1, lhs_rhs_element const &mat2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &mat3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | ambm_m (lhs_rhs_element &mat1, lhs_rhs_element const &mat2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &mat3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv_v(), taking care of the argument unwrapping. More...
|
|
bool | matrix_prod_temporary_required (statement const &s, lhs_rhs_element const &elem) |
|
void | matrix_matrix_prod (statement const &s, lhs_rhs_element result, lhs_rhs_element const &A, lhs_rhs_element const &B, double alpha, double beta) |
|
void | matrix_vector_prod (statement const &s, lhs_rhs_element result, lhs_rhs_element const &A, lhs_rhs_element const &x) |
|
template<typename ScalarType1 > |
void | as (lhs_rhs_element &s1, lhs_rhs_element const &s2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha) |
| Wrapper for viennacl::linalg::av(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | asbs (lhs_rhs_element &s1, lhs_rhs_element const &s2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &s3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | asbs_s (lhs_rhs_element &s1, lhs_rhs_element const &s2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &s3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv_v(), taking care of the argument unwrapping. More...
|
|
lhs_rhs_element const & | extract_representative_vector (statement const &s, lhs_rhs_element const &element) |
|
float | convert_to_float (float f) |
|
float | convert_to_float (double d) |
|
float | convert_to_float (lhs_rhs_element const &el) |
|
double | convert_to_double (float d) |
|
double | convert_to_double (double d) |
|
double | convert_to_double (lhs_rhs_element const &el) |
|
void | new_element (lhs_rhs_element &new_elem, lhs_rhs_element const &old_element) |
|
void | delete_element (lhs_rhs_element &elem) |
|
template<typename ScalarType1 > |
void | av (lhs_rhs_element &vec1, lhs_rhs_element const &vec2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha) |
| Wrapper for viennacl::linalg::av(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | avbv (lhs_rhs_element &vec1, lhs_rhs_element const &vec2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &vec3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv(), taking care of the argument unwrapping. More...
|
|
template<typename ScalarType1 , typename ScalarType2 > |
void | avbv_v (lhs_rhs_element &vec1, lhs_rhs_element const &vec2, ScalarType1 const &alpha, vcl_size_t len_alpha, bool reciprocal_alpha, bool flip_sign_alpha, lhs_rhs_element const &vec3, ScalarType2 const &beta, vcl_size_t len_beta, bool reciprocal_beta, bool flip_sign_beta) |
| Wrapper for viennacl::linalg::avbv_v(), taking care of the argument unwrapping. More...
|
|
void | norm_impl (lhs_rhs_element const &x, lhs_rhs_element const &s, operation_node_type op_type) |
| Dispatcher interface for computing s = norm_1(x) More...
|
|
void | inner_prod_impl (lhs_rhs_element const &x, lhs_rhs_element const &y, lhs_rhs_element const &s) |
| Dispatcher interface for computing s = inner_prod(x, y) More...
|
|
std::string | to_string (viennacl::scheduler::op_element op_elem) |
| Helper routine for converting the operation enums to string. More...
|
|
std::string | to_string (viennacl::scheduler::lhs_rhs_element element) |
| Helper routine converting the enum and union values inside a statement node to a string. More...
|
|
void | print_node (std::ostream &os, viennacl::scheduler::statement const &s, vcl_size_t node_index, vcl_size_t indent=0) |
| Recursive worker routine for printing a whole statement. More...
|
|
Implementation details for the scheduler.