Documentation for module cp_para_env

type to store parallelization informations (at the moment assumes 1d position and uses mpi)

source: cp_para_env.F
Loading...

public Subroutines/Functions:

creates a cart (multidimensional parallel environment)
SUBROUTINE
cp_cart_release (cart)
releases the given cart
creates a new para environment
releases the para object (to be called when you don't want anymore the shared copy of this object)
retains the para object (to be called when you want to keep a shared copy of this object)

SUBROUTINEcp_cart_create(cart, group, ndims, owns_group)

creates a cart (multidimensional parallel environment)

Arguments:
POINTER
:: cart the cart environment to create
INTEGER,
INTENT(in)
:: group the mpi communicator
INTEGER,
INTENT(in)
:: ndims the number of dimensions of the cart
LOGICAL,
INTENT(in),
OPTIONAL
:: owns_group if this object owns the underlying cart (and should free it)

SUBROUTINEcp_cart_release(cart)

releases the given cart

Arguments:
POINTER
:: cart the cart to release

SUBROUTINEcp_para_env_create(para_env, group, source, mepos, num_pe, owns_group)

creates a new para environment

Arguments:
POINTER
:: para_env the new parallel environment
INTEGER,
INTENT(in)
:: group the id of the actual mpi_group
INTEGER,
INTENT(in),
OPTIONAL
:: source the id of the special (master) processor (defaults to 0)
INTEGER,
INTENT(in),
OPTIONAL
:: mepos the id of the actual processor
INTEGER,
INTENT(in),
OPTIONAL
:: num_pe the number of processors in the group
LOGICAL,
INTENT(in),
OPTIONAL
:: owns_group if the group is owned by this object (defaults to true)

SUBROUTINEcp_para_env_release(para_env)

releases the para object (to be called when you don't want anymore the shared copy of this object)

Arguments:
POINTER
:: para_env the new group

SUBROUTINEcp_para_env_retain(para_env)

retains the para object (to be called when you want to keep a shared copy of this object)

Arguments:
POINTER
:: para_env the new group