Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=*), | private, | parameter | :: | moduleN | = | 'dbcsr_mp_methods' |
Creates new process grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env |
multiprocessor environment |
||
type(mp_comm_type), | intent(in) | :: | mp_group | |||
integer, | intent(in), | DIMENSION(0:, 0:) | :: | pgrid |
process grid |
|
integer, | intent(in) | :: | mynode |
my processor number |
||
integer, | intent(in), | optional | :: | numnodes |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | myprow |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | mypcol |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | source |
total number of processors (processes) |
Creates a new dbcsr_mp_obj based on a input template
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env | |||
type(mp_comm_type), | intent(in) | :: | mp_group | |||
integer, | optional, | DIMENSION(:, :), POINTER | :: | pgrid |
Optional, if not provided group is assumed to be a 2D cartesian communicator |
Checks whether this process is part of the message passing environment
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env | |||
integer, | intent(in) | :: | prow | |||
integer, | intent(in) | :: | pcol |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(in) | :: | mp_env |
Initializes a new process grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env |
Creates new process grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env |
multiprocessor environment |
||
type(mp_comm_type), | intent(in) | :: | mp_group | |||
integer, | intent(in), | DIMENSION(0:, 0:) | :: | pgrid |
process grid |
|
integer, | intent(in) | :: | mynode |
my processor number |
||
integer, | intent(in), | optional | :: | numnodes |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | myprow |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | mypcol |
total number of processors (processes) |
|
integer, | intent(in), | optional | :: | source |
total number of processors (processes) |
Creates a new dbcsr_mp_obj based on a input template
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env | |||
type(mp_comm_type), | intent(in) | :: | mp_group | |||
integer, | optional, | DIMENSION(:, :), POINTER | :: | pgrid |
Optional, if not provided group is assumed to be a 2D cartesian communicator |
Sets up MPI cartesian process grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(inout) | :: | mp_env |
multiprocessor environment |
Creates a sane mp_obj from the given MPI comm that is not a cartesian one (hack)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_env |
Message-passing environment object to create |
||
type(mp_comm_type), | intent(out) | :: | cart_group |
the created cartesian group (to be freed by the user) |
||
type(mp_comm_type), | intent(in) | :: | mp_group |
MPI group |
||
integer, | intent(in), | optional | :: | nprocs |
Number of processes |
|
integer, | intent(in), | optional, | DIMENSION(:) | :: | pgrid_dims |
Dimensions of MPI group |
Marks another use of the mp_env
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(inout) | :: | mp_env |
multiprocessor environment |
Transposes a multiprocessor environment
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_mp_obj), | intent(out) | :: | mp_t |
transposed multiprocessor environment |
||
type(dbcsr_mp_obj), | intent(in) | :: | mp |
original multiprocessor environment |