create_reshape_21 Subroutine

private subroutine create_reshape_21(send, send_counts, recv, recv_counts, base_type, base_storage, send_dtype, send_displ, recv_dtype, recv_displ)

Creates reshape datatypes for 2D data: from 2d bricks to 1d slabs

Arguments

Type IntentOptional Attributes Name
class(pencil), intent(in) :: send

Information about send buffer

integer(kind=int32), intent(in) :: send_counts(:)

Rank i is sending this counts

class(pencil), intent(in) :: recv

Information about send buffer

integer(kind=int32), intent(in) :: recv_counts(:)

Rank i is recieving this counts

type(MPI_Datatype), intent(in) :: base_type

Base MPI_Datatype

integer(kind=int64), intent(in) :: base_storage

Number of bytes needed to store single element

type(MPI_Datatype), intent(out) :: send_dtype

Datatype used to send data

integer(kind=int32), intent(out) :: send_displ

Send displacement in bytes

type(MPI_Datatype), intent(out) :: recv_dtype

Datatype used to recv data

integer(kind=int32), intent(out) :: recv_displ

Recv displacement in bytes


Calls

proc~~create_reshape_21~~CallsGraph proc~create_reshape_21 create_reshape_21 mpi_type_commit mpi_type_commit proc~create_reshape_21->mpi_type_commit mpi_type_contiguous mpi_type_contiguous proc~create_reshape_21->mpi_type_contiguous mpi_type_create_resized mpi_type_create_resized proc~create_reshape_21->mpi_type_create_resized mpi_type_vector mpi_type_vector proc~create_reshape_21->mpi_type_vector proc~free_datatypes free_datatypes proc~create_reshape_21->proc~free_datatypes mpi_type_free mpi_type_free proc~free_datatypes->mpi_type_free

Called by

proc~~create_reshape_21~~CalledByGraph proc~create_reshape_21 create_reshape_21 proc~create~3 reshape_handle_datatype%create proc~create~3->proc~create_reshape_21