Gather-scatter communication using device MPI. The arrays are indexed per PE like send_pe and @ recv_pe.
More...
|
| procedure, pass(this) | init (this, send_pe, recv_pe) |
| | Initialise MPI based communication method.
|
| |
| procedure, pass(this) | free (this) |
| | Deallocate MPI based communication method.
|
| |
| procedure, pass(this) | nbsend (this, u, n, deps, strm) |
| | Post non-blocking send operations.
|
| |
| procedure, pass(this) | nbrecv (this) |
| | Post non-blocking receive operations.
|
| |
| procedure, pass(this) | nbwait (this, u, n, op, strm) |
| | Wait for non-blocking operations.
|
| |
| procedure(gs_comm_init), deferred, pass | init gs_comm_init |
| |
| procedure(gs_comm_free), deferred, pass | free gs_comm_free |
| |
| procedure(gs_nbsend), deferred, pass | nbsend gs_nbsend |
| |
| procedure(gs_nbrecv), deferred, pass | nbrecv gs_nbrecv |
| |
| procedure(gs_nbwait), deferred, pass | nbwait gs_nbwait |
| |
| procedure, pass(this) | init_dofs (this) |
| |
| procedure, pass(this) | free_dofs (this) |
| |
| procedure, pass(this) | init_order (this, send_pe, recv_pe) |
| |
| procedure, pass(this) | free_order (this) |
| |
|
| type(gs_device_mpi_buf_t) | send_buf |
| |
| type(gs_device_mpi_buf_t) | recv_buf |
| |
| type(c_ptr), dimension(:), allocatable | stream |
| |
| type(c_ptr), dimension(:), allocatable | event |
| |
| integer | nb_strtgy |
| |
| type(c_ptr) | send_event = C_NULL_PTR |
| |
| type(stack_i4_t), dimension(:), allocatable | send_dof |
| | Send dof to shared-gs.
|
| |
| type(stack_i4_t), dimension(:), allocatable | recv_dof |
| | Recv dof to shared-gs.
|
| |
| integer, dimension(:), allocatable | send_pe |
| | Send order.
|
| |
| integer, dimension(:), allocatable | recv_pe |
| | Recv order.
|
| |
Definition at line 62 of file gs_device_mpi.F90.
◆ free() [1/2]
◆ free() [2/2]
◆ free_dofs()
◆ free_order()
◆ init() [1/2]
◆ init() [2/2]
◆ init_dofs()
◆ init_order()
◆ nbrecv() [1/2]
◆ nbrecv() [2/2]
◆ nbsend() [1/2]
| procedure, pass(this) gs_device_mpi::gs_device_mpi_t::nbsend |
( |
class(gs_device_mpi_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
u, |
|
|
integer, intent(in) |
n, |
|
|
type(c_ptr), intent(inout) |
deps, |
|
|
type(c_ptr), intent(inout) |
strm |
|
) |
| |
◆ nbsend() [2/2]
◆ nbwait() [1/2]
| procedure, pass(this) gs_device_mpi::gs_device_mpi_t::nbwait |
( |
class(gs_device_mpi_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
u, |
|
|
integer, intent(in) |
n, |
|
|
integer |
op, |
|
|
type(c_ptr), intent(inout) |
strm |
|
) |
| |
◆ nbwait() [2/2]
◆ event
◆ nb_strtgy
| integer gs_device_mpi::gs_device_mpi_t::nb_strtgy |
◆ recv_buf
◆ recv_dof
◆ recv_pe
◆ send_buf
◆ send_dof
◆ send_event
| type(c_ptr) gs_device_mpi::gs_device_mpi_t::send_event = C_NULL_PTR |
◆ send_pe
◆ stream
The documentation for this type was generated from the following file: