|
|
| blacs_context (const char order) |
| |
|
| blacs_context (const IT rows, const IT cols, const char order='R') |
| |
|
| blacs_context (const blacs_context &other) |
| |
|
| blacs_context (blacs_context &&) noexcept=delete |
| |
|
blacs_context & | operator= (const blacs_context &)=delete |
| |
|
blacs_context & | operator= (blacs_context &&) noexcept=delete |
| |
| auto | desc_g (const IT num_rows, const IT num_cols) |
| | Generates a descriptor for a global matrix.
|
| |
| auto | desc_l (const IT num_rows, const IT num_cols, const IT row_block, const IT col_block, const IT lead) |
| | Generates a descriptor for a local matrix.
|
| |
|
auto | desc_l (const IT num_rows, const IT num_cols, const IT block, const IT lead) |
| |
|
template<data_t DT> |
| auto | scatter (const full_mat< DT, IT > &A, const desc< IT > &desc_a, std::vector< DT > &B, const desc< IT > &desc_b) |
| |
|
template<data_t DT> |
| auto | gather (const std::vector< DT > &A, const desc< IT > &desc_a, const full_mat< DT, IT > &B, const desc< IT > &desc_b) |
| |
|
auto | copy_to (const IT *A, const IT *desc_a, IT *B, const IT *desc_b) |
| |
|
bool | is_valid () const |
| |
|
auto | row_block (const IT n) const |
| | Computes the row block size.
|
| |
|
auto | col_block (const IT n) const |
| | Computes the column block size.
|
| |
| auto | rows (const IT n, const IT nb) const |
| | Computes the number of local rows of the current process.
|
| |
| auto | cols (const IT n, const IT nb) const |
| | Computes the number of local columns of the current process.
|
| |
| IT | amx (IT number) const |
| | Perform the global amx operation.
|
| |
| IT | amn (IT number) const |
| | Perform the global amn operation.
|
| |
|
|
IT | n_rows |
| |
|
IT | n_cols |
| |
|
IT | context {-1} |
| |
|
IT | rank {-1} |
| |
|
IT | size {-1} |
| |
|
IT | my_row {-1} |
| |
|
IT | my_col {-1} |
| |
◆ amn()
Perform the global amn operation.
This function takes an integer number, which may be different on each process, and computes the minimum value across all processes. The result is broadcast to all processes.
For example, if the input number is 0, 1, 2, 3 on four processes, this function will return 0 on all processes.
- Parameters
-
| number | The integer number to be updated. |
- Returns
- The updated integer number.
◆ amx()
Perform the global amx operation.
This function takes an integer number, which may be different on each process, and computes the maximum value across all processes. The result is broadcast to all processes.
For example, if the input number is 0, 1, 2, 3 on four processes, this function will return 3 on all processes.
- Parameters
-
| number | The integer number to be updated. |
- Returns
- The updated integer number.
◆ cols()
Computes the number of local columns of the current process.
This function calculates the number of columns of the current process in a distributed matrix using the numroc function.
- Parameters
-
| n | The total number of columns in the global matrix. |
| nb | The block size used for the distribution. |
- Returns
- The number of local columns of the calling process.
◆ desc_g()
Generates a descriptor for a global matrix.
This function initializes and returns a descriptor for a global matrix with the specified number of rows and columns.
- Template Parameters
-
| IT | The integer type used for matrix dimensions. |
- Parameters
-
| num_rows | The number of rows in the global matrix. |
| num_cols | The number of columns in the global matrix. |
- Returns
- A descriptor for the global matrix.
◆ desc_l()
Generates a descriptor for a local matrix.
This function initializes a descriptor for a local matrix with the given dimensions and block sizes.
- Template Parameters
-
| IT | The integer type used for matrix dimensions and block sizes. |
- Parameters
-
| num_rows | The number of rows in the global matrix. |
| num_cols | The number of columns in the global matrix. |
| row_block | The block size in the row dimension. |
| col_block | The block size in the column dimension. |
| lead | The leading dimension of the local matrix. |
- Returns
- A descriptor for the local matrix.
◆ rows()
Computes the number of local rows of the current process.
This function calculates the number of rows of the current process in a distributed matrix using the numroc function.
- Parameters
-
| n | The total number of rows in the global matrix. |
| nb | The block size used for the distribution. |
- Returns
- The number of local rows of the current process.
The documentation for this class was generated from the following file: