|
ViennaCL - The Vienna Computing Library
1.5.1
|
Implementations for the CUDA backend functionality. More...
#include <iostream>#include <vector>#include <cassert>#include "viennacl/tools/shared_ptr.hpp"#include <cuda_runtime.h>Go to the source code of this file.
Data Structures | |
| struct | cuda_deleter< U > |
| Functor for deleting a CUDA handle. Used within the smart pointer class. 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::backend |
Namespace providing routines for handling the different memory domains. | |
| namespace | viennacl::backend::cuda |
Provides implementations for handling CUDA memory buffers. | |
| namespace | viennacl::backend::cuda::detail |
Holds implementation details for handling CUDA memory buffers. Not intended for direct use by library users. | |
Defines | |
| #define | VIENNACL_CUDA_ERROR_CHECK(err) detail::cuda_error_check (err, __FILE__, __LINE__) |
Typedefs | |
| typedef viennacl::tools::shared_ptr < char > | handle_type |
Functions | |
| void | cuda_error_check (cudaError error_code, const char *file, const int line) |
| handle_type | memory_create (vcl_size_t size_in_bytes, const void *host_ptr=NULL) |
| Creates an array of the specified size on the CUDA device. If the second argument is provided, the buffer is initialized with data from that pointer. | |
| void | memory_copy (handle_type const &src_buffer, handle_type &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' on the CUDA device to memory starting at address 'dst_buffer + dst_offset' on the same CUDA device. | |
| void | memory_write (handle_type &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 CUDA buffer identified by 'dst_buffer'. | |
| void | memory_read (handle_type const &src_buffer, vcl_size_t src_offset, vcl_size_t bytes_to_copy, void *ptr, bool async=false) |
| Reads data from a CUDA buffer back to main RAM. | |
Implementations for the CUDA backend functionality.
| #define VIENNACL_CUDA_ERROR_CHECK | ( | err | ) | detail::cuda_error_check (err, __FILE__, __LINE__) |
1.7.6.1