ViennaCL - The Vienna Computing Library  1.5.2
Data Structures | Namespaces | Functions
matrix_prod.hpp File Reference

Runtime generation of OpenCL kernels for dense matrix-matrix products. More...

#include "viennacl/tools/tools.hpp"
#include "viennacl/ocl/kernel.hpp"
#include "viennacl/ocl/platform.hpp"
#include "viennacl/ocl/utils.hpp"
#include "viennacl/linalg/opencl/kernels/matrix.hpp"

Go to the source code of this file.

Data Structures

struct  matrix_prod< NumericT, F_A, F_B, F_C >
 Main kernel class for the generation of matrix-matrix product kernels C = A * B. More...
 

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::opencl
 Holds all routines providing OpenCL linear algebra operations.
 
 viennacl::linalg::opencl::kernels
 Contains the OpenCL kernel generation functions for a predefined set of functionality.
 

Functions

template<typename StringType >
void generate_matrix_prod_blas3 (StringType &source, std::string const &numeric_string, bool row_major_A, bool row_major_B, bool row_major_C, bool transpose_A, bool transpose_B)
 
template<typename StringType >
void generate_matrix_prod16_blas3 (StringType &source, std::string const &numeric_string, bool row_major_A, bool row_major_B, bool row_major_C, bool transpose_A, bool transpose_B)
 

Detailed Description

Runtime generation of OpenCL kernels for dense matrix-matrix products.