|
static void | collective_init (World &) |
| Collective initialization of a shape. More...
|
|
static constexpr bool | validate (const Range &) |
| Validate shape range. More...
|
|
template<typename Index > |
static constexpr bool | is_zero (const Index &) |
| Check that a tile is zero. More...
|
|
static constexpr bool | is_dense () |
| Check density. More...
|
|
static constexpr float | sparsity () |
| Sparsity fraction. More...
|
|
static constexpr bool | empty () |
| Check if the shape is empty (uninitialized) More...
|
|
template<typename Index > |
static DenseShape | update_block (const Index &, const Index &, const DenseShape &) |
|
template<typename Index > |
static DenseShape | block (const Index &, const Index &) |
|
template<typename Index , typename Scalar , typename std::enable_if< detail::is_numeric< Scalar >::value >::type * = nullptr> |
static DenseShape | block (const Index &, const Index &, const Scalar) |
|
template<typename Index > |
static DenseShape | block (const Index &, const Index &, const Permutation &) |
|
template<typename Index , typename Scalar > |
static DenseShape | block (const Index &, const Index &, const Scalar, const Permutation &) |
|
static DenseShape | perm (const Permutation &) |
|
template<typename Scalar > |
static DenseShape | scale (const Scalar) |
|
template<typename Scalar > |
static DenseShape | scale (const Scalar, const Permutation &) |
|
static DenseShape | add (const DenseShape &) |
|
static DenseShape | add (const DenseShape &, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | add (const DenseShape &, const Scalar) |
|
template<typename Scalar > |
static DenseShape | add (const DenseShape &, const Scalar, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | add (const Scalar) |
|
template<typename Scalar > |
static DenseShape | add (const Scalar, const Permutation &) |
|
static DenseShape | subt (const DenseShape &) |
|
static DenseShape | subt (const DenseShape &, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | subt (const DenseShape &, const Scalar) |
|
template<typename Scalar > |
static DenseShape | subt (const DenseShape &, const Scalar, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | subt (const Scalar) |
|
template<typename Scalar > |
static DenseShape | subt (const Scalar, const Permutation &) |
|
static DenseShape | mult (const DenseShape &) |
|
static DenseShape | mult (const DenseShape &, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | mult (const DenseShape &, const Scalar) |
|
template<typename Scalar > |
static DenseShape | mult (const DenseShape &, const Scalar, const Permutation &) |
|
template<typename Scalar > |
static DenseShape | gemm (const DenseShape &, const Scalar, const math::GemmHelper &) |
|
template<typename Scalar > |
static DenseShape | gemm (const DenseShape &, const Scalar, const math::GemmHelper &, const Permutation &) |
|
Dense shape of an array.
Since all tiles are present in dense arrays, this shape has no data and and all checks return their logical result. The hope is that the compiler will optimize branches that use these checks.
Definition at line 54 of file dense_shape.h.