tile_window_linear.hpp File Reference

tile_window_linear.hpp File Reference#

Composable Kernel: tile_window_linear.hpp File Reference
tile_window_linear.hpp File Reference

Go to the source code of this file.

Classes

struct  ck_tile::tile_window_linear< BottomTensorView_, WindowLengths_, StaticTileDistribution_, LinearBottomDims_ >
struct  ck_tile::tile_window_linear< BottomTensorView_, WindowLengths_, StaticTileDistribution_, LinearBottomDims_ >::traits
struct  ck_tile::impl::default_linear_bottom_dims_impl< address_space_enum, len_ >
struct  ck_tile::impl::default_linear_bottom_dims_impl< address_space_enum::global, len_ >
struct  ck_tile::impl::default_linear_bottom_dims_impl< address_space_enum::lds, len_ >
struct  ck_tile::is_tile_window_linear< T >
 Type trait to determine if a type is a linear tile window. More...
struct  ck_tile::is_tile_window_linear< tile_window_linear< BottomTensorView_, WindowLengths_, StaticTileDistribution_, LinearBottomDims_ > >
 Specialization of is_tile_window_linear for tile_window_linear. More...

Namespaces

namespace  ck_tile
namespace  ck_tile::impl

Macros

#define WINDOW_DISPATCH_ISSUE()

Typedefs

template<typename TensorView_>
using ck_tile::default_linear_bottom_dims

Functions

template<typename TensorView_, typename WindowLengths_, typename StaticTileDistribution_, typename LinearBottomDims_ = default_linear_bottom_dims<TensorView_>>
CK_TILE_DEVICE constexpr auto ck_tile::make_tile_window_linear (const TensorView_ &tensor_view, const WindowLengths_ &window_lengths, const multi_index< TensorView_::get_num_of_dimension()> &origin, const StaticTileDistribution_ &tile_distribution, LinearBottomDims_={})
template<typename TileWindow_, typename StaticTileDistribution_, typename LinearBottomDims_ = default_linear_bottom_dims<typename TileWindow_::BottomTensorView>>
CK_TILE_DEVICE constexpr auto ck_tile::make_tile_window_linear (const TileWindow_ &tile_window, const StaticTileDistribution_ &tile_distribution, LinearBottomDims_={})
template<typename TensorView_, typename WindowLengths_, typename StaticTileDistribution_, typename LinearBottomDims_ = default_linear_bottom_dims<TensorView_>>
CK_TILE_DEVICE auto ck_tile::make_tile_window_linear_raw (const TensorView_ &tensor_view, const WindowLengths_ &window_lengths, const multi_index< TensorView_::get_num_of_dimension()> &origin, const StaticTileDistribution_ &tile_distribution, LinearBottomDims_={})
template<typename TileWindow_, typename StaticTileDistribution_, typename LinearBottomDims_ = default_linear_bottom_dims<typename TileWindow_::BottomTensorView>>
CK_TILE_DEVICE constexpr auto ck_tile::make_tile_window_linear_raw (const TileWindow_ &tile_window, const StaticTileDistribution_ &tile_distribution, LinearBottomDims_={})
template<typename TensorView_, typename WindowLengths_, typename StaticTileDistribution_, typename LinearBottomDims_>
CK_TILE_DEVICE void ck_tile::move_tile_window (tile_window_linear< TensorView_, WindowLengths_, StaticTileDistribution_, LinearBottomDims_ > &window, const typename tile_window_linear< TensorView_, WindowLengths_, StaticTileDistribution_, LinearBottomDims_ >::BottomTensorIndex &step)

Variables

template<typename T>
constexpr bool ck_tile::is_tile_window_linear_v = is_tile_window_linear<T>::value
 Helper variable template to check if a type is a linear tile window.

Macro Definition Documentation

◆ WINDOW_DISPATCH_ISSUE

#define WINDOW_DISPATCH_ISSUE ( )
Value:
if constexpr(i_access < 0) \
{ \
static_for<0, NumAccess, 1>{}([&](auto ia) { issue(ia); }); \
} \
else \
{ \
static_assert(i_access < NumAccess); \
issue(number<i_access>{}); \
}