16#ifndef dealii_mpi_noncontiguous_partitioner_h
17#define dealii_mpi_noncontiguous_partitioner_h
68 const std::vector<types::global_dof_index> &indices_locally_owned,
69 const std::vector<types::global_dof_index> &indices_ghost,
88 template <
typename Number>
108 template <
typename Number>
111 const unsigned int communication_channel,
115 std::vector<MPI_Request> &
requests)
const;
133 template <
typename Number>
136 const unsigned int communication_channel,
139 std::vector<MPI_Request> &
requests)
const;
155 template <
typename Number>
160 std::vector<MPI_Request> &
requests)
const;
166 std::pair<unsigned int, unsigned int>
201 reinit(
const std::vector<types::global_dof_index> &indices_locally_owned,
202 const std::vector<types::global_dof_index> &indices_ghost,
void export_to_ghosted_array_start(const unsigned int communication_channel, const ArrayView< const Number > &locally_owned_array, const ArrayView< Number > &temporary_storage, std::vector< MPI_Request > &requests) const
std::vector< MPI_Request > requests
std::vector< uint8_t > buffers
types::global_dof_index memory_consumption()
const MPI_Comm & get_mpi_communicator() const override
unsigned int temporary_storage_size() const
std::vector< types::global_dof_index > recv_ptr
void export_to_ghosted_array(const unsigned int communication_channel, const ArrayView< const Number > &locally_owned_array, const ArrayView< Number > &temporary_storage, const ArrayView< Number > &ghost_array, std::vector< MPI_Request > &requests) const
std::vector< types::global_dof_index > send_ptr
std::vector< unsigned int > send_ranks
void export_to_ghosted_array_finish(const ArrayView< const Number > &temporary_storage, const ArrayView< Number > &ghost_array, std::vector< MPI_Request > &requests) const
std::vector< types::global_dof_index > recv_indices
std::pair< unsigned int, unsigned int > n_targets() const
void export_to_ghosted_array(const ArrayView< const Number > &locally_owned_array, const ArrayView< Number > &ghost_array) const
void reinit(const IndexSet &indexset_locally_owned, const IndexSet &indexset_ghost, const MPI_Comm &communicator) override
std::vector< types::global_dof_index > send_indices
std::vector< unsigned int > recv_ranks
NoncontiguousPartitioner()=default
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE