|
| | dmatrix (int num_rows__, int num_cols__, BLACS_grid const &blacs_grid__, int bs_row__, int bs_col__, sddk::memory_t mem_type__=sddk::memory_t::host) |
| |
| | dmatrix (int num_rows__, int num_cols__, sddk::memory_t mem_type__=sddk::memory_t::host) |
| |
| | dmatrix (int num_rows__, int num_cols__, sddk::memory_pool &mp__, std::string const &label__="") |
| |
| | dmatrix (T *ptr__, int num_rows__, int num_cols__, BLACS_grid const &blacs_grid__, int bs_row__, int bs_col__) |
| |
| | dmatrix (int num_rows__, int num_cols__, BLACS_grid const &blacs_grid__, int bs_row__, int bs_col__, sddk::memory_pool &mp__) |
| |
| | dmatrix (T *ptr__, int num_rows__, int num_cols__) |
| |
|
| dmatrix (dmatrix< T > &&src)=default |
| |
|
dmatrix< T > & | operator= (dmatrix< T > &&src)=default |
| |
| int | size () const |
| | Return size of the square matrix or -1 in case of rectangular matrix. More...
|
| |
| int | size_local () const |
| |
| int | num_rows () const |
| | Return number of rows in the global matrix. More...
|
| |
| int | num_rows_local () const |
| | Return local number of rows for this MPI rank. More...
|
| |
| int | num_rows_local (int rank) const |
| | Return local number of rows for a given MPI rank. More...
|
| |
| int | irow (int irow_loc) const |
| | Return global row index in the range [0, num_rows) by the local index in the range [0, num_rows_local). More...
|
| |
| int | num_cols () const |
| |
| int | num_cols_local () const |
| | Local number of columns. More...
|
| |
| int | num_cols_local (int rank) const |
| |
| int | icol (int icol_loc) const |
| | Inindex of column in global matrix. More...
|
| |
| int const * | descriptor () const |
| |
| spla::MatrixDistribution & | spla_distribution () |
| |
| void | copy_to (sddk::memory_t mem__, int ir0__, int ic0__, int nr__, int nc__) |
| |
| void | set (int ir0__, int jc0__, int mr__, int nc__, T *ptr__, int ld__) |
| |
| void | set (const int irow_glob, const int icol_glob, T val) |
| |
| void | add (const int irow_glob, const int icol_glob, T val) |
| |
| void | add (real_type< T > beta__, const int irow_glob, const int icol_glob, T val) |
| |
| void | make_real_diag (int n__) |
| |
| sddk::mdarray< T, 1 > | get_diag (int n__) |
| |
| auto const & | spl_col () const |
| |
| auto const & | spl_row () const |
| |
| int | rank_row () const |
| |
| int | num_ranks_row () const |
| |
| int | rank_col () const |
| |
| int | num_ranks_col () const |
| |
| int | bs_row () const |
| | Row blocking factor. More...
|
| |
| int | bs_col () const |
| | Column blocking factor. More...
|
| |
| auto const & | blacs_grid () const |
| |
| void | save_to_hdf5 (std::string name__, int m__, int n__) |
| |
| auto | get_full_matrix () const |
| |
| nlohmann::json | serialize_to_json (int m__, int n__) const |
| |
| std::stringstream | serialize (std::string name__, int m__, int n__) const |
| |
| T | checksum (int m__, int n__) const |
| |
| auto const & | comm () const |
| |
| costa::grid_layout< T > & | grid_layout () |
| |
| costa::grid_layout< T > | grid_layout (int irow0__, int jcol0__, int mrow__, int ncol__) |
| |
| | mdarray () |
| | Default constructor. More...
|
| |
| | mdarray (std::array< mdarray_index_descriptor, N > const dims__, memory_t memory__=memory_t::host, std::string label__="") |
| | N-dimensional array with index bounds. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, memory_t memory__=memory_t::host, std::string label__="") |
| | 1D array with memory allocation. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, memory_pool &mp__, std::string label__="") |
| | 1D array with memory pool allocation. More...
|
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, std::string label__="") |
| | 1D array with host pointer wrapper. More...
|
| |
| | mdarray (T *ptr__, T *ptr_device__, mdarray_index_descriptor const &d0, std::string label__="") |
| | 1D array with host and device pointer wrapper. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, memory_t memory__=memory_t::host, std::string label__="") |
| | 2D array with memory allocation. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, memory_t memory__=memory_t::host, std::string label__="") |
| | 3D array with memory allocation. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, memory_t memory__=memory_t::host, std::string label__="") |
| | 4D array with memory allocation. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, mdarray_index_descriptor const &d4, memory_t memory__=memory_t::host, std::string label__="") |
| | 5D array with memory allocation. More...
|
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, mdarray_index_descriptor const &d4, mdarray_index_descriptor const &d5, memory_t memory__=memory_t::host, std::string label__="") |
| | 6D array with memory allocation. More...
|
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, std::string label__="") |
| | Wrap a pointer into 2D array. More...
|
| |
| | mdarray (T *ptr__, T *ptr_device__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, std::string label__="") |
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, memory_pool &mp__, std::string label__="") |
| | 2D array with memory pool allocation. More...
|
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, std::string label__="") |
| |
| | mdarray (T *ptr__, T *ptr_device__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, std::string label__="") |
| |
| | mdarray (mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, memory_pool &mp__, std::string label__="") |
| | 3D array with memory pool allocation. More...
|
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, std::string label__="") |
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, mdarray_index_descriptor const &d4, std::string label__="") |
| |
| | mdarray (T *ptr__, mdarray_index_descriptor const &d0, mdarray_index_descriptor const &d1, mdarray_index_descriptor const &d2, mdarray_index_descriptor const &d3, mdarray_index_descriptor const &d4, mdarray_index_descriptor const &d5, std::string label__="") |
| |
| | mdarray (mdarray< T, N > &&src) |
| | Move constructor. More...
|
| |
| mdarray< T, N > & | operator= (mdarray< T, N > &&src) |
| | Move assignment operator. More...
|
| |
| mdarray< T, N > & | operator= (std::function< T(void)> f__) |
| |
| mdarray< T, N > & | operator= (std::function< T(index_type)> f__) |
| |
| mdarray< T, N > & | operator= (std::function< T(index_type, index_type)> f__) |
| |
| | ~mdarray () |
| | Destructor. More...
|
| |
| mdarray< T, N > & | allocate (memory_t memory__) |
| | Allocate memory for array. More...
|
| |
| mdarray< T, N > & | allocate (memory_pool &mp__) |
| | Allocate memory from the pool. More...
|
| |
| void | deallocate (memory_t memory__) |
| | Deallocate host or device memory. More...
|
| |
| T const & | operator() (Args... args) const |
| | Access operator() for the elements of multidimensional array. More...
|
| |
| T & | operator() (Args... args) |
| | Access operator() for the elements of multidimensional array. More...
|
| |
| T const & | operator[] (size_t const idx__) const |
| | Access operator[] for the elements of multidimensional array using a linear index in the range [0, size). More...
|
| |
| T & | operator[] (size_t const idx__) |
| | Access operator[] for the elements of multidimensional array using a linear index in the range [0, size). More...
|
| |
| T const * | at (memory_t mem__, Args... args) const |
| |
| T * | at (memory_t mem__, Args... args) |
| |
| T const * | at (memory_t mem__) const |
| | Return pointer to the beginning of array. More...
|
| |
| T * | at (memory_t mem__) |
| | Return pointer to the beginning of array. More...
|
| |
| T * | host_data () |
| |
| const T * | host_data () const |
| |
| T * | device_data () |
| |
| const T * | device_data () const |
| |
| size_t | size () const |
| | Return total size (number of elements) of the array. More...
|
| |
| size_t | size (int i) const |
| | Return size of particular dimension. More...
|
| |
| mdarray_index_descriptor | dim (int i) const |
| | Return a descriptor of a dimension. More...
|
| |
| uint32_t | ld () const |
| | Return leading dimension size. More...
|
| |
| uint64_t | hash (uint64_t h__=5381) const |
| | Compute hash of the array. More...
|
| |
| T | checksum_w (size_t idx0__, size_t size__) const |
| | Compute weighted checksum. More...
|
| |
| T | checksum (size_t idx0__, size_t size__) const |
| | Compute checksum. More...
|
| |
| T | checksum () const |
| |
| T * | begin () |
| |
| T const * | begin () const |
| |
| T * | end () |
| |
| T const * | end () const |
| |
| void | zero (memory_t mem__, size_t idx0__, size_t n__) |
| | Zero n elements starting from idx0. More...
|
| |
| void | zero (memory_t mem__=memory_t::host) |
| | Zero the entire array. More...
|
| |
| void | copy_to (memory_t mem__, size_t idx0__, size_t n__, acc::stream_id sid=acc::stream_id(-1)) |
| | Copy n elements starting from idx0 from one memory type to another. More...
|
| |
| void | copy_to (memory_t mem__, acc::stream_id sid=acc::stream_id(-1)) |
| | Copy entire array from one memory type to another. More...
|
| |
| bool | on_device () const |
| | Check if device pointer is available. More...
|
| |
| auto | label () const |
| |
| bool | on_host () const |
| |
template<typename T>
class sirius::la::dmatrix< T >
Distributed matrix.
Definition at line 55 of file dmatrix.hpp.