MUDA
Loading...
Searching...
No Matches
muda::DeviceBuffer< T > Class Template Reference

A std::vector like wrapper of cuda device memory, allows user to: More...

#include <device_buffer.h>

Public Types

using value_type = T
 

Public Member Functions

 DeviceBuffer (size_t n)
 
 DeviceBuffer (const DeviceBuffer< T > &other)
 
 DeviceBuffer (DeviceBuffer &&other) MUDA_NOEXCEPT
 
DeviceBufferoperator= (const DeviceBuffer< T > &other)
 
DeviceBufferoperator= (DeviceBuffer< T > &&other)
 
 DeviceBuffer (CBufferView< T > other)
 
 DeviceBuffer (const std::vector< T > &host)
 
DeviceBufferoperator= (CBufferView< T > other)
 
DeviceBufferoperator= (const std::vector< T > &other)
 
void copy_to (std::vector< T > &host) const
 
void copy_from (const std::vector< T > &host)
 
void resize (size_t new_size)
 
void resize (size_t new_size, const T &value)
 
void reserve (size_t new_capacity)
 
void clear ()
 
void shrink_to_fit ()
 
void fill (const T &v)
 
Dense1D< T > viewer () MUDA_NOEXCEPT
 
CDense1D< T > cviewer () const MUDA_NOEXCEPT
 
BufferView< T > view (size_t offset, size_t size=~0) MUDA_NOEXCEPT
 
BufferView< T > view () MUDA_NOEXCEPT
 
CBufferView< T > view (size_t offset, size_t size=~0) const MUDA_NOEXCEPT
 
CBufferView< T > view () const MUDA_NOEXCEPT
 
 operator BufferView< T > () MUDA_NOEXCEPT
 
 operator CBufferView< T > () const MUDA_NOEXCEPT
 
auto size () const MUDA_NOEXCEPT
 
auto capacity () const MUDA_NOEXCEPT
 
T * data () MUDA_NOEXCEPT
 
const T * data () const MUDA_NOEXCEPT
 

Friends

class BufferLaunch
 
class NDReshaper
 

Detailed Description

template<typename T>
class muda::DeviceBuffer< T >

A std::vector like wrapper of cuda device memory, allows user to:

  • resize
  • reserve
  • clear
  • fill
  • shrink_to_fit
  • make view or subview from it
  • make a safe viewer from it
See also

The documentation for this class was generated from the following files: