Octopus
par_vec_oct_m::par_vec_t Type Reference

Parallel information. More...

Detailed Description

Parallel information.

This class contains information, necessary to correctly exchange ghost points when using parallel domain decomposition.

Definition at line 210 of file par_vec.F90.

Private Attributes

integer rank
 Our rank in the communicator. More...
 
integer partno
 Partition number of the current process. More...
 
integer, dimension(:), allocatable ghost_sendpos
 The positions of the points for the ghost communication. More...
 
integer, dimension(:), allocatable ghost_rdispls
 Ghost points receive displacements. More...
 
integer, dimension(:), allocatable ghost_sdispls
 Ghost points send displacements. More...
 
integer, dimension(:), allocatable ghost_rcounts
 Number of ghost points to receive. More...
 
integer, dimension(:), allocatable ghost_scounts
 Number of ghost points to send. More...
 
integer ghost_scount
 Total number of ghost points to send. More...
 
integer, dimension(:), allocatable ghost_sendmap
 map for packing ghost points More...
 
integer, dimension(:), allocatable ghost_recvmap
 map for unpacking ghost points More...
 
type(accel_mem_tbuff_sendmap
 buffer for send map on GPUs More...
 
type(accel_mem_tbuff_recvmap
 buffer for recv map on GPUs More...
 
type(mpi_grp_tmpi_grp
 MPI group to use. More...
 
integer npart
 Number of partitions. More...
 
integer(int64) np_global
 Number of points in mesh. More...
 
integer, dimension(:), allocatable np_local_vec
 How many points has partition r? Global vector; npart elements. More...
 
integer np_local
 How many points has running partition? Local value. More...
 
integer(int64), dimension(:), allocatable, private xlocal_vec
 Points of partition r start at xlocal_vec(r) in local. Global start point of the local index. Global vector; npart elements. More...
 
integer(int64) xlocal
 Starting index of running process in local(:) vector. Local value. More...
 
integer(int64), dimension(:), allocatable, private local
 Local points of running process Local vector; np_local elements. More...
 
integer, dimension(:), allocatable recv_count
 Number of points to receive from all the other processes. More...
 
integer, dimension(:), allocatable send_count
 Number of points to send to all the other processes in a MPI_Alltoallv. More...
 
integer, dimension(:), allocatable recv_disp
 Displacement of points to receive from all the other processes. More...
 
integer, dimension(:), allocatable send_disp
 Displacement of points to send to all the other processes. More...
 
integer(int64), dimension(:), allocatable sendmap
 map for packing initial global points More...
 
integer(int64), dimension(:), allocatable recvmap
 map for unpacking initial global points in a MPI_Alltoallv. More...
 
integer np_bndry
 Number of local boundary points. More...
 
integer(int64), dimension(:), allocatable, private bndry
 local to global mapping of boundary points, np_bndry elements More...
 
type(lihash_t), private global
 global contains the global -> local mapping More...
 
integer np_ghost
 number of local ghost points More...
 
integer(int64), dimension(:), allocatable, private ghost
 Global indices of ghost points, np_ghost elements. More...
 

Member Data Documentation

◆ rank

integer par_vec_oct_m::par_vec_t::rank
private

Our rank in the communicator.

Definition at line 214 of file par_vec.F90.

◆ partno

integer par_vec_oct_m::par_vec_t::partno
private

Partition number of the current process.

Definition at line 215 of file par_vec.F90.

◆ ghost_sendpos

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_sendpos
private

The positions of the points for the ghost communication.

Definition at line 216 of file par_vec.F90.

◆ ghost_rdispls

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_rdispls
private

Ghost points receive displacements.

Definition at line 218 of file par_vec.F90.

◆ ghost_sdispls

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_sdispls
private

Ghost points send displacements.

Definition at line 219 of file par_vec.F90.

◆ ghost_rcounts

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_rcounts
private

Number of ghost points to receive.

Definition at line 220 of file par_vec.F90.

◆ ghost_scounts

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_scounts
private

Number of ghost points to send.

Definition at line 221 of file par_vec.F90.

◆ ghost_scount

integer par_vec_oct_m::par_vec_t::ghost_scount
private

Total number of ghost points to send.

Definition at line 222 of file par_vec.F90.

◆ ghost_sendmap

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_sendmap
private

map for packing ghost points

Definition at line 223 of file par_vec.F90.

◆ ghost_recvmap

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::ghost_recvmap
private

map for unpacking ghost points

Definition at line 224 of file par_vec.F90.

◆ buff_sendmap

type(accel_mem_t) par_vec_oct_m::par_vec_t::buff_sendmap
private

buffer for send map on GPUs

Definition at line 225 of file par_vec.F90.

◆ buff_recvmap

type(accel_mem_t) par_vec_oct_m::par_vec_t::buff_recvmap
private

buffer for recv map on GPUs

Definition at line 226 of file par_vec.F90.

◆ mpi_grp

type(mpi_grp_t) par_vec_oct_m::par_vec_t::mpi_grp
private

MPI group to use.

Definition at line 229 of file par_vec.F90.

◆ npart

integer par_vec_oct_m::par_vec_t::npart
private

Number of partitions.

Definition at line 230 of file par_vec.F90.

◆ np_global

integer(int64) par_vec_oct_m::par_vec_t::np_global
private

Number of points in mesh.

Definition at line 231 of file par_vec.F90.

◆ np_local_vec

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::np_local_vec
private

How many points has partition r? Global vector; npart elements.

Definition at line 233 of file par_vec.F90.

◆ np_local

integer par_vec_oct_m::par_vec_t::np_local
private

How many points has running partition? Local value.

Definition at line 235 of file par_vec.F90.

◆ xlocal_vec

integer(int64), dimension(:), allocatable, private par_vec_oct_m::par_vec_t::xlocal_vec
private

Points of partition r start at xlocal_vec(r) in local. Global start point of the local index. Global vector; npart elements.

Definition at line 237 of file par_vec.F90.

◆ xlocal

integer(int64) par_vec_oct_m::par_vec_t::xlocal
private

Starting index of running process in local(:) vector. Local value.

Definition at line 241 of file par_vec.F90.

◆ local

integer(int64), dimension(:), allocatable, private par_vec_oct_m::par_vec_t::local
private

Local points of running process Local vector; np_local elements.

Definition at line 244 of file par_vec.F90.

◆ recv_count

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::recv_count
private

Number of points to receive from all the other processes.

Definition at line 246 of file par_vec.F90.

◆ send_count

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::send_count
private

Number of points to send to all the other processes in a MPI_Alltoallv.

Definition at line 247 of file par_vec.F90.

◆ recv_disp

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::recv_disp
private

Displacement of points to receive from all the other processes.

Definition at line 249 of file par_vec.F90.

◆ send_disp

integer, dimension(:), allocatable par_vec_oct_m::par_vec_t::send_disp
private

Displacement of points to send to all the other processes.

Definition at line 250 of file par_vec.F90.

◆ sendmap

integer(int64), dimension(:), allocatable par_vec_oct_m::par_vec_t::sendmap
private

map for packing initial global points

Definition at line 251 of file par_vec.F90.

◆ recvmap

integer(int64), dimension(:), allocatable par_vec_oct_m::par_vec_t::recvmap
private

map for unpacking initial global points in a MPI_Alltoallv.

Definition at line 252 of file par_vec.F90.

◆ np_bndry

integer par_vec_oct_m::par_vec_t::np_bndry
private

Number of local boundary points.

Definition at line 254 of file par_vec.F90.

◆ bndry

integer(int64), dimension(:), allocatable, private par_vec_oct_m::par_vec_t::bndry
private

local to global mapping of boundary points, np_bndry elements

Definition at line 256 of file par_vec.F90.

◆ global

type(lihash_t), private par_vec_oct_m::par_vec_t::global
private

global contains the global -> local mapping

Definition at line 258 of file par_vec.F90.

◆ np_ghost

integer par_vec_oct_m::par_vec_t::np_ghost
private

number of local ghost points

Definition at line 260 of file par_vec.F90.

◆ ghost

integer(int64), dimension(:), allocatable, private par_vec_oct_m::par_vec_t::ghost
private

Global indices of ghost points, np_ghost elements.

Definition at line 261 of file par_vec.F90.


The documentation for this type was generated from the following file: