libgrape-lite
A C++ library for parallel graph processing
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
grape::cuda::SharedArray< T > Class Template Reference

Public Types

using device_t = thrust::device_vector< T >
 
using host_t = pinned_vector< T >
 

Public Member Functions

 SharedArray (size_t size)
 
void resize (size_t size)
 
void set (size_t idx, const T &t)
 
void set (size_t idx, const T &t, const Stream &stream)
 
void fill (const T &t)
 
void fill (const T &t, const Stream &stream)
 
thrust::device_vector< T >::reference get (size_t idx)
 
thrust::device_vector< T >::const_reference get (size_t idx) const
 
get (size_t idx, const Stream &stream) const
 
const host_t & get (const Stream &stream) const
 
host_t & get (const Stream &stream)
 
T * data ()
 
const T * data () const
 
T * data (size_t idx)
 
const T * data (size_t idx) const
 
void Assign (const SharedArray< T > &rhs)
 
void Assign (const SharedArray< T > &rhs, const Stream &stream)
 
void Swap (SharedArray< T > &rhs)
 

Private Attributes

device_t d_buffer_
 
host_t h_buffer_