rdm_spawn_t Derived Type

type, public :: rdm_spawn_t


Source Code


Type Visibility Attributes Name Initial
integer, public :: nrows = 0
type(rdm_list_t), public :: rdm_send
integer, public, allocatable :: free_slots(:)
integer, public, allocatable :: init_free_slots(:)

Source Code

    type rdm_spawn_t
        ! The number of rows in the RDM.
        integer :: nrows = 0

        ! This object holds the spawning array for the RDM elements before
        ! they are communicated, as well as relevant metadata which is stored
        ! with the RDM list (see rdm_list_t). Note that the nelements component
        ! won't be used or relevant, since the list won't be contiguous.
        type(rdm_list_t) :: rdm_send

        ! free_slots(i) holds the next available spawning slot in
        ! rdm_send%elements for processor i.
        integer, allocatable :: free_slots(:)
        ! init_free_slots(i) holds the index in rdm_send%elements where the
        ! very first RDM element to be sent to process i will be added.
        integer, allocatable :: init_free_slots(:)
    end type rdm_spawn_t