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
matrix_product_template.hpp File Reference

Go to the source code of this file.

Classes

struct  viennacl::device_specific::matrix_product_parameters
 
class  viennacl::device_specific::matrix_product_template
 

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::device_specific
 Provides an OpenCL kernel generator.
 

Macros

#define VIENNACL_MUL_STRIDE1   string(fallback?"*#stride1":"")
 
#define VIENNACL_HANDLE_BOUNDS(in_bounds, to_load)   (!fallback?string(to_load):string( string(in_bounds) + "?" + string(to_load) + ":0"))
 
#define VIENNACL_VSTORE(value, offset, ptr)   vstore(p.simd_width, value, offset, ptr)
 

Detailed Description

Kernel template for the matrix product operation

Definition in file matrix_product_template.hpp.

Macro Definition Documentation

#define VIENNACL_HANDLE_BOUNDS (   in_bounds,
  to_load 
)    (!fallback?string(to_load):string( string(in_bounds) + "?" + string(to_load) + ":0"))
#define VIENNACL_MUL_STRIDE1   string(fallback?"*#stride1":"")
#define VIENNACL_VSTORE (   value,
  offset,
  ptr 
)    vstore(p.simd_width, value, offset, ptr)