ViennaCL - The Vienna Computing Library: viennacl::device_specific::utils Namespace Reference

ViennaCL - The Vienna Computing Library 1.7.1 Free open-source GPU-accelerated linear algebra and solver library. |

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Functions
viennacl::device_specific::utils Namespace Reference

Contains various helper routines for kernel generation. More...

## Classes
struct | first_letter_of_type
struct | first_letter_of_type< char >
struct | first_letter_of_type< double >
struct | first_letter_of_type< float >
struct | first_letter_of_type< int >
struct | first_letter_of_type< long >
struct | first_letter_of_type< short >
struct | first_letter_of_type< unsigned char >
struct | first_letter_of_type< unsigned int >
struct | first_letter_of_type< unsigned long >
struct | first_letter_of_type< unsigned short >
struct | handle_fun
struct | internal_size1_fun
struct | internal_size2_fun
struct | internal_size_fun
struct | is_same_type
struct | is_same_type< T, T >
class | kernel_generation_stream
struct | leading_start
struct | leading_stride
struct | row_major_fun
struct | scalartype_size_fun
struct | size1_fun
struct | size2_fun
struct | size_fun
struct | start1_fun
struct | start2_fun
struct | stride1_fun
struct | stride2_fun
struct | stride_fun
struct | type_to_string
struct | type_to_string< char >
struct | type_to_string< double >
struct | type_to_string< float >
struct | type_to_string< int >
struct | type_to_string< long >
struct | type_to_string< short >
struct | type_to_string< unsigned char >
struct | type_to_string< unsigned int >
struct | type_to_string< unsigned long >
struct | type_to_string< unsigned short >

## Functions
std::string | opencl_source_to_cuda_source (std::string const &opencl_src)
bool | is_reduction (scheduler::statement_node const &node)
bool | is_index_reduction (scheduler::op_element const &op)
bool | node_leaf (scheduler::op_element const &op)
bool | elementwise_operator (scheduler::op_element const &op)
bool | elementwise_function (scheduler::op_element const &op)
scheduler::lhs_rhs_element & | lhs_rhs_element (scheduler::statement const &st, vcl_size_t idx, leaf_t leaf)
unsigned int | size_of (scheduler::statement_node_numeric_type type)
std::string | append_width (std::string const &str, unsigned int width)

## Detailed Description

Contains various helper routines for kernel generation.

## Function Documentation

std::string viennacl::device_specific::utils::append_width | ( | std::string const & | str,
|  | unsigned int | width
| ) |  |
| inline

Definition at line 558 of file utils.hpp.

bool viennacl::device_specific::utils::elementwise_function | ( | scheduler::op_element const & | op | ) |
| inline

Definition at line 476 of file utils.hpp.

bool viennacl::device_specific::utils::elementwise_operator | ( | scheduler::op_element const & | op | ) |
| inline

Definition at line 462 of file utils.hpp.

bool viennacl::device_specific::utils::is_index_reduction | ( | scheduler::op_element const & | op | ) |
| inline

Definition at line 370 of file utils.hpp.

bool viennacl::device_specific::utils::is_reduction | ( | scheduler::statement_node const & | node | ) |
| inline

Definition at line 361 of file utils.hpp.

scheduler::lhs_rhs_element& viennacl::device_specific::utils::lhs_rhs_element | ( | scheduler::statement const & | st,
|  | vcl_size_t | idx,
|  | leaf_t | leaf
| ) |  |
| inline

Definition at line 525 of file utils.hpp.

bool viennacl::device_specific::utils::node_leaf | ( | scheduler::op_element const & | op | ) |
| inline

Definition at line 443 of file utils.hpp.

std::string viennacl::device_specific::utils::opencl_source_to_cuda_source | ( | std::string const & | opencl_src | ) |
| inline

Definition at line 50 of file utils.hpp.

unsigned int viennacl::device_specific::utils::size_of | ( | scheduler::statement_node_numeric_type | type | ) |
| inline

Definition at line 534 of file utils.hpp.