StarNEig Library
version v0.1.0
A task-based library for solving nonsymmetric eigenvalue problems
|
Data types and helper functions for BLACS. More...
Functions | |
void | starneig_blacs_pinfo (int *my_rank, int *rank_count) |
Queries process rank information. More... | |
int | starneig_blacs_get (starneig_blacs_context_t context, starneig_blacs_query_id_t query) |
Returns BLACS context's internal defaults. More... | |
starneig_blacs_context_t | starneig_blacs_gridinit (starneig_blacs_context_t system_context, char *order, int rows, int cols) |
Initializes a BLACS process grid. More... | |
void | starneig_blacs_gridinfo (starneig_blacs_context_t context, int *rows, int *cols, int *row, int *col) |
Queries BLACS process grid information. More... | |
void | starneig_blacs_pcoord (starneig_blacs_context_t context, int process, int *row, int *col) |
Queries BLACS process grid coordinates. More... | |
void | starneig_blacs_gridexit (starneig_blacs_context_t context) |
Releases process grid specific resources. More... | |
void | starneig_blacs_exit (int cont) |
Releases all contexts and related resources. More... | |
int | starneig_blacs_numroc (int n, int nb, int iproc, int isrcproc, int nprocs) |
Computes the number of matrix rows/columns owned by a given process. More... | |
int | starneig_numroc (int n, int nb, int iproc, int isrcproc, int nprocs) |
Computes the number of matrix rows/columns owned by a given process. Deprecated. More... | |
int | starneig_blacs_descinit (struct starneig_blacs_descr *descr, int m, int n, int sm, int sn, int irsrc, int icsrc, starneig_blacs_context_t context, int ld) |
Initializes a BLACS descriptor. More... | |
int | starneig_descinit (struct starneig_blacs_descr *descr, int m, int n, int sm, int sn, int irsrc, int icsrc, starneig_blacs_context_t context, int ld) |
Initializes a BLACS descriptor. Deprecated. More... | |
Query indeces | |
typedef int | starneig_blacs_query_id_t |
Data type for blacs_get() function query id. | |
#define | STARNEIG_BLACS_GET_DEFAULT_CONTEXT 0 |
Query id for getting the default system context. | |
Data types and helper functions for BLACS.
void starneig_blacs_pinfo | ( | int * | my_rank, |
int * | rank_count | ||
) |
Queries process rank information.
[out] | my_rank | An unique process id (rank). |
[out] | rank_count | The total number of processes (ranks) available. |
int starneig_blacs_get | ( | starneig_blacs_context_t | context, |
starneig_blacs_query_id_t | query | ||
) |
Returns BLACS context's internal defaults.
[in] | context | The BLACS context. |
[in] | query | The query id. |
starneig_blacs_context_t starneig_blacs_gridinit | ( | starneig_blacs_context_t | system_context, |
char * | order, | ||
int | rows, | ||
int | cols | ||
) |
Initializes a BLACS process grid.
[in] | system_context | The system BLACS context to be used in creating the process grid. |
[in] | order | The process mapping order. "R" : Use row-major natural ordering. "C" : Use column-major natural ordering. ELSE: Use row-major natural ordering. |
[in] | rows | The number of rows in the process grid. |
[in] | cols | The number of columns in the process grid. |
void starneig_blacs_gridinfo | ( | starneig_blacs_context_t | context, |
int * | rows, | ||
int * | cols, | ||
int * | row, | ||
int * | col | ||
) |
Queries BLACS process grid information.
[in] | context | The BLACS context. |
[out] | rows | The number of rows in the process grid. |
[out] | cols | The number of columns in the process grid. |
[out] | row | The row coordinate of the calling process. |
[out] | col | The column coordinate of the calling process. |
void starneig_blacs_pcoord | ( | starneig_blacs_context_t | context, |
int | process, | ||
int * | row, | ||
int * | col | ||
) |
Queries BLACS process grid coordinates.
[in] | context | The BLACS context. |
[in] | process | The process id (rank). |
[out] | row | The row coordinate of the process. |
[out] | col | The column coordinate of the process. |
void starneig_blacs_gridexit | ( | starneig_blacs_context_t | context | ) |
Releases process grid specific resources.
[in] | context | The BLACS context. |
void starneig_blacs_exit | ( | int | cont | ) |
Releases all contexts and related resources.
[in] | cont | The continue flag. |
int starneig_blacs_numroc | ( | int | n, |
int | nb, | ||
int | iproc, | ||
int | isrcproc, | ||
int | nprocs | ||
) |
Computes the number of matrix rows/columns owned by a given process.
[in] | n | The number of rows/columns in the distributed matrix. |
[in] | nb | The block size. |
[in] | iproc | The coordinate of the process whose local array row or column is to be determined. |
[in] | isrcproc | The coordinate of the process that possesses the first row or column of the distributed matrix. |
[in] | nprocs | The total number processes over which the matrix is distributed. |
int starneig_numroc | ( | int | n, |
int | nb, | ||
int | iproc, | ||
int | isrcproc, | ||
int | nprocs | ||
) |
Computes the number of matrix rows/columns owned by a given process. Deprecated.
int starneig_blacs_descinit | ( | struct starneig_blacs_descr * | descr, |
int | m, | ||
int | n, | ||
int | sm, | ||
int | sn, | ||
int | irsrc, | ||
int | icsrc, | ||
starneig_blacs_context_t | context, | ||
int | ld | ||
) |
Initializes a BLACS descriptor.
[out] | descr | The matrix descriptor. |
[in] | m | The number of rows in the matrix. |
[in] | n | The number of columns in the matrix. |
[in] | sm | The number of rows in a distributed block. |
[in] | sn | The number of columns in a distributed block. |
[in] | irsrc | The process grid row over which the first row is distributed. |
[in] | icsrc | The process grid column over which the first column is distributed. |
[in] | context | The BLACS context. |
[in] | ld | The local array leading dimension. |
int starneig_descinit | ( | struct starneig_blacs_descr * | descr, |
int | m, | ||
int | n, | ||
int | sm, | ||
int | sn, | ||
int | irsrc, | ||
int | icsrc, | ||
starneig_blacs_context_t | context, | ||
int | ld | ||
) |
Initializes a BLACS descriptor. Deprecated.