Provides an OpenCL kernel generator. More...
Namespaces | |
autotune | |
Provides the implementation for tuning the kernels for a particular device. | |
builtin_database | |
detail | |
Contains implementation details of the kernel generator. | |
profiles | |
Namespace holding the various device-specific parameters for generating the best kernels. | |
tree_parsing | |
utils | |
Contains various helper routines for kernel generation. | |
Typedefs | |
typedef std::pair< vcl_size_t, leaf_t > | mapping_key |
typedef std::map< mapping_key, tools::shared_ptr< mapped_object > > | mapping_type |
typedef cl_uint | vendor_id_type |
typedef cl_device_type | device_type |
typedef std::string | device_name_type |
Functions | |
void | execute (template_base const &T, statements_container const &statements, viennacl::ocl::context &ctx=viennacl::ocl::current_context(), bool force_compilation=false) |
bool | is_scalar_reduction (scheduler::statement_node const &node) |
bool | is_vector_reduction (scheduler::statement_node const &node) |
scheduler::statement_node const & | lhs_most (scheduler::statement::container_type const &array, vcl_size_t root) |
const char * | expression_type_to_string (expression_type type) |
template<typename KeyT , typename ValueT > | |
ValueT const & | at (std::map< KeyT, ValueT > const &map, KeyT const &key) |
Emulation of C++11's .at() member for std::map<>, const-version. More... | |
template<typename KeyT , typename ValueT > | |
ValueT & | at (std::map< KeyT, ValueT > &map, KeyT const &key) |
Emulation of C++11's .at() member for std::map<>, non-const version. More... | |
tools::shared_ptr< symbolic_binder > | make_binder (binding_policy_t policy) |
void | compute_reduction (utils::kernel_generation_stream &os, std::string acc, std::string cur, scheduler::op_element const &op) |
void | compute_index_reduction (utils::kernel_generation_stream &os, std::string acc, std::string cur, std::string const &acc_value, std::string const &cur_value, scheduler::op_element const &op) |
void | process_all (std::string const &type_key, std::string const &str, utils::kernel_generation_stream &stream, std::vector< mapping_type > const &mappings) |
void | process_all_at (std::string const &type_key, std::string const &str, utils::kernel_generation_stream &stream, std::vector< mapping_type > const &mappings, vcl_size_t root_idx, leaf_t leaf) |
std::string | neutral_element (scheduler::op_element const &op) |
void | enqueue_custom_op (viennacl::device_specific::custom_operation &op, viennacl::ocl::command_queue const &queue) |
Provides an OpenCL kernel generator.
typedef std::string viennacl::device_specific::device_name_type |
Definition at line 214 of file forwards.h.
typedef cl_device_type viennacl::device_specific::device_type |
Definition at line 213 of file forwards.h.
typedef std::pair<vcl_size_t, leaf_t> viennacl::device_specific::mapping_key |
Definition at line 188 of file forwards.h.
typedef std::map<mapping_key, tools::shared_ptr<mapped_object> > viennacl::device_specific::mapping_type |
Definition at line 191 of file forwards.h.
typedef cl_uint viennacl::device_specific::vendor_id_type |
Definition at line 212 of file forwards.h.
Enumerator | |
---|---|
BIND_ALL_UNIQUE | |
BIND_TO_HANDLE |
Definition at line 246 of file forwards.h.
Definition at line 95 of file forwards.h.
Enumerator | |
---|---|
FETCH_FROM_LOCAL | |
FETCH_FROM_GLOBAL_STRIDED | |
FETCH_FROM_GLOBAL_CONTIGUOUS |
Definition at line 47 of file template_base.hpp.
Enumerator | |
---|---|
LHS_NODE_TYPE | |
PARENT_NODE_TYPE | |
RHS_NODE_TYPE |
Definition at line 180 of file forwards.h.
ValueT const& viennacl::device_specific::at | ( | std::map< KeyT, ValueT > const & | map, |
KeyT const & | key | ||
) |
Emulation of C++11's .at() member for std::map<>, const-version.
Definition at line 142 of file forwards.h.
ValueT& viennacl::device_specific::at | ( | std::map< KeyT, ValueT > & | map, |
KeyT const & | key | ||
) |
Emulation of C++11's .at() member for std::map<>, non-const version.
Definition at line 153 of file forwards.h.
|
inline |
|
inline |
void viennacl::device_specific::enqueue_custom_op | ( | viennacl::device_specific::custom_operation & | op, |
viennacl::ocl::command_queue const & | queue | ||
) |
|
inline |
Definition at line 44 of file execute.hpp.
|
inline |
Definition at line 110 of file forwards.h.
|
inline |
Definition at line 75 of file forwards.h.
|
inline |
Definition at line 80 of file forwards.h.
|
inline |
Definition at line 87 of file forwards.h.
|
inline |
Definition at line 251 of file forwards.h.
|
inline |
|
inline |
|
inline |