/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/core/tensor/tile_elementwise.hpp File Reference

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/core/tensor/tile_elementwise.hpp File Reference#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck_tile/core/tensor/tile_elementwise.hpp File Reference
tile_elementwise.hpp File Reference

Go to the source code of this file.

Namespaces

 ck_tile
 
 ck_tile::impl
 

Functions

template<typename InOutElementFunc , typename... InOutDstrTensors, typename = std::enable_if_t<std::conjunction_v< std::negation<std::is_same<std::remove_const_t<InOutDstrTensors>, null_tensor>>...>>>
CK_TILE_DEVICE void ck_tile::tile_elementwise_inout (const InOutElementFunc &inout_element_func, InOutDstrTensors &... inout_dstr_tensors)
 
template<typename InElementFunc , typename... InTensor, typename = std::enable_if_t< std::conjunction_v<std::negation<std::is_same<InTensor, null_tensor>>...>>>
CK_TILE_DEVICE auto ck_tile::tile_elementwise_in (const InElementFunc &in_element_func, const InTensor &... in_dstr_tensors)
 
template<typename InElementFunc , typename Tuple , size_t... I>
CK_TILE_DEVICE auto ck_tile::tile_elementwise_inout_unpack (const InElementFunc &in_element_func, const Tuple &t, std::index_sequence< I... >)
 Template function that "unpacks" a tuple and applies an element-wise operation. More...
 
template<typename InElementFunc , typename Tuple >
CK_TILE_DEVICE auto ck_tile::tile_elementwise_inout_unpack (const InElementFunc &in_element_func, const Tuple &t)
 Template function that "unpacks" a tuple and applies an element-wise operation. More...
 
template<typename DstrTensors , typename T >
CK_TILE_DEVICE void ck_tile::set_tile (DstrTensors &dstr_tensor, const T &value)
 
template<typename T >
CK_TILE_DEVICE void ck_tile::set_tile (null_tensor &, const T &)
 
template<typename DstrTensors , index_t v, bool skip_subdword_opt = false>
CK_TILE_DEVICE void ck_tile::set_tile (DstrTensors &dstr_tensor, number< v >, bool_constant< skip_subdword_opt >={})
 
template<index_t v>
CK_TILE_DEVICE void ck_tile::set_tile (null_tensor &, number< v >)
 
template<typename DstrTensors >
CK_TILE_DEVICE void ck_tile::clear_tile (DstrTensors &dstr_tensor)
 
template<typename OutDataType , typename InTensor >
CK_TILE_DEVICE auto ck_tile::impl::cast_tile_pk_fp8_fp32 (const InTensor &in_dstr_tensors)
 
template<typename OutDataType , typename InTensor >
CK_TILE_DEVICE auto ck_tile::impl::cast_tile_pk_fp16_fp32 (const InTensor &in_dstr_tensors)
 
template<typename DstType , typename SrcTensor >
CK_TILE_DEVICE auto ck_tile::cast_tile (const SrcTensor &src_tensor)
 
template<typename InOutElementFunc , typename... MaybeNullTensor, typename = std::enable_if_t< std::disjunction_v<std::is_same<remove_cvref_t<MaybeNullTensor>, null_tensor>...>>>
CK_TILE_DEVICE void ck_tile::tile_elementwise_inout (const InOutElementFunc &, MaybeNullTensor &&...)
 
template<typename InElementFunc , typename... MaybeNullTensor, typename = std::enable_if_t< std::disjunction_v<std::is_same<remove_cvref_t<MaybeNullTensor>, null_tensor>...>>>
CK_TILE_DEVICE auto ck_tile::tile_elementwise_in (const InElementFunc &, MaybeNullTensor &&...)