dtype_vector.hpp File Reference

dtype_vector.hpp File Reference#

Composable Kernel: dtype_vector.hpp File Reference
dtype_vector.hpp File Reference

Go to the source code of this file.

Classes

struct  ck::vector_type_maker< T, N >
struct  ck::scalar_type< vector_type< T, N > >
struct  ck::vector_type_maker< T, N0 >
struct  ck::vector_type_maker< vector_type< T, N1 >, N0 >
struct  ck::nnvb_data_t_selector< T >
struct  ck::nnvb_data_t_selector< f8_ocp_t >
struct  ck::nnvb_data_t_selector< bf8_ocp_t >
struct  ck::nnvb_data_t_selector< f8_fnuz_t >
struct  ck::nnvb_data_t_selector< bf8_fnuz_t >
struct  ck::nnvb_data_t_selector< e8m0_bexp_t >
struct  ck::nnvb_data_t_selector< f6x16_pk_t >
struct  ck::nnvb_data_t_selector< f6x32_pk_t >
struct  ck::nnvb_data_t_selector< bf6x16_pk_t >
struct  ck::nnvb_data_t_selector< bf6x32_pk_t >
struct  ck::nnvb_data_t_selector< pk_i4_t >
struct  ck::nnvb_data_t_selector< f4x2_pk_t >
struct  ck::non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==1||sizeof(T)==2||sizeof(T)==4||sizeof(T)==8 > >
union  ck::non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==1||sizeof(T)==2||sizeof(T)==4||sizeof(T)==8 > >::alignas
struct  ck::non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==12||sizeof(T)==16||sizeof(T)==24||sizeof(T)==32 > >
union  ck::non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==12||sizeof(T)==16||sizeof(T)==24||sizeof(T)==32 > >::alignas
struct  ck::scalar_type< non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==1||sizeof(T)==2||sizeof(T)==4||sizeof(T)==8 > > >
struct  ck::scalar_type< non_native_vector_base< T, N, ck::enable_if_t< sizeof(T)==12||sizeof(T)==16||sizeof(T)==24||sizeof(T)==32 > > >

Namespaces

namespace  ck

Typedefs

template<typename T, index_t N>
using ck::vector_type_maker_t = typename vector_type_maker<T, N>::type
using ck::float2_t = typename vector_type<float, 2>::type
using ck::float4_t = typename vector_type<float, 4>::type
using ck::float8_t = typename vector_type<float, 8>::type
using ck::float16_t = typename vector_type<float, 16>::type
using ck::float32_t = typename vector_type<float, 32>::type
using ck::float64_t = typename vector_type<float, 64>::type
using ck::half2_t = typename vector_type<half_t, 2>::type
using ck::half4_t = typename vector_type<half_t, 4>::type
using ck::half8_t = typename vector_type<half_t, 8>::type
using ck::half16_t = typename vector_type<half_t, 16>::type
using ck::half32_t = typename vector_type<half_t, 32>::type
using ck::bhalf2_t = typename vector_type<bhalf_t, 2>::type
using ck::bhalf4_t = typename vector_type<bhalf_t, 4>::type
using ck::bhalf8_t = typename vector_type<bhalf_t, 8>::type
using ck::bhalf16_t = typename vector_type<bhalf_t, 16>::type
using ck::bhalf32_t = typename vector_type<bhalf_t, 32>::type
using ck::int32x2_t = typename vector_type<int32_t, 2>::type
using ck::int32x4_t = typename vector_type<int32_t, 4>::type
using ck::int32x6_t = typename vector_type<int32_t, 6>::type
using ck::int32x8_t = typename vector_type<int32_t, 8>::type
using ck::int32x16_t = typename vector_type<int32_t, 16>::type
using ck::int32x32_t = typename vector_type<int32_t, 32>::type
using ck::int32x64_t = typename vector_type<int32_t, 64>::type
using ck::int8x2_t = typename vector_type<int8_t, 2>::type
using ck::int8x4_t = typename vector_type<int8_t, 4>::type
using ck::int8x8_t = typename vector_type<int8_t, 8>::type
using ck::int8x16_t = typename vector_type<int8_t, 16>::type
using ck::int8x32_t = typename vector_type<int8_t, 32>::type
using ck::int8x64_t = typename vector_type<int8_t, 64>::type
using ck::f8x2_fnuz_t = typename vector_type<f8_fnuz_t, 2>::type
using ck::f8x4_fnuz_t = typename vector_type<f8_fnuz_t, 4>::type
using ck::f8x8_fnuz_t = typename vector_type<f8_fnuz_t, 8>::type
using ck::f8x16_fnuz_t = typename vector_type<f8_fnuz_t, 16>::type
using ck::f8x32_fnuz_t = typename vector_type<f8_fnuz_t, 32>::type
using ck::f8x64_fnuz_t = typename vector_type<f8_fnuz_t, 64>::type
using ck::bf8x2_fnuz_t = typename vector_type<bf8_fnuz_t, 2>::type
using ck::bf8x4_fnuz_t = typename vector_type<bf8_fnuz_t, 4>::type
using ck::bf8x8_fnuz_t = typename vector_type<bf8_fnuz_t, 8>::type
using ck::bf8x16_fnuz_t = typename vector_type<bf8_fnuz_t, 16>::type
using ck::bf8x32_fnuz_t = typename vector_type<bf8_fnuz_t, 32>::type
using ck::bf8x64_fnuz_t = typename vector_type<bf8_fnuz_t, 64>::type
using ck::f8x2_ocp_t = typename vector_type<f8_ocp_t, 2>::type
using ck::f8x4_ocp_t = typename vector_type<f8_ocp_t, 4>::type
using ck::f8x8_ocp_t = typename vector_type<f8_ocp_t, 8>::type
using ck::f8x16_ocp_t = typename vector_type<f8_ocp_t, 16>::type
using ck::f8x32_ocp_t = typename vector_type<f8_ocp_t, 32>::type
using ck::f8x64_ocp_t = typename vector_type<f8_ocp_t, 64>::type
using ck::bf8x2_ocp_t = typename vector_type<bf8_ocp_t, 2>::type
using ck::bf8x4_ocp_t = typename vector_type<bf8_ocp_t, 4>::type
using ck::bf8x8_ocp_t = typename vector_type<bf8_ocp_t, 8>::type
using ck::bf8x16_ocp_t = typename vector_type<bf8_ocp_t, 16>::type
using ck::bf8x32_ocp_t = typename vector_type<bf8_ocp_t, 32>::type
using ck::bf8x64_ocp_t = typename vector_type<bf8_ocp_t, 64>::type
using ck::uint8x2_t = typename vector_type<uint8_t, 2>::type
using ck::uint8x4_t = typename vector_type<uint8_t, 4>::type
using ck::uint8x8_t = typename vector_type<uint8_t, 8>::type
using ck::uint8x16_t = typename vector_type<uint8_t, 16>::type
using ck::uint8x32_t = typename vector_type<uint8_t, 32>::type
using ck::uint8x64_t = typename vector_type<uint8_t, 64>::type
using ck::f4x2_t = typename vector_type<f4x2_pk_t, 1>::type
using ck::f4x4_t = typename vector_type<f4x2_pk_t, 2>::type
using ck::f4x8_t = typename vector_type<f4x2_pk_t, 4>::type
using ck::f4x16_t = typename vector_type<f4x2_pk_t, 8>::type
using ck::f4x32_t = typename vector_type<f4x2_pk_t, 16>::type
using ck::f4x64_t = typename vector_type<f4x2_pk_t, 32>::type
using ck::f6x16_t = typename vector_type<f6x16_pk_t, 1>::type
using ck::f6x16x2_t = typename vector_type<f6x16_pk_t, 2>::type
using ck::f6x32_t = typename vector_type<f6x32_pk_t, 1>::type
using ck::bf6x16_t = typename vector_type<bf6x16_pk_t, 1>::type
using ck::bf6x16x2_t = typename vector_type<bf6x16_pk_t, 2>::type
using ck::bf6x32_t = typename vector_type<bf6x32_pk_t, 1>::type
using ck::e8m0x4_bexp_t = typename vector_type<e8m0_bexp_t, 4>::type
using ck::pk_i4x2_t = typename vector_type<pk_i4_t, 2>::type
using ck::pk_i4x4_t = typename vector_type<pk_i4_t, 4>::type
using ck::pk_i4x8_t = typename vector_type<pk_i4_t, 8>::type

Functions

template<typename T, index_t N>
__host__ __device__ constexpr auto ck::make_vector_type (Number< N >)