/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/core/algorithm/coordinate_transform.hpp File Reference#
coordinate_transform.hpp File Reference
#include "ck_tile/core/config.hpp"
#include "ck_tile/core/container/multi_index.hpp"
#include "ck_tile/core/container/container_helper.hpp"
#include "ck_tile/core/utility/functional.hpp"
#include "ck_tile/core/utility/type_traits.hpp"
#include "ck_tile/core/utility/magic_div.hpp"
#include "ck_tile/core/utility/print.hpp"
#include "ck_tile/core/algorithm/indexing_adaptor.hpp"
Go to the source code of this file.
Namespaces | |
ck_tile | |
Enumerations | |
enum class | ck_tile::coord_transform_enum { ck_tile::undefined , ck_tile::pass_through , ck_tile::pad , ck_tile::embed , ck_tile::merge , ck_tile::unmerge , ck_tile::replicate , ck_tile::xor_t , ck_tile::offset , ck_tile::indexing } |
Functions | |
template<typename LowLength > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_pass_through_transform (const LowLength &low_length) |
template<typename LowLength , typename LeftPad , typename RightPad , bool SkipIsValidCheck = false> | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_pad_transform (const LowLength &low_length, const LeftPad &left_pad, const RightPad &right_pad, bool_constant< SkipIsValidCheck >=bool_constant< false >{}) |
template<typename LowLength , typename LeftPadLength , bool SkipIsValidCheck = false> | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_left_pad_transform (const LowLength &low_length, const LeftPadLength &left_pad_, bool_constant< SkipIsValidCheck >=bool_constant< false >{}) |
template<typename LowLength , typename RightPadLength , bool SkipIsValidCheck = false> | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_right_pad_transform (const LowLength &low_length, const RightPadLength &right_pad_, bool_constant< SkipIsValidCheck >=bool_constant< false >{}) |
template<typename UpLengths , typename Coefficients , typename std::enable_if< UpLengths::size()==Coefficients::size(), bool >::type = false> | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_embed_transform (const UpLengths &up_lengths, const Coefficients &coefficients) |
template<typename LowLengths > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_merge_transform_v2_magic_division (const LowLengths &low_lengths) |
template<typename LowLengths > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_merge_transform_v3_division_mod (const LowLengths &low_lengths) |
template<typename LowLengths > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_merge_transform (const LowLengths &low_lengths) |
template<typename UpLengths , bool Use24BitIntegerCalculation = false> | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_unmerge_transform (const UpLengths &up_lengths, bool_constant< Use24BitIntegerCalculation >=bool_constant< false >{}) |
template<typename LowerIndex > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_freeze_transform (const LowerIndex &low_idx) |
template<typename UpperIndex > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_insert_transform (const UpperIndex &up_idx) |
template<typename UpLengths > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_replicate_transform (const UpLengths &up_lengths) |
template<typename LowLength , typename SliceBegin , typename SliceEnd > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_slice_transform (const LowLength &low_length, const SliceBegin &slice_begin, const SliceEnd &slice_end) |
template<typename Modulus , typename UpLength > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_modulo_transform (const Modulus &modulus, const UpLength &up_length) |
template<typename LowLengths > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_xor_transform (const LowLengths &low_lengths) |
template<typename LowLength , typename OffsetLength > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_offset_transform (const LowLength &low_length, const OffsetLength &offset_length) |
template<typename UpLength , typename Indices > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_indexing_transform (const UpLength &up_lengths, const Indices &indices) |
template<typename UpLength , typename IndexingAdaptor > | |
constexpr CK_TILE_HOST_DEVICE auto | ck_tile::make_indexing_transform_with_adaptor (const UpLength &up_lengths, const IndexingAdaptor &iadaptor) |