HARP Pre-1.0 (2c7ffce) documentation

Parallel Utilities

«  Serial Spectral Extraction   ::   Contents   ::   Parallel Data I/O  »

Parallel Utilities

The parallel HARP library uses the Elemental library for dense linear algebra, and also includes a custom class for handling distributed sparse matrices.

Communication Helper Functions

Linear Algebra

void mpi_matrix_zero(mpi_matrix & mat)
void local_matrix_zero(elem_matrix_local & mat)
void mpi_eigen_decompose(mpi_matrix const & invcov, mpi_matrix & D, mpi_matrix & W, bool regularize)
void mpi_eigen_compose(eigen_op op, mpi_matrix const & D, mpi_matrix const & W, mpi_matrix & out)
void mpi_column_norm(mpi_matrix const & mat, mpi_matrix & S)
void mpi_apply_norm(mpi_matrix const & S, mpi_matrix & mat)
void mpi_apply_inverse_norm(mpi_matrix const & S, mpi_matrix & mat)
void mpi_norm(mpi_matrix const & D, mpi_matrix const & W, mpi_matrix & S)
void mpi_sparse_mv_trans(mpi_matrix_sparse const & AT, mpi_matrix const & in, elem_matrix_local & out)
void mpi_gang_distribute(mpi_matrix const & mat, mpi_matrix & gmat)
void mpi_gang_accum(mpi_matrix const & gmat, mpi_matrix & mat)
class harp::mpi_matrix_sparse_block
Public Functions
mpi_matrix_sparse_block()
~mpi_matrix_sparse_block()
Public Members
size_t firstrow
size_t rows
size_t vals
std::vector< size_t > row
std::vector< size_t > col
std::vector< size_t > row_offset
std::vector< size_t > row_nnz
vector_double data
Friends
friend class boost::serialization::access
class harp::mpi_matrix_sparse
Public Functions
mpi_matrix_sparse(boost::mpi::communicator const & comm, size_t rows, size_t cols)
~mpi_matrix_sparse()
void clear()
boost::mpi::communicator const & comm() const
mpi_matrix_sparse_block & block()
mpi_matrix_sparse_block const & block() const
size_t rows() const
size_t cols() const

«  Serial Spectral Extraction   ::   Contents   ::   Parallel Data I/O  »