SpaceFillingCurve< TensorLengths, DimAccessOrder, ScalarsPerAccess, SnakeCurved > Struct Template Reference#
ck::SpaceFillingCurve< TensorLengths, DimAccessOrder, ScalarsPerAccess, SnakeCurved > Struct Template Reference
#include <tensor_space_filling_curve.hpp>
Public Types | |
| using | Index = MultiIndex<nDim> |
Static Public Member Functions | |
| __host__ static __device__ constexpr index_t | GetNumOfAccess () |
| template<index_t AccessIdx1dBegin, index_t AccessIdx1dEnd> | |
| static __device__ __host__ constexpr auto | GetStepBetween (Number< AccessIdx1dBegin >, Number< AccessIdx1dEnd >) |
| template<index_t AccessIdx1d> | |
| static __device__ __host__ constexpr auto | GetForwardStep (Number< AccessIdx1d >) |
| template<index_t AccessIdx1d> | |
| static __device__ __host__ constexpr auto | GetBackwardStep (Number< AccessIdx1d >) |
| template<index_t AccessIdx1d> | |
| static __device__ __host__ constexpr Index | GetIndex (Number< AccessIdx1d >) |
| template<index_t AccessIdx1d> | |
| static __device__ __host__ constexpr auto | GetIndexTupleOfNumber (Number< AccessIdx1d >) |
Static Public Attributes | |
| static constexpr index_t | nDim = TensorLengths::Size() |
| static constexpr index_t | ScalarPerVector |
| static constexpr auto | access_lengths = TensorLengths{} / ScalarsPerAccess{} |
| static constexpr auto | dim_access_order = DimAccessOrder{} |
| static constexpr auto | ordered_access_lengths |
| static constexpr auto | to_index_adaptor |
| static constexpr auto | I0 = Number<0>{} |
| static constexpr auto | I1 = Number<1>{} |
Member Typedef Documentation
◆ Index
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
| using ck::SpaceFillingCurve< TensorLengths, DimAccessOrder, ScalarsPerAccess, SnakeCurved >::Index = MultiIndex<nDim> |
Member Function Documentation
◆ GetBackwardStep()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
template<index_t AccessIdx1d>
|
inlinestaticconstexpr |
◆ GetForwardStep()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
template<index_t AccessIdx1d>
|
inlinestaticconstexpr |
◆ GetIndex()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
template<index_t AccessIdx1d>
|
inlinestaticconstexpr |
◆ GetIndexTupleOfNumber()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
template<index_t AccessIdx1d>
|
inlinestaticconstexpr |
◆ GetNumOfAccess()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
inlinestaticconstexpr |
◆ GetStepBetween()
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
inlinestaticconstexpr |
Member Data Documentation
◆ access_lengths
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
◆ dim_access_order
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
◆ I0
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
◆ I1
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
◆ nDim
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
◆ ordered_access_lengths
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
Initial value:
=
__host__ __device__ constexpr auto container_reorder_given_new2old(const Array< TData, NSize > &old_array, Sequence< IRs... >)
Definition utility/container_helper.hpp:43
static constexpr auto access_lengths
Definition tensor_space_filling_curve.hpp:28
static constexpr auto dim_access_order
Definition tensor_space_filling_curve.hpp:29
◆ ScalarPerVector
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
Initial value:
=
__host__ __device__ constexpr index_t reduce_on_sequence(Seq, Reduce f, Number< Init >)
Definition utility/sequence.hpp:884
Definition utility/math.hpp:34
◆ to_index_adaptor
template<typename TensorLengths, typename DimAccessOrder, typename ScalarsPerAccess, bool SnakeCurved = true>
|
staticconstexpr |
Initial value:
__host__ __device__ constexpr auto make_single_stage_tensor_adaptor(const Transforms &transforms, LowerDimensionOldTopIdss, UpperDimensionNewTopIdss)
Definition tensor_description/tensor_adaptor.hpp:425
__host__ __device__ constexpr auto make_merge_transform(const LowLengths &low_lengths)
Definition multi_index_transform_helper.hpp:55
__host__ __device__ constexpr auto make_tuple(Xs &&... xs)
Definition utility/tuple.hpp:211
Definition utility/sequence.hpp:43
static constexpr auto ordered_access_lengths
Definition tensor_space_filling_curve.hpp:30
typename conditional< kHasContent, type0, type1 >::type type
Definition utility/sequence.hpp:271
The documentation for this struct was generated from the following file: