45 const char name[],
const int nrows,
const int ncols,
46 const int row_sizes[nrows],
const int col_sizes[ncols]);
73void dbm_get_block_p(
dbm_matrix_t *matrix,
const int row,
const int col,
74 double **block,
int *row_size,
int *col_size);
81void dbm_put_block(
dbm_matrix_t *matrix,
const int row,
const int col,
82 const bool summation,
const double *block);
102void dbm_reserve_blocks(
dbm_matrix_t *matrix,
const int nblocks,
103 const int rows[],
const int cols[]);
109void dbm_scale(
dbm_matrix_t *matrix,
const double alpha);
147void dbm_iterator_next_block(
dbm_iterator_t *iter,
int *row,
int *col,
148 double **block,
int *row_size,
int *col_size);
197 const int **row_sizes);
204 const int **col_sizes);
210void dbm_get_local_rows(
const dbm_matrix_t *matrix,
int *nlocal_rows,
211 const int **local_rows);
217void dbm_get_local_cols(
const dbm_matrix_t *matrix,
int *nlocal_cols,
218 const int **local_cols);
224int dbm_get_stored_coordinates(
const dbm_matrix_t *matrix,
const int row,
static int dbm_get_shard_index(const dbm_matrix_t *matrix, const int row, const int col)
Internal routine for getting a block's shard index.
static int dbm_get_num_shards(const dbm_matrix_t *matrix)
Internal routine that returns the number of shards for given matrix.
void dbm_get_col_sizes(const dbm_matrix_t *matrix, int *ncols, const int **col_sizes)
Returns the column block sizes of the given matrix.
void dbm_get_row_sizes(const dbm_matrix_t *matrix, int *nrows, const int **row_sizes)
Returns the row block sizes of the given matrix.
double dbm_maxeps(const dbm_matrix_t *matrix_a, const dbm_matrix_t *matrix_b)
Calculates maximum relative difference between matrix_a and matrix_b.
Internal struct for storing a two dimensional distribution.
Internal struct for storing a block iterator.
const dbm_matrix_t * matrix
Internal struct for storing a matrix.
dbm_distribution_t * dist
Internal struct for storing a matrix shard.