unmerge< UpLengths, Use24BitIntegerCalculation > Struct Template Reference#
Public Types |
Public Member Functions |
Static Public Member Functions |
Public Attributes |
Static Public Attributes |
List of all members
ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation > Struct Template Reference
#include <coordinate_transform.hpp>
Inheritance diagram for ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >:
Public Types | |
| using | LowerIndex = multi_index<1> |
| using | UpperIndex = multi_index<NDimUp> |
| using | UpLengthsScan |
Public Member Functions | |
| CK_TILE_HOST_DEVICE constexpr | unmerge ()=default |
| CK_TILE_HOST_DEVICE constexpr | unmerge (const UpLengths &up_lengths) |
| CK_TILE_HOST_DEVICE constexpr const auto & | get_upper_lengths () const |
| template<typename LowIdx, typename UpIdx> | |
| CK_TILE_HOST_DEVICE constexpr void | calculate_lower_index (LowIdx &idx_low, const UpIdx &idx_up) const |
| template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx> | |
| CK_TILE_HOST_DEVICE void | update_lower_index (LowIdxDiff &idx_diff_low, const UpIdxDiff &idx_diff_up, LowIdx &idx_low, const UpIdx &) const |
Static Public Member Functions | |
| static CK_TILE_HOST_DEVICE constexpr auto | get_type_enum () |
| static CK_TILE_HOST_DEVICE constexpr bool | is_valid_upper_index_always_mapped_to_valid_lower_index () |
| template<typename UpIdx> | |
| static CK_TILE_HOST_DEVICE constexpr bool | is_valid_upper_index_mapped_to_valid_lower_index (const UpIdx &) |
| static CK_TILE_HOST_DEVICE constexpr bool | is_known_at_compile_time () |
| template<typename LowVectorLengths, typename LowVectorStrides> | |
| static CK_TILE_HOST_DEVICE constexpr auto | calculate_upper_dimension_safe_vector_length_strides (const LowVectorLengths &low_vector_lengths, const LowVectorStrides &low_vector_strides) |
| Static Public Member Functions inherited from ck_tile::base_transform< 1, UpLengths::size()> | |
| static CK_TILE_HOST_DEVICE constexpr auto | get_type_enum () |
| static CK_TILE_HOST_DEVICE constexpr index_t | get_num_of_lower_dimension () |
| static CK_TILE_HOST_DEVICE constexpr index_t | get_num_of_upper_dimension () |
| static CK_TILE_HOST_DEVICE constexpr auto | calculate_upper_dimension_safe_vector_length_strides (const LowVectorLengths &, const LowVectorStrides &) |
Public Attributes | |
| UpLengths | up_lengths_ |
| UpLengthsScan | up_lengths_scan_ |
Static Public Attributes | |
| static constexpr index_t | NDimUp = UpLengths::size() |
Member Typedef Documentation
◆ LowerIndex
template<typename UpLengths, bool Use24BitIntegerCalculation>
| using ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >::LowerIndex = multi_index<1> |
◆ UpLengthsScan
template<typename UpLengths, bool Use24BitIntegerCalculation>
| using ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >::UpLengthsScan |
Initial value:
CK_TILE_HOST_DEVICE constexpr auto container_reverse_exclusive_scan(const array< TData, NSize > &x, Reduce f, Init init)
Definition tile/core/container/container_helper.hpp:240
Definition tile/core/numeric/math.hpp:98
◆ UpperIndex
template<typename UpLengths, bool Use24BitIntegerCalculation>
| using ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >::UpperIndex = multi_index<NDimUp> |
Constructor & Destructor Documentation
◆ unmerge() [1/2]
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
constexprdefault |
◆ unmerge() [2/2]
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
inlineconstexpr |
Member Function Documentation
◆ calculate_lower_index()
template<typename UpLengths, bool Use24BitIntegerCalculation>
template<typename LowIdx, typename UpIdx>
|
inlineconstexpr |
◆ calculate_upper_dimension_safe_vector_length_strides()
template<typename UpLengths, bool Use24BitIntegerCalculation>
template<typename LowVectorLengths, typename LowVectorStrides>
|
inlinestaticconstexpr |
◆ get_type_enum()
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
inlinestaticconstexpr |
◆ get_upper_lengths()
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
inlineconstexpr |
◆ is_known_at_compile_time()
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
inlinestaticconstexpr |
◆ is_valid_upper_index_always_mapped_to_valid_lower_index()
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
inlinestaticconstexpr |
◆ is_valid_upper_index_mapped_to_valid_lower_index()
template<typename UpLengths, bool Use24BitIntegerCalculation>
template<typename UpIdx>
|
inlinestaticconstexpr |
◆ update_lower_index()
template<typename UpLengths, bool Use24BitIntegerCalculation>
template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx>
|
inline |
Member Data Documentation
◆ NDimUp
template<typename UpLengths, bool Use24BitIntegerCalculation>
|
staticconstexpr |
◆ up_lengths_
template<typename UpLengths, bool Use24BitIntegerCalculation>
| UpLengths ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >::up_lengths_ |
◆ up_lengths_scan_
template<typename UpLengths, bool Use24BitIntegerCalculation>
| UpLengthsScan ck_tile::unmerge< UpLengths, Use24BitIntegerCalculation >::up_lengths_scan_ |
The documentation for this struct was generated from the following file: