Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::MetisGraphGather Class Reference
Inheritance diagram for Arcane::MetisGraphGather:
Collaboration diagram for Arcane::MetisGraphGather:

Public Member Functions

 MetisGraphGather (IParallelMng *pm)
void gatherGraph (const bool need_part, ConstArrayView< idx_t > vtxdist, const int ncon, MetisGraphView my_graph, MetisGraph &graph)
 Performs a gathering of the ParMetis graph "my_graph" on processor rank 0 in the communicator "comm". The resulting graph is "graph".
void scatterPart (ConstArrayView< idx_t > vtxdist, ConstArrayView< idx_t > part, ArrayView< idx_t > my_part)
 Distributes the partitioning "part" from processor rank 0 in the communicator "comm" to all processors in this communicator. The result is "my_part", which must already be sized before calling.
Public Member Functions inherited from Arcane::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Constructs an accessor via the trace manager m.
 TraceAccessor (const TraceAccessor &rhs)
 Copy constructor.
TraceAccessoroperator= (const TraceAccessor &rhs)
 Copy assignment operator.
virtual ~TraceAccessor ()
 Frees resources.
ITraceMngtraceMng () const
 Trace manager.
TraceMessage info () const
 Flow for an information message.
TraceMessage pinfo () const
 Flow for a parallel information message.
TraceMessage info (char category) const
 Flow for an information message of a given category.
TraceMessage pinfo (char category) const
 Flow for a parallel information message of a given category.
TraceMessage info (bool v) const
 Flow for an information message.
TraceMessage warning () const
 Flow for a warning message.
TraceMessage pwarning () const
TraceMessage error () const
 Flow for an error message.
TraceMessage perror () const
TraceMessage log () const
 Flow for a log message.
TraceMessage plog () const
 Flow for a log message.
TraceMessage logdate () const
 Flow for a log message preceded by the date.
TraceMessage fatal () const
 Flow for a fatal error message.
TraceMessage pfatal () const
 Flow for a parallel fatal error message.
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flow for a debug message.
Trace::eDebugLevel configDbgLevel () const
 Debug level of the configuration file.
TraceMessage info (Int32 verbose_level) const
 Flow for an information message of a given level.
TraceMessage linfo () const
 Flow for an information message with the local information level of this instance.
TraceMessage linfo (Int32 relative_level) const
 Flow for an information message with the local information level of this instance.
void fatalMessage (const StandaloneTraceMessage &o) const

Private Member Functions

template<class SourceType, class TargetType>
void _convertVector (const int size, ConstArrayView< SourceType > src, ArrayView< TargetType > dest)

Private Attributes

IParallelMngm_parallel_mng = nullptr
Int32 m_my_rank = A_NULL_RANK
Int32 m_nb_rank = A_NULL_RANK

Additional Inherited Members

Protected Member Functions inherited from Arcane::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
Int32 _localVerboseLevel () const

Detailed Description

Definition at line 37 of file MetisGraphGather.h.

Constructor & Destructor Documentation

◆ MetisGraphGather()

Arcane::MetisGraphGather::MetisGraphGather ( IParallelMng * pm)
explicit

Definition at line 40 of file MetisGraphGather.cc.

Member Function Documentation

◆ _convertVector()

template<class SourceType, class TargetType>
void Arcane::MetisGraphGather::_convertVector ( const int size,
ConstArrayView< SourceType > src,
ArrayView< TargetType > dest )
private

Definition at line 54 of file MetisGraphGather.cc.

◆ gatherGraph()

void Arcane::MetisGraphGather::gatherGraph ( const bool need_part,
ConstArrayView< idx_t > vtxdist,
const int ncon,
MetisGraphView my_graph,
MetisGraph & graph )

Performs a gathering of the ParMetis graph "my_graph" on processor rank 0 in the communicator "comm". The resulting graph is "graph".

Definition at line 69 of file MetisGraphGather.cc.

References Arcane::Array< T >::constView(), Arccore::ArrayView< T >::constView(), Arcane::Array< T >::data(), Arcane::TraceAccessor::info(), Arcane::Array< T >::resize(), Arccore::Array< T >::resize(), Arccore::AbstractArray< T >::size(), Arccore::ArrayView< T >::size(), Arcane::Array< T >::view(), and Arccore::Array< T >::view().

Referenced by Arcane::MetisWrapper::_callMetisWith2Processors().

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

◆ scatterPart()

void Arcane::MetisGraphGather::scatterPart ( ConstArrayView< idx_t > vtxdist,
ConstArrayView< idx_t > part,
ArrayView< idx_t > my_part )

Distributes the partitioning "part" from processor rank 0 in the communicator "comm" to all processors in this communicator. The result is "my_part", which must already be sized before calling.

Definition at line 260 of file MetisGraphGather.cc.

References Arcane::Array< T >::constView(), Arcane::Array< T >::data(), Arcane::Array< T >::resize(), Arcane::AbstractArray< T >::size(), Arcane::ArrayView< T >::size(), Arcane::ConstArrayView< T >::size(), and Arcane::Array< T >::view().

Referenced by Arcane::MetisWrapper::_callMetisWith2Processors().

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

Member Data Documentation

◆ m_my_rank

Int32 Arcane::MetisGraphGather::m_my_rank = A_NULL_RANK
private

Definition at line 63 of file MetisGraphGather.h.

◆ m_nb_rank

Int32 Arcane::MetisGraphGather::m_nb_rank = A_NULL_RANK
private

Definition at line 64 of file MetisGraphGather.h.

◆ m_parallel_mng

IParallelMng* Arcane::MetisGraphGather::m_parallel_mng = nullptr
private

Definition at line 62 of file MetisGraphGather.h.


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