ViennaCL - The Vienna Computing Library  1.5.2
Namespaces | Macros | Functions
common.hpp File Reference

Common routines for CUDA execution. More...

#include "viennacl/traits/handle.hpp"

Go to the source code of this file.

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::linalg
 Provides all linear algebra operations which are not covered by operator overloads.
 
 viennacl::linalg::cuda
 Holds all CUDA compute kernels used by ViennaCL.
 
 viennacl::linalg::cuda::detail
 Helper functions for the CUDA linear algebra backend.
 

Macros

#define VIENNACL_CUDA_LAST_ERROR_CHECK(message)   detail::cuda_last_error_check (message, __FILE__, __LINE__)
 

Functions

unsigned int make_options (vcl_size_t length, bool reciprocal, bool flip_sign)
 
void cuda_last_error_check (const char *message, const char *file, const int line)
 
template<typename T , typename U >
T * cuda_arg (vector_base< U > &obj)
 
template<typename T , typename U >
const T * cuda_arg (vector_base< U > const &obj)
 
template<typename NumericT , typename F >
NumericT * cuda_arg (matrix_base< NumericT, F > &obj)
 
template<typename NumericT , typename F >
const NumericT * cuda_arg (matrix_base< NumericT, F > const &obj)
 
template<typename ScalarType , typename T >
viennacl::enable_if
< viennacl::is_scalar< T >
::value, ScalarType * >::type 
cuda_arg (T &obj)
 
template<typename ScalarType , typename T >
viennacl::enable_if
< viennacl::is_scalar< T >
::value, const ScalarType * >
::type 
cuda_arg (T const &obj)
 
template<typename ScalarType >
ScalarType * cuda_arg (viennacl::backend::mem_handle::cuda_handle_type &h)
 
template<typename ScalarType >
ScalarType const * cuda_arg (viennacl::backend::mem_handle::cuda_handle_type const &h)
 
unsigned int cuda_arg (unsigned int val)
 
template<typename T >
char cuda_arg (char val)
 
template<typename T >
unsigned char cuda_arg (unsigned char val)
 
template<typename T >
short cuda_arg (short val)
 
template<typename T >
unsigned short cuda_arg (unsigned short val)
 
template<typename T >
int cuda_arg (int val)
 
template<typename T >
long cuda_arg (long val)
 
template<typename T >
unsigned long cuda_arg (unsigned long val)
 
template<typename T >
float cuda_arg (float val)
 
template<typename T >
double cuda_arg (double val)
 
template<typename T , typename U >
viennacl::backend::mem_handle::cuda_handle_typearg_reference (viennacl::scalar< T > &s, U)
 
template<typename T , typename U >
viennacl::backend::mem_handle::cuda_handle_type
const & 
arg_reference (viennacl::scalar< T > const &s, U)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, char const & >::type 
arg_reference (T, char const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, unsigned char const & >
::type 
arg_reference (T, unsigned char const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, short const & >::type 
arg_reference (T, short const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, unsigned short const & >
::type 
arg_reference (T, unsigned short const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, int const & >::type 
arg_reference (T, int const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, unsigned int const & >
::type 
arg_reference (T, unsigned int const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, long const & >::type 
arg_reference (T, long const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, unsigned long const & >
::type 
arg_reference (T, unsigned long const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, float const & >::type 
arg_reference (T, float const &val)
 
template<typename T >
viennacl::enable_if
< viennacl::is_cpu_scalar< T >
::value, double const & >
::type 
arg_reference (T, double const &val)
 

Detailed Description

Common routines for CUDA execution.

Macro Definition Documentation

#define VIENNACL_CUDA_LAST_ERROR_CHECK (   message)    detail::cuda_last_error_check (message, __FILE__, __LINE__)