f6_pk_t< BitType, pk_size > Struct Template Reference

f6_pk_t&lt; BitType, pk_size &gt; Struct Template Reference#

Composable Kernel: ck::f6_pk_t< BitType, pk_size > Struct Template Reference

#include <data_type.hpp>

Public Types

using element_type = uint32_t
 
using storage_type = element_type
 
using type = f6_pk_t< BitType, packed_size >
 

Public Member Functions

__host__ constexpr __device__ f6_pk_t ()
 
__host__ constexpr __device__ f6_pk_t (const storage_type &init)
 
template<typename T , typename = enable_if_t<scalar_type<T>::vector_size == packed_size>>
__host__ __device__ f6_pk_t (const T &v)
 
__host__ __device__ f6_pk_t (const int8_t v)
 
template<typename T >
__host__ __device__ void pack (const T x, const index_t i)
 
__host__ __device__ BitType unpack (const index_t i) const
 

Static Public Member Functions

__host__ static __device__ BitType unpack (const type &pk, const index_t i)
 

Public Attributes

storage_type data_ {storage_type(0)}
 

Static Public Attributes

static constexpr index_t packed_size = pk_size
 
static constexpr index_t num_bits_elem = 6
 
static constexpr index_t num_bits_vec_elem
 
static constexpr index_t vector_size
 

Friends

__host__ __device__ friend bool operator== (const f6_pk_t &lhs, const f6_pk_t &rhs)
 
__host__ __device__ friend bool operator!= (const f6_pk_t &lhs, const f6_pk_t &rhs)
 

Member Typedef Documentation

◆ element_type

template<typename BitType , index_t pk_size>
using ck::f6_pk_t< BitType, pk_size >::element_type = uint32_t

◆ storage_type

template<typename BitType , index_t pk_size>
using ck::f6_pk_t< BitType, pk_size >::storage_type = element_type

◆ type

template<typename BitType , index_t pk_size>
using ck::f6_pk_t< BitType, pk_size >::type = f6_pk_t<BitType, packed_size>

Constructor & Destructor Documentation

◆ f6_pk_t() [1/4]

template<typename BitType , index_t pk_size>
__host__ constexpr __device__ ck::f6_pk_t< BitType, pk_size >::f6_pk_t ( )
inlineconstexpr

◆ f6_pk_t() [2/4]

template<typename BitType , index_t pk_size>
__host__ constexpr __device__ ck::f6_pk_t< BitType, pk_size >::f6_pk_t ( const storage_type init)
inlineconstexpr

◆ f6_pk_t() [3/4]

template<typename BitType , index_t pk_size>
template<typename T , typename = enable_if_t<scalar_type<T>::vector_size == packed_size>>
__host__ __device__ ck::f6_pk_t< BitType, pk_size >::f6_pk_t ( const T &  v)
inline

◆ f6_pk_t() [4/4]

template<typename BitType , index_t pk_size>
__host__ __device__ ck::f6_pk_t< BitType, pk_size >::f6_pk_t ( const int8_t  v)
inline

Member Function Documentation

◆ pack()

template<typename BitType , index_t pk_size>
template<typename T >
__host__ __device__ void ck::f6_pk_t< BitType, pk_size >::pack ( const T  x,
const index_t  i 
)
inline

◆ unpack() [1/2]

template<typename BitType , index_t pk_size>
__host__ __device__ BitType ck::f6_pk_t< BitType, pk_size >::unpack ( const index_t  i) const
inline

◆ unpack() [2/2]

template<typename BitType , index_t pk_size>
__host__ static __device__ BitType ck::f6_pk_t< BitType, pk_size >::unpack ( const type pk,
const index_t  i 
)
inlinestatic

Friends And Related Function Documentation

◆ operator!=

template<typename BitType , index_t pk_size>
__host__ __device__ friend bool operator!= ( const f6_pk_t< BitType, pk_size > &  lhs,
const f6_pk_t< BitType, pk_size > &  rhs 
)
friend

◆ operator==

template<typename BitType , index_t pk_size>
__host__ __device__ friend bool operator== ( const f6_pk_t< BitType, pk_size > &  lhs,
const f6_pk_t< BitType, pk_size > &  rhs 
)
friend

Member Data Documentation

◆ data_

template<typename BitType , index_t pk_size>
storage_type ck::f6_pk_t< BitType, pk_size >::data_ {storage_type(0)}

◆ num_bits_elem

template<typename BitType , index_t pk_size>
constexpr index_t ck::f6_pk_t< BitType, pk_size >::num_bits_elem = 6
staticconstexpr

◆ num_bits_vec_elem

template<typename BitType , index_t pk_size>
constexpr index_t ck::f6_pk_t< BitType, pk_size >::num_bits_vec_elem
staticconstexpr
Initial value:
=
sizeof(element_type) * 8
uint32_t element_type
Definition: data_type.hpp:79

◆ packed_size

template<typename BitType , index_t pk_size>
constexpr index_t ck::f6_pk_t< BitType, pk_size >::packed_size = pk_size
staticconstexpr

◆ vector_size

template<typename BitType , index_t pk_size>
constexpr index_t ck::f6_pk_t< BitType, pk_size >::vector_size
staticconstexpr
Initial value:
=
static constexpr index_t packed_size
Definition: data_type.hpp:81
static constexpr index_t num_bits_elem
Definition: data_type.hpp:82
static constexpr index_t num_bits_vec_elem
Definition: data_type.hpp:84

The documentation for this struct was generated from the following file:
  • /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/data_type.hpp