33#ifndef GKO_PUBLIC_CORE_DISTRIBUTED_PARTITION_HELPERS_HPP_
34#define GKO_PUBLIC_CORE_DISTRIBUTED_PARTITION_HELPERS_HPP_
37#include <ginkgo/config.hpp>
43#include <ginkgo/core/base/mpi.hpp>
44#include <ginkgo/core/base/range.hpp>
48namespace experimental {
49namespace distributed {
51template <
typename LocalIndexType,
typename GlobalIndexType>
71template <
typename LocalIndexType,
typename GlobalIndexType>
72std::unique_ptr<Partition<LocalIndexType, GlobalIndexType>>
89template <
typename LocalIndexType,
typename GlobalIndexType>
90std::unique_ptr<Partition<LocalIndexType, GlobalIndexType>>
A thin wrapper of MPI_Comm that supports most MPI calls.
Definition mpi.hpp:437
std::unique_ptr< Partition< LocalIndexType, GlobalIndexType > > build_partition_from_local_size(std::shared_ptr< const Executor > exec, mpi::communicator comm, size_type local_size)
Builds a partition from a local size.
std::unique_ptr< Partition< LocalIndexType, GlobalIndexType > > build_partition_from_local_range(std::shared_ptr< const Executor > exec, mpi::communicator comm, span local_range)
Builds a partition from a local range.
The Ginkgo namespace.
Definition abstract_factory.hpp:48
constexpr T one()
Returns the multiplicative identity for T.
Definition math.hpp:803
std::size_t size_type
Integral type used for allocation quantities.
Definition types.hpp:120
A span is a lightweight structure used to create sub-ranges from other ranges.
Definition range.hpp:75