create_reshape_32 Subroutine

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

Creates reshape datatypes from 3d bricks to 2d pencils

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_32~~CallsGraph proc~create_reshape_32 create_reshape_32 mpi_type_commit mpi_type_commit proc~create_reshape_32->mpi_type_commit mpi_type_contiguous mpi_type_contiguous proc~create_reshape_32->mpi_type_contiguous mpi_type_create_resized mpi_type_create_resized proc~create_reshape_32->mpi_type_create_resized mpi_type_vector mpi_type_vector proc~create_reshape_32->mpi_type_vector proc~free_datatypes free_datatypes proc~create_reshape_32->proc~free_datatypes mpi_type_free mpi_type_free proc~free_datatypes->mpi_type_free

Called by

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