8#include "Redistributor.h"
10#include <arccore/message_passing/Messages.h>
17#include "RedistributorBackEnd.h"
18#include "RedistributorMatrix.h"
19#include "RedistributorVector.h"
21using namespace Arccore::MessagePassing;
22using namespace Arccore;
27Redistributor::Redistributor(
28int globalSize, Arccore::MessagePassing::IMessagePassingMng* super, Arccore::MessagePassing::IMessagePassingMng* target, Method method)
35std::shared_ptr<MultiMatrixImpl>
39 if (m_method == Method::csr) {
40 red_mat.useCSRRedistributor();
42 return red_mat.updateTargetPM(m_distributor.get());
45std::shared_ptr<MultiVectorImpl>
49 return red_vect.updateTargetPM(m_distributor.get());
61Redistributor::commPlan()
const
63 return m_distributor.get();
Multi matrices representation container.
const AlgebraTraits< tag >::matrix_type & get() const
Get a specific matrix implementation.
const AlgebraTraits< tag >::vector_type & get() const
Get a specific vector implementation.
void redistributeBack(MultiVectorImpl *vect)
Convert back a Vector : from the target to its original communicator. Vector original communicator mu...
std::shared_ptr< MultiMatrixImpl > redistribute(MultiMatrixImpl *mat)
Convert a Matrix from its communicator to the target communicator. Matrix initial communicator must b...
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --