CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
|
Device allocation abstraction that tracks size and capacity.
#include <device_memory.h>
Classes | |
struct | deleter |
Delete functor for CUDA device memory. More... | |
Public Member Functions | |
allocation () | |
Constructor: allocates no memory. More... | |
allocation (size_t _capacity) | |
Constructor: allocates capacity elements on the current CUDA device. More... | |
allocation (allocation const &p) | |
Copy constructor. More... | |
~allocation () | |
Destructor. More... | |
T * | get () const |
Returns a pointer to the managed object. More... | |
T * | release () |
Releases the ownership of the managed object (without deleting) and resets capacity to zero. More... | |
void | reset () |
Deletes the managed object and resets capacity to zero. More... | |
void | reset (T *_ptr, size_t _capacity) |
Deletes managed object, if owned, and replaces its reference with a given pointer and capacity. More... | |
T * | operator-> () const |
Returns a pointer to the object owned by *this. More... | |
deleter & | get_deleter () |
Returns the deleter object which would be used for destruction of the managed object. More... | |
const deleter & | get_deleter () const |
Returns the deleter object which would be used for destruction of the managed object (const) More... | |
allocation & | operator= (allocation const &p) |
Copies a device-side memory allocation. More... | |
Public Attributes | |
size_t | capacity |
Number of elements of T allocated on the current CUDA device. More... | |
platform::unique_ptr< T, deleter > | smart_ptr |
Smart pointer. More... | |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
size_t cutlass::device_memory::allocation< T >::capacity |
platform::unique_ptr<T, deleter> cutlass::device_memory::allocation< T >::smart_ptr |