tensor_descriptor.hpp Source File#
tile/core/tensor/tensor_descriptor.hpp
Go to the documentation of this file.
CK_TILE_HOST_DEVICE constexpr auto calculate_element_space_size_impl(const Lengths &lengths, const Strides &strides, number< I > i, AccOld acc_old)
Definition tile/core/tensor/tensor_descriptor.hpp:239
Definition tile/core/algorithm/cluster_descriptor.hpp:13
CK_TILE_HOST_DEVICE constexpr auto make_naive_tensor_descriptor_packed(const tuple< Lengths... > &lengths, number< GuaranteedLastDimensionVectorLength >=number<-1 >{})
Definition tile/core/tensor/tensor_descriptor.hpp:371
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition type_traits.hpp:21
__host__ __device__ multiplies() -> multiplies< void, void >
FIXME: create macro to replace 'host device' and nothing more.
CK_TILE_HOST_DEVICE constexpr auto container_reduce(const Container &x, Reduce reduce, Init init, number< IBegin >=number< 0 >{}, number< IEnd >=number< Container::size()>{}, number< IStep >=number< 1 >{})
Definition tile/core/container/container_helper.hpp:198
constexpr bool is_constant_v
Definition tile/core/numeric/integral_constant.hpp:95
CK_TILE_HOST_DEVICE constexpr auto make_naive_tensor_descriptor_with_offset(const tuple< Lengths... > &lengths, const tuple< Strides... > &strides, const offset &os, number< GuaranteedLastDimensionVectorLength >=number<-1 >{}, number< GuaranteedLastDimensionVectorStride >=number<-1 >{})
Definition tile/core/tensor/tensor_descriptor.hpp:319
CK_TILE_HOST_DEVICE constexpr auto make_naive_tensor_descriptor(const tuple< Lengths... > &lengths, const tuple< Strides... > &strides, number< GuaranteedLastDimensionVectorLength >=number<-1 >{}, number< GuaranteedLastDimensionVectorStride >=number<-1 >{})
Definition tile/core/tensor/tensor_descriptor.hpp:274
CK_TILE_HOST_DEVICE constexpr auto transform_tensor_descriptor(const OldTensorDescriptor &old_tensor_desc, const NewTransforms &new_transforms, NewLowerDimensionOldTopIdss, NewUpperDimensionNewTopIdss)
Definition tile/core/tensor/tensor_descriptor.hpp:203
CK_TILE_HOST_DEVICE constexpr auto make_naive_tensor_descriptor_aligned(const tuple< Lengths... > &lengths, Align align)
Definition tile/core/tensor/tensor_descriptor.hpp:474
CK_TILE_HOST_DEVICE constexpr auto make_unmerge_transform(const UpLengths &up_lengths, bool_constant< Use24BitIntegerCalculation >=bool_constant< false >{})
Definition coordinate_transform.hpp:1622
CK_TILE_HOST_DEVICE constexpr auto transform_tensor_adaptor(const OldTensorAdaptor &old_tensor_adaptor, const NewTransforms &new_transforms, NewLowerDimensionOldTopIdss, NewUpperDimensionNewTopIdss)
Definition tile/core/tensor/tensor_adaptor.hpp:426
CK_TILE_HOST_DEVICE constexpr auto make_tensor_descriptor_from_adaptor(const Adaptor &adaptor, const ElementSpaceSize &element_space_size)
Definition tile/core/tensor/tensor_descriptor.hpp:183
CK_TILE_HOST_DEVICE constexpr auto to_array(const std::vector< X > &x)
Definition tile/core/container/array.hpp:286
CK_TILE_HOST_DEVICE constexpr auto generate_tuple(F &&f, number< N >)
Definition tile/core/container/tuple.hpp:429
array< index_t, N > multi_index
Definition tile/core/container/multi_index.hpp:17
CK_TILE_HOST_DEVICE constexpr auto integer_least_multiple(X x, Y y)
Definition tile/core/numeric/math.hpp:155
CK_TILE_HOST_DEVICE constexpr auto make_offset_transform(const LowLength &low_length, const OffsetLength &offset_length)
Definition coordinate_transform.hpp:1668
CK_TILE_HOST_DEVICE constexpr auto make_naive_tensor_descriptor_packed_with_offset(const tuple< Lengths... > &lengths, const Offset &offset, number< GuaranteedLastDimensionVectorLength >=number<-1 >{})
Definition tile/core/tensor/tensor_descriptor.hpp:425
CK_TILE_HOST_DEVICE constexpr auto make_tuple(Xs &&... xs)
Definition tile/core/container/tuple.hpp:360
CK_TILE_HOST_DEVICE constexpr auto make_embed_transform(const UpLengths &up_lengths, const Coefficients &coefficients)
Definition coordinate_transform.hpp:1594
typename std::conditional< kHasContent, type0, type1 >::type type
Definition tile/core/container/sequence.hpp:302
static constexpr value_type value
Definition tile/core/numeric/integral_constant.hpp:16
static constexpr bool value
Definition type_traits.hpp:77
Definition tile/core/numeric/math.hpp:98
Definition coordinate_transform.hpp:1392
Definition tile/core/container/sequence.hpp:236
Definition tile/core/container/sequence.hpp:49
static CK_TILE_HOST_DEVICE constexpr bool is_known_at_compile_time()
Definition tile/core/tensor/tensor_adaptor.hpp:260
CK_TILE_HOST_DEVICE constexpr auto get_top_dimension_lengths() const
Definition tile/core/tensor/tensor_adaptor.hpp:201
static CK_TILE_HOST_DEVICE constexpr auto get_upper_dimension_hidden_idss()
Definition tile/core/tensor/tensor_adaptor.hpp:41
static CK_TILE_HOST_DEVICE constexpr auto get_lower_dimension_hidden_idss()
Definition tile/core/tensor/tensor_adaptor.hpp:36
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_hidden_dimension()
Definition tile/core/tensor/tensor_adaptor.hpp:120
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_top_dimension()
Definition tile/core/tensor/tensor_adaptor.hpp:115
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_transform()
Definition tile/core/tensor/tensor_adaptor.hpp:29
CK_TILE_HOST_DEVICE constexpr auto calculate_bottom_index(const TopIdx &idx_top) const
Definition tile/core/tensor/tensor_adaptor.hpp:217
CK_TILE_HOST_DEVICE constexpr const auto & get_transforms() const
Definition tile/core/tensor/tensor_adaptor.hpp:34
CK_TILE_HOST_DEVICE constexpr auto get_top_dimension_length(number< IDimTop > idim_top) const
Definition tile/core/tensor/tensor_adaptor.hpp:186
static CK_TILE_HOST_DEVICE constexpr auto get_top_dimension_hidden_ids()
Definition tile/core/tensor/tensor_adaptor.hpp:51
CK_TILE_HOST_DEVICE constexpr tensor_adaptor()=default
Definition tile/core/tensor/tensor_descriptor.hpp:34
tensor_adaptor< Transforms, LowerDimensionHiddenIdss, UpperDimensionHiddenIdss, sequence< 0 >, TopDimensionHiddenIds > Base
Definition tile/core/tensor/tensor_descriptor.hpp:35
static CK_TILE_HOST_DEVICE constexpr bool is_known_at_compile_time()
Definition tile/core/tensor/tensor_descriptor.hpp:134
static CK_TILE_HOST_DEVICE constexpr auto get_lower_dimension_hidden_idss()
Definition tile/core/tensor/tensor_descriptor.hpp:113
CK_TILE_HOST_DEVICE constexpr auto get_element_space_size() const
Definition tile/core/tensor/tensor_descriptor.hpp:96
GuaranteedVectorSrides_ GuaranteedVectorStrides
Definition tile/core/tensor/tensor_descriptor.hpp:48
static CK_TILE_HOST_DEVICE constexpr auto get_top_dimension_safe_vector_length_strides()
Definition tile/core/tensor/tensor_descriptor.hpp:137
ElementSpaceSize element_space_size_
Definition tile/core/tensor/tensor_descriptor.hpp:145
CK_TILE_HOST_DEVICE constexpr auto get_length(number< IDim > idim) const
Definition tile/core/tensor/tensor_descriptor.hpp:86
CK_TILE_HOST_DEVICE constexpr const auto & get_transforms() const
Definition tile/core/tensor/tensor_descriptor.hpp:108
multi_index< ndim_top_ > TopIndex
Definition tile/core/tensor/tensor_descriptor.hpp:54
CK_TILE_HOST_DEVICE constexpr auto get_lengths() const
Definition tile/core/tensor/tensor_descriptor.hpp:91
CK_TILE_HOST_DEVICE constexpr tensor_descriptor()=default
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_dimension()
Definition tile/core/tensor/tensor_descriptor.hpp:80
GuaranteedVectorLengths_ GuaranteedVectorLengths
Definition tile/core/tensor/tensor_descriptor.hpp:47
CK_TILE_HOST_DEVICE constexpr index_t calculate_offset(const Idx &idx) const
Definition tile/core/tensor/tensor_descriptor.hpp:102
static constexpr index_t ndim_top_
Definition tile/core/tensor/tensor_descriptor.hpp:45
static CK_TILE_HOST_DEVICE constexpr auto get_top_dimension_hidden_ids()
Definition tile/core/tensor/tensor_descriptor.hpp:123
static CK_TILE_HOST_DEVICE constexpr bool is_static()
Definition tile/core/tensor/tensor_descriptor.hpp:128
static constexpr index_t ntransform_
Definition tile/core/tensor/tensor_descriptor.hpp:43
static constexpr index_t ndim_hidden_
Definition tile/core/tensor/tensor_descriptor.hpp:44
CK_TILE_HOST_DEVICE constexpr tensor_descriptor(const Base &adaptor, ElementSpaceSize element_space_size)
Definition tile/core/tensor/tensor_descriptor.hpp:74
ElementSpaceSize ElementSpaceSizeType
Definition tile/core/tensor/tensor_descriptor.hpp:41
static CK_TILE_HOST_DEVICE constexpr auto get_upper_dimension_hidden_idss()
Definition tile/core/tensor/tensor_descriptor.hpp:118
CK_TILE_HOST_DEVICE constexpr tensor_descriptor(const Transforms &transforms, ElementSpaceSize element_space_size)
Definition tile/core/tensor/tensor_descriptor.hpp:60
multi_index< ndim_hidden_ > HiddenIndex
Definition tile/core/tensor/tensor_descriptor.hpp:55
Definition tile/core/container/tuple.hpp:192
Definition tile/core/container/sequence.hpp:314
typename sequence_gen< NSize, F >::type type
Definition tile/core/container/sequence.hpp:320