CUTLASS: cutlass::AlignedBuffer< T, N, Align > Struct Template Reference

| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Attributes | List of all members
cutlass::AlignedBuffer< T, N, Align > Struct Template Reference

Modifies semantics of cutlass::Array<> to provide guaranteed alignment.

`#include <aligned_buffer.h>`

## Public Types
using | Storage = uint8_t
| Internal storage type. More...
typedef T | value_type
typedef size_t | size_type
typedef ptrdiff_t | difference_type
typedef value_type * | pointer
typedef value_type const * | const_pointer
using | Array = Array< T, N >
using | reference = typename Array::reference
using | const_reference = typename Array::const_reference

## Public Member Functions
CUTLASS_HOST_DEVICE pointer | data ()
CUTLASS_HOST_DEVICE const_pointer | data () const
CUTLASS_HOST_DEVICE Storage * | raw_data ()
CUTLASS_HOST_DEVICE Storage const * | raw_data () const
CUTLASS_HOST_DEVICE constexpr bool | empty () const
CUTLASS_HOST_DEVICE constexpr size_type | size () const
CUTLASS_HOST_DEVICE constexpr size_type | max_size () const

## Static Public Attributes
static int const | kCount = N
| Number of logical elements held in buffer. More...
static int const | kAlign = Align
| Alignment requirement in bytes. More...
static int const | kBytes
| Number of storage elements. More...

## Member Typedef Documentation

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::Array = Array<T, N>

template<typename T, int N, int Align = 16>

typedef value_type const* cutlass::AlignedBuffer< T, N, Align >::const_pointer

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::const_reference = typename Array::const_reference

template<typename T, int N, int Align = 16>

typedef ptrdiff_t cutlass::AlignedBuffer< T, N, Align >::difference_type

template<typename T, int N, int Align = 16>

typedef value_type* cutlass::AlignedBuffer< T, N, Align >::pointer

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::reference = typename Array::reference

template<typename T, int N, int Align = 16>

typedef size_t cutlass::AlignedBuffer< T, N, Align >::size_type

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::Storage = uint8_t

template<typename T, int N, int Align = 16>

typedef T cutlass::AlignedBuffer< T, N, Align >::value_type

## Member Function Documentation

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE pointer cutlass::AlignedBuffer< T, N, Align >::data | ( |  | ) |
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE const_pointer cutlass::AlignedBuffer< T, N, Align >::data | ( |  | ) | const
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr bool cutlass::AlignedBuffer< T, N, Align >::empty | ( |  | ) | const
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr size_type cutlass::AlignedBuffer< T, N, Align >::max_size | ( |  | ) | const
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE Storage* cutlass::AlignedBuffer< T, N, Align >::raw_data | ( |  | ) |
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE Storage const* cutlass::AlignedBuffer< T, N, Align >::raw_data | ( |  | ) | const
| inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr size_type cutlass::AlignedBuffer< T, N, Align >::size | ( |  | ) | const
| inline

## Member Data Documentation

template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kAlign = Align
| static

template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kBytes
| static

Initial value:
=
(sizeof_bits<T>::value * N + 7) / 8
template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kCount = N
| static

The documentation for this struct was generated from the following file:

- aligned_buffer.h