cuda::experimental::places::cute_partition#

template<size_t rank, size_t num_place_leaves, size_t num_local_leaves>
class cute_partition#

Structured tensor partition with compile-time rank and leaf counts.

Extents and strides remain runtime values, while exact array extents make the execution descriptor compact and give device code static loop bounds.

Public Functions

inline explicit cute_partition(
const cute_partition_descriptor &descriptor
)#
inline const dim4 &true_dims() const#
inline const dim4 &padded_dims() const#
inline const dim4 &grid_dims() const#
inline ::cuda::std::span<const layout_leaf> place_leaves() const#
inline ::cuda::std::span<const int> place_axes() const#
inline ::cuda::std::span<const layout_leaf> local_leaves() const#
inline size_t num_places() const#
inline size_t tiles_per_place() const#
inline pos4 owner(pos4 data_coords) const#
template<typename S>
inline auto apply(
const S &s,
pos4 place_position,
dim4 grid_dims
) const#
template<size_t dims>
inline auto apply(
const box<dims> &b,
pos4 place_position,
dim4 grid_dims
) const#
inline size_t place_offset(size_t place_index) const#
inline cute_partition_descriptor descriptor() const#
inline int cmp(const cute_partition &other) const#
inline bool operator==(const cute_partition &other) const#
inline bool operator!=(const cute_partition &other) const#

Public Static Attributes

static constexpr size_t rank_v = rank#
static constexpr size_t place_leaf_count_v = num_place_leaves#
static constexpr size_t local_leaf_count_v = num_local_leaves#