BLACS grid related routines.
More...
|
subroutine | initgrid (self, nrow, ncol, colmajor, masterrow, mastercol, context) |
| Creates processor grid.
|
|
subroutine | initgrids (self, ngrid, nrow, ncol, colmajor, masterrow, mastercol, context, mastergrid) |
| Creates equivalent independent subgrids.
|
|
subroutine | destruct (self) |
| Destructs processor grid.
|
|
subroutine | reset (self) |
| Resets structure to its uninitialized value.
|
|
BLACS grid related routines.
subroutine blacsgrid_module::destruct |
( |
class(blacsgrid), intent(inout) |
self | ) |
|
|
private |
Destructs processor grid.
- Parameters
-
mygrid | BLACS grid descriptor. |
subroutine blacsgrid_module::initgrid |
( |
class(blacsgrid), intent(inout) |
self, |
|
|
integer, intent(in) |
nrow, |
|
|
integer, intent(in) |
ncol, |
|
|
logical, intent(in), optional |
colmajor, |
|
|
integer, intent(in), optional |
masterrow, |
|
|
integer, intent(in), optional |
mastercol, |
|
|
integer, intent(in), optional |
context |
|
) |
| |
|
private |
Creates processor grid.
Sets up a rectangular processor grid. All processes must call this routine collectively. If size of the grid is smaller than the number of available processes, those processes not fitting into the grid will obtain an uninitialized grid descriptor (with iproc = -1) at return.
- Parameters
-
self | BLACS grid descriptor. |
nrow | Number of processor rows. |
ncol | Number of processor columns. |
colmajor | If .true., processes will be aligned in column major order otherwise in row major order. (Default: .false.) |
masterrow | Master row in each subgrid. |
mastercol | Master column in each grid. |
context | BLACS system context (default: default system context) |
subroutine blacsgrid_module::initgrids |
( |
class(blacsgrid), intent(inout) |
self, |
|
|
integer |
ngrid, |
|
|
integer, intent(in) |
nrow, |
|
|
integer, intent(in) |
ncol, |
|
|
logical, intent(in), optional |
colmajor, |
|
|
integer, intent(in), optional |
masterrow, |
|
|
integer, intent(in), optional |
mastercol, |
|
|
integer, intent(in), optional |
context, |
|
|
class(blacsgrid), intent(out), optional |
mastergrid |
|
) |
| |
|
private |
Creates equivalent independent subgrids.
Sets up a independent rectangular processor grids. All processes must call this routine at collectively. If size of all grids is smaller than the number of available processes, those processes not fitting into any grid will obtain an uninitialized grid descriptor (with iproc = -1) at return. All other processes will obtain a grid descriptor for the subgrid they belong to.
- Parameters
-
self | BLACS grid descriptor |
ngrid | Nr. of grids |
nrow | Number of rows in every grid |
ncol | Number of columns in every grid |
colmajor | If .true., processes will be aligned in column major order otherwise in row major order. (Default: .false.) |
masterrow | Master row in each subgrid. |
mastercol | Master column in each grid. |
context | BLACS system context (default: default system context) |
mastergrid | If present, an additional (1, ngrid) shaped grid is created which contains only the master nodes from all grids. |
subroutine blacsgrid_module::reset |
( |
class(blacsgrid), intent(inout) |
self | ) |
|
|
private |
Resets structure to its uninitialized value.
- Parameters
-
mygrid | BLACS grid descriptor. |
The documentation for this module was generated from the following file: