ViennaCL - The Vienna Computing Library  1.5.2
Data Structures | Namespaces | Functions
viennacl/generator/generate.hpp File Reference

the user interface for the code generator More...

#include <cstring>
#include <vector>
#include <typeinfo>
#include "viennacl/scheduler/forwards.h"
#include "viennacl/generator/forwards.h"
#include "viennacl/generator/profiles.hpp"
#include "viennacl/generator/statement_representation_functor.hpp"
#include "viennacl/generator/set_arguments_functor.hpp"
#include "viennacl/generator/map_functor.hpp"
#include "viennacl/tools/tools.hpp"

Go to the source code of this file.

Data Structures

class  code_generator
 Class for handling code generation. More...

Namespaces

namespace  viennacl
 

Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.


namespace  viennacl::generator
 

Provides an OpenCL kernel generator.


Functions

viennacl::ocl::programget_configured_program (viennacl::generator::code_generator const &generator, std::list< viennacl::ocl::kernel * > &kernels, bool force_recompilation=false)
 Creates the program associated with a generator object and fills the kernels. Checks the context for the program and possibly (re)compile it.
void enqueue (viennacl::generator::code_generator const &generator, bool force_recompilation=false)
 Set the arguments and enqueue a generator object.
std::string get_opencl_program_string (viennacl::scheduler::statement const &s)
 Convenience function to get the OpenCL program string for a single statement.
std::string get_cuda_device_code (viennacl::scheduler::statement const &s)
 Convenience function to get the CUDA device code for a single statement.
void generate_enqueue_statement (viennacl::scheduler::statement const &s, scheduler::statement_node const &root_node)
 Generate and enqueue a statement plus root_node into the current queue.
void generate_enqueue_statement (viennacl::scheduler::statement const &s)
 Generate and enqueue a statement into the current queue, assumes the root_node is the first node of the statement.

Detailed Description

the user interface for the code generator