Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::RedistributorMatrix Class Reference
Inheritance diagram for Alien::RedistributorMatrix:
Collaboration diagram for Alien::RedistributorMatrix:

Public Member Functions

 RedistributorMatrix (const MultiMatrixImpl *src_impl, bool use_dok=true)
 RedistributorMatrix (const RedistributorMatrix &src)=delete
 RedistributorMatrix (RedistributorMatrix &&src)=delete
RedistributorMatrix & operator= (const RedistributorMatrix &src)=delete
RedistributorMatrix & operator= (RedistributorMatrix &&src)=delete
void clear () override
 Demande la lib�ration des donn�es.
void useCSRRedistributor ()
std::shared_ptr< MultiMatrixImpl > updateTargetPM (const RedistributorCommPlan *commPlan)
void setSuperPM (IMessagePassingMng *pm)
std::shared_ptr< MultiMatrixImpl > redistribute ()
Public Member Functions inherited from Alien::IMatrixImpl
 IMatrixImpl (const MultiMatrixImpl *multi_impl, BackEndId backend="")
 Constructor.
virtual ~IMatrixImpl () override=default
 Free resources.
 IMatrixImpl (const IMatrixImpl &src)=delete
 IMatrixImpl (IMatrixImpl &&src)=delete
IMatrixImpl & operator= (const IMatrixImpl &src)=delete
IMatrixImpl & operator= (IMatrixImpl &&src)=delete
virtual const ISpace & rowSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const ISpace & colSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const MatrixDistribution & distribution () const
 Get the distribution of the matrix.
virtual BackEndId backend () const
virtual const Block * block () const
 Get block datas of the matrix.
virtual const VBlock * vblock () const
 Get block datas of the matrix.
virtual const VBlock * rowBlock () const
 Get row block datas of the matrix.
virtual const VBlock * colBlock () const
 Get col block datas of the matrix.
const MultiMatrixImpl * impls () const
Public Member Functions inherited from Alien::Timestamp
 Timestamp (const TimestampMng *manager)
virtual ~Timestamp ()
 Destructeur de la classe.
virtual Int64 timestamp () const
 Donne la valeur courante du timestamp.
void updateTimestamp ()
 Met à jour le timestamp.
void copyTimestamp (const Timestamp &v)
 Copy un autre timestamp.
void setTimestamp (const TimestampMng *manager, const Int64 timestamp)
Public Member Functions inherited from Alien::ObjectWithTrace
template<typename T>
void alien_info (T &&t) const
template<typename T>
void alien_debug (T &&t) const
template<typename T>
void alien_warning (T &&t) const
template<typename T>
void alien_fatal (T &&t) const
ITraceMng * traceMng () const

Private Attributes

const IMessagePassingMng * m_super_pm
std::shared_ptr< MultiMatrixImpl > m_tgt_impl
std::shared_ptr< MatrixDistribution > m_tgt_dist
std::unique_ptr< DoKDistributor > m_distributor
bool m_use_dok = true
std::unique_ptr< SimpleCSRDistributor > m_simple_csr_distibutor

Additional Inherited Members

Public Types inherited from Alien::IMatrixImpl
typedef Arccore::Real ValueType
 Type of the values stored in the matrix.
Protected Member Functions inherited from Alien::ObjectWithTrace
TraceMessage cout () const
Protected Attributes inherited from Alien::IMatrixImpl
const MultiMatrixImpl * m_multi_impl
 Pointer on matrices implementation.
BackEndId m_backend
 Backend id.

Detailed Description

Definition at line 32 of file RedistributorMatrix.h.

Constructor & Destructor Documentation

◆ RedistributorMatrix()

Alien::RedistributorMatrix::RedistributorMatrix ( const MultiMatrixImpl * src_impl,
bool use_dok = true )
explicit

Definition at line 44 of file RedistributorMatrix.cc.

Member Function Documentation

◆ clear()

void Alien::RedistributorMatrix::clear ( )
overridevirtual

Demande la lib�ration des donn�es.

Reimplemented from Alien::IMatrixImpl.

Definition at line 54 of file RedistributorMatrix.cc.

References clear().

Referenced by clear().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ redistribute()

std::shared_ptr< MultiMatrixImpl > Alien::RedistributorMatrix::redistribute ( )

Definition at line 94 of file RedistributorMatrix.cc.

◆ setSuperPM()

void Alien::RedistributorMatrix::setSuperPM ( IMessagePassingMng * pm)

Definition at line 60 of file RedistributorMatrix.cc.

◆ updateTargetPM()

std::shared_ptr< MultiMatrixImpl > Alien::RedistributorMatrix::updateTargetPM ( const RedistributorCommPlan * commPlan)

Definition at line 71 of file RedistributorMatrix.cc.

◆ useCSRRedistributor()

void Alien::RedistributorMatrix::useCSRRedistributor ( )

Definition at line 65 of file RedistributorMatrix.cc.

Member Data Documentation

◆ m_distributor

std::unique_ptr<DoKDistributor> Alien::RedistributorMatrix::m_distributor
private

Definition at line 56 of file RedistributorMatrix.h.

◆ m_simple_csr_distibutor

std::unique_ptr<SimpleCSRDistributor> Alien::RedistributorMatrix::m_simple_csr_distibutor
private

Definition at line 58 of file RedistributorMatrix.h.

◆ m_super_pm

const IMessagePassingMng* Alien::RedistributorMatrix::m_super_pm
private

Definition at line 53 of file RedistributorMatrix.h.

◆ m_tgt_dist

std::shared_ptr<MatrixDistribution> Alien::RedistributorMatrix::m_tgt_dist
private

Definition at line 55 of file RedistributorMatrix.h.

◆ m_tgt_impl

std::shared_ptr<MultiMatrixImpl> Alien::RedistributorMatrix::m_tgt_impl
private

Definition at line 54 of file RedistributorMatrix.h.

◆ m_use_dok

bool Alien::RedistributorMatrix::m_use_dok = true
private

Definition at line 57 of file RedistributorMatrix.h.


The documentation for this class was generated from the following files: