ViennaCL - The Vienna Computing Library  1.7.0
Free open-source GPU-accelerated linear algebra and solver library.
opencl.hpp File Reference

Implementations for the OpenCL backend functionality. More...

#include <vector>
#include "viennacl/ocl/handle.hpp"
#include "viennacl/ocl/backend.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::backend
 Namespace providing routines for handling the different memory domains.
 
 viennacl::backend::opencl
 Provides implementations for handling OpenCL memory buffers.
 

Functions

cl_mem viennacl::backend::opencl::memory_create (viennacl::ocl::context const &ctx, vcl_size_t size_in_bytes, const void *host_ptr=NULL)
 Creates an array of the specified size in the current OpenCL context. If the second argument is provided, the buffer is initialized with data from that pointer. More...
 
void viennacl::backend::opencl::memory_copy (viennacl::ocl::handle< cl_mem > const &src_buffer, viennacl::ocl::handle< cl_mem > &dst_buffer, vcl_size_t src_offset, vcl_size_t dst_offset, vcl_size_t bytes_to_copy)
 Copies 'bytes_to_copy' bytes from address 'src_buffer + src_offset' in the OpenCL context to memory starting at address 'dst_buffer + dst_offset' in the same OpenCL context. More...
 
void viennacl::backend::opencl::memory_write (viennacl::ocl::handle< cl_mem > &dst_buffer, vcl_size_t dst_offset, vcl_size_t bytes_to_copy, const void *ptr, bool async=false)
 Writes data from main RAM identified by 'ptr' to the OpenCL buffer identified by 'dst_buffer'. More...
 
void viennacl::backend::opencl::memory_read (viennacl::ocl::handle< cl_mem > const &src_buffer, vcl_size_t src_offset, vcl_size_t bytes_to_copy, void *ptr, bool async=false)
 Reads data from an OpenCL buffer back to main RAM. More...
 

Detailed Description

Implementations for the OpenCL backend functionality.

Definition in file opencl.hpp.