create Subroutine

private subroutine create(self, rank, aligned_dim, counts, comms, lstarts, lcounts, is_distributed)

Creates pencil

Type Bound

pencil

Arguments

Type IntentOptional Attributes Name
class(pencil), intent(inout) :: self

Pencil

integer(kind=int8), intent(in) :: rank

Rank of buffer

integer(kind=int8), intent(in) :: aligned_dim

Position of aligned dimension

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

Global counts

type(MPI_Comm), intent(in) :: comms(:)

Grid communicators

integer(kind=int32), intent(in), optional :: lstarts(:)

Local starts

integer(kind=int32), intent(in), optional :: lcounts(:)

Local counts

logical, intent(in), optional :: is_distributed

Is data distributed


Calls

proc~~create~11~~CallsGraph proc~create~11 pencil%create mpi_allgather mpi_allgather proc~create~11->mpi_allgather mpi_comm_size mpi_comm_size proc~create~11->mpi_comm_size proc~check_if_even check_if_even proc~create~11->proc~check_if_even proc~destroy~11 pencil%destroy proc~create~11->proc~destroy~11 proc~get_local_size get_local_size proc~create~11->proc~get_local_size proc~check_if_even->mpi_allgather proc~check_if_even->mpi_comm_size proc~get_local_size->mpi_allgather proc~get_local_size->mpi_comm_size mpi_comm_rank mpi_comm_rank proc~get_local_size->mpi_comm_rank

Called by

proc~~create~11~~CalledByGraph proc~create~11 pencil%create proc~create_pencils_and_comm create_pencils_and_comm proc~create_pencils_and_comm->proc~create~11 proc~create~9 reshape_plan%create proc~create~9->proc~create~11 proc~from_bricks pencil_init%from_bricks proc~from_bricks->proc~create~11 proc~autotune_grid autotune_grid proc~autotune_grid->proc~create_pencils_and_comm proc~create~16 transpose_plan%create proc~create~16->proc~create_pencils_and_comm proc~autotune_grid_decomposition autotune_grid_decomposition proc~create~16->proc~autotune_grid_decomposition proc~autotune_grid_decomposition->proc~autotune_grid