Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::Common::MatrixProfilerT< ValueT, MatrixImplT > Class Template Reference
Collaboration diagram for Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >:

Public Types

typedef MatrixImplT MatrixImplType

Public Member Functions

 MatrixProfilerT (IMatrix &matrix)
 Scalar matrix builder.
void addMatrixEntry (Integer iIndex, Integer jIndex)
void allocate ()

Private Types

typedef std::vector< Integer > VectorDefinition
typedef UniqueArray< VectorDefinitionMatrixDefinition

Private Member Functions

void _startTimer ()
void computeProfile ()
void _stopTimer ()

Private Attributes

IMatrixm_matrix
MatrixImplType * m_matrix_impl = nullptr
MatrixDefinition m_def_matrix
Integer m_local_offset = 0
 Global matrix informations.
Integer m_global_size = 0
Integer m_local_size = 0
bool m_square_matrix = false
Integer m_col_local_offset = 0
Integer m_col_global_size = 0
Integer m_col_local_size = 0
Integer m_nproc = 1
IMessagePassingMng * m_parallel_mng = nullptr
ITraceMng * m_trace = nullptr
bool m_allocated = false

Detailed Description

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
class Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >

Definition at line 38 of file BaseMatrixProfiler.h.

Member Typedef Documentation

◆ MatrixDefinition

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
typedef UniqueArray<VectorDefinition> Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::MatrixDefinition
private

data structure for matrix adjency graph.

Definition at line 59 of file BaseMatrixProfiler.h.

◆ MatrixImplType

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
typedef MatrixImplT Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::MatrixImplType

Definition at line 41 of file BaseMatrixProfiler.h.

◆ VectorDefinition

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
typedef std::vector<Integer> Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::VectorDefinition
private

data structure for a vector.

Definition at line 56 of file BaseMatrixProfiler.h.

Constructor & Destructor Documentation

◆ MatrixProfilerT()

template<typename ValueT, typename MatrixImplT>
Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::MatrixProfilerT ( IMatrix & matrix)
explicit

Scalar matrix builder.

Definition at line 38 of file MatrixProfilerT.h.

◆ ~MatrixProfilerT()

template<typename ValueT, typename MatrixImplT>
Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::~MatrixProfilerT ( )
virtual

Definition at line 73 of file MatrixProfilerT.h.

Member Function Documentation

◆ _startTimer()

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
void Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::_startTimer ( )
inlineprivate

Definition at line 81 of file BaseMatrixProfiler.h.

◆ _stopTimer()

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
void Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::_stopTimer ( )
inlineprivate

Definition at line 83 of file BaseMatrixProfiler.h.

◆ addMatrixEntry()

template<typename ValueT, typename MatrixImplT>
void Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::addMatrixEntry ( Integer iIndex,
Integer jIndex )

Definition at line 83 of file MatrixProfilerT.h.

◆ allocate()

template<typename ValueT, typename MatrixImplT>
void Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::allocate ( )

Definition at line 107 of file MatrixProfilerT.h.

◆ computeProfile()

template<typename ValueT, typename MatrixImplT>
void Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::computeProfile ( )
private

Definition at line 121 of file MatrixProfilerT.h.

Member Data Documentation

◆ m_allocated

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
bool Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_allocated = false
private

Definition at line 78 of file BaseMatrixProfiler.h.

◆ m_col_global_size

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_col_global_size = 0
private

Definition at line 71 of file BaseMatrixProfiler.h.

◆ m_col_local_offset

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_col_local_offset = 0
private

Definition at line 70 of file BaseMatrixProfiler.h.

◆ m_col_local_size

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_col_local_size = 0
private

Definition at line 72 of file BaseMatrixProfiler.h.

◆ m_def_matrix

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
MatrixDefinition Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_def_matrix
private

data structure for matrix values (CSR)

Definition at line 62 of file BaseMatrixProfiler.h.

◆ m_global_size

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_global_size = 0
private

Definition at line 66 of file BaseMatrixProfiler.h.

◆ m_local_offset

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_local_offset = 0
private

Global matrix informations.

Definition at line 65 of file BaseMatrixProfiler.h.

◆ m_local_size

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_local_size = 0
private

Definition at line 67 of file BaseMatrixProfiler.h.

◆ m_matrix

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
IMatrix& Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_matrix
private

Definition at line 51 of file BaseMatrixProfiler.h.

◆ m_matrix_impl

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
MatrixImplType* Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_matrix_impl = nullptr
private

Definition at line 53 of file BaseMatrixProfiler.h.

◆ m_nproc

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
Integer Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_nproc = 1
private

Definition at line 74 of file BaseMatrixProfiler.h.

◆ m_parallel_mng

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
IMessagePassingMng* Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_parallel_mng = nullptr
private

Definition at line 75 of file BaseMatrixProfiler.h.

◆ m_square_matrix

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
bool Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_square_matrix = false
private

Definition at line 69 of file BaseMatrixProfiler.h.

◆ m_trace

template<typename ValueT = Real, typename MatrixImplT = SimpleCSRMatrix<ValueT>>
ITraceMng* Alien::Common::MatrixProfilerT< ValueT, MatrixImplT >::m_trace = nullptr
private

Definition at line 76 of file BaseMatrixProfiler.h.


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