FMS 2025.01-dev
Flexible Modeling System
|
Handles PSETs(Persistent Shared-memory Execution Threads) for mpp modules. More...
Data Types | |
interface | mpp_pset_broadcast_ptr |
interface | mpp_pset_print_chksum |
type | mpp_pset_type |
interface | mpp_recv_ptr |
interface | mpp_send_ptr |
Functions/Subroutines | |
subroutine, public | mpp_pset_broadcast (pset, a) |
subroutine | mpp_pset_broadcast_ptr_array (pset, ptr) |
subroutine | mpp_pset_broadcast_ptr_array (pset, ptr) |
subroutine | mpp_pset_broadcast_ptr_scalar (pset, ptr) |
subroutine | mpp_pset_broadcast_ptr_scalar (pset, ptr) |
subroutine, public | mpp_pset_check_ptr (pset, ptr) |
subroutine, public | mpp_pset_create (npset, pset, stacksize, pelist, commid) |
subroutine, public | mpp_pset_delete (pset) |
subroutine, public | mpp_pset_get_root_pelist (pset, pelist, commid) |
subroutine, public | mpp_pset_init |
integer function, public | mpp_pset_numroots (pset) |
subroutine | mpp_pset_print_chksum_1d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_1d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_2d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_2d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_3d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_3d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_4d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_4d (pset, caller, array) |
subroutine, public | mpp_pset_print_stack_chksum (pset, caller) |
logical function, public | mpp_pset_root (pset) |
subroutine, public | mpp_pset_segment_array (pset, ls, le, lsp, lep) |
subroutine, public | mpp_pset_stack_push (pset, ptr, len) |
subroutine, public | mpp_pset_stack_reset (pset) |
subroutine, public | mpp_pset_sync (pset) |
subroutine | mpp_recv_ptr_array (ptr, pe) |
subroutine | mpp_recv_ptr_array (ptr, pe) |
subroutine | mpp_recv_ptr_scalar (ptr, pe) |
subroutine | mpp_recv_ptr_scalar (ptr, pe) |
subroutine | mpp_send_ptr_array (ptr, pe) |
subroutine | mpp_send_ptr_array (ptr, pe) |
subroutine | mpp_send_ptr_scalar (ptr, pe) |
subroutine | mpp_send_ptr_scalar (ptr, pe) |
subroutine | mpp_translate_remote_ptr (ptr, pe) |
Variables | |
integer | commid |
integer | commid |
integer | hiwm |
logical | initialized =.FALSE. |
integer | lstack |
integer | maxstack |
logical | module_is_initialized =.FALSE. |
character(len=32) | name |
integer | next_in_pset |
integer | npset |
integer(pointer_kind) | p_stack |
integer, dimension(:), allocatable | pelist |
integer | pos |
integer | prev_in_pset |
integer, dimension(:), allocatable | pset |
logical | root |
integer | root_in_pset |
integer, dimension(:), allocatable | root_pelist |
real, dimension(:), allocatable | stack |
character(len=256) | text |
logical | verbose =.FALSE. |
Handles PSETs(Persistent Shared-memory Execution Threads) for mpp modules.
interface mpp_pset_mod::mpp_pset_broadcast_ptr |
Definition at line 49 of file mpp_pset.F90.
Public Member Functions | |
subroutine | mpp_pset_broadcast_ptr_array (pset, ptr) |
subroutine | mpp_pset_broadcast_ptr_scalar (pset, ptr) |
interface mpp_pset_mod::mpp_pset_print_chksum |
Definition at line 61 of file mpp_pset.F90.
Public Member Functions | |
subroutine | mpp_pset_print_chksum_1d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_2d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_3d (pset, caller, array) |
subroutine | mpp_pset_print_chksum_4d (pset, caller, array) |
type mpp_pset_mod::mpp_pset_type |
Definition at line 68 of file mpp_pset.F90.
Public Attributes | |
integer | commid |
integer | hiwm |
logical | initialized =.FALSE. |
integer | lstack |
integer | maxstack |
character(len=32) | name |
integer | next_in_pset |
integer(pointer_kind) | p_stack |
integer, dimension(:), allocatable | pelist |
integer | pos |
integer | prev_in_pset |
integer, dimension(:), allocatable | pset |
logical | root |
integer | root_in_pset |
integer, dimension(:), allocatable | root_pelist |
real, dimension(:), allocatable | stack |
Private Attributes | |
integer | npset |
interface mpp_pset_mod::mpp_recv_ptr |
Definition at line 57 of file mpp_pset.F90.
Public Member Functions | |
subroutine | mpp_recv_ptr_array (ptr, pe) |
subroutine | mpp_recv_ptr_scalar (ptr, pe) |
interface mpp_pset_mod::mpp_send_ptr |
Definition at line 53 of file mpp_pset.F90.
Public Member Functions | |
subroutine | mpp_send_ptr_array (ptr, pe) |
subroutine | mpp_send_ptr_scalar (ptr, pe) |
subroutine, public mpp_pset_broadcast | ( | type(mpp_pset_type), intent(in) | pset, |
real, intent(inout) | a | ||
) |
Definition at line 290 of file mpp_pset.F90.
subroutine mpp_pset_broadcast_ptr_array | ( | type(mpp_pset_type), intent(in) | pset, |
integer(pointer_kind), dimension(:), intent(inout) | ptr | ||
) |
Definition at line 329 of file mpp_pset.F90.
|
private |
Definition at line 329 of file mpp_pset.F90.
subroutine mpp_pset_broadcast_ptr_scalar | ( | type(mpp_pset_type), intent(in) | pset, |
integer(pointer_kind), intent(inout) | ptr | ||
) |
Definition at line 308 of file mpp_pset.F90.
|
private |
Definition at line 308 of file mpp_pset.F90.
subroutine, public mpp_pset_check_ptr | ( | type(mpp_pset_type), intent(in) | pset, |
integer(pointer_kind), intent(in) | ptr | ||
) |
Definition at line 351 of file mpp_pset.F90.
subroutine, public mpp_pset_create | ( | integer, intent(in) | npset, |
type(mpp_pset_type), intent(inout) | pset, | ||
integer, intent(in), optional | stacksize, | ||
integer, dimension(:), intent(in), optional | pelist, | ||
integer, intent(in), optional | commid | ||
) |
Definition at line 103 of file mpp_pset.F90.
subroutine, public mpp_pset_delete | ( | type(mpp_pset_type), intent(inout) | pset | ) |
Definition at line 214 of file mpp_pset.F90.
subroutine, public mpp_pset_get_root_pelist | ( | type(mpp_pset_type), intent(in) | pset, |
integer, dimension(:), intent(out) | pelist, | ||
integer, intent(out), optional | commid | ||
) |
Definition at line 561 of file mpp_pset.F90.
subroutine, public mpp_pset_init |
Definition at line 99 of file mpp_pset.F90.
integer function, public mpp_pset_numroots | ( | type(mpp_pset_type), intent(in) | pset | ) |
Definition at line 551 of file mpp_pset.F90.
|
private |
Definition at line 460 of file mpp_pset.F90.
subroutine mpp_pset_print_chksum_1d | ( | type(mpp_pset_type), intent(in) | pset, |
character(len=*), intent(in) | caller, | ||
real, dimension(:), intent(in) | array | ||
) |
Definition at line 460 of file mpp_pset.F90.
|
private |
Definition at line 489 of file mpp_pset.F90.
subroutine mpp_pset_print_chksum_2d | ( | type(mpp_pset_type), intent(in) | pset, |
character(len=*), intent(in) | caller, | ||
real, dimension(:,:), intent(in) | array | ||
) |
Definition at line 489 of file mpp_pset.F90.
|
private |
Definition at line 503 of file mpp_pset.F90.
subroutine mpp_pset_print_chksum_3d | ( | type(mpp_pset_type), intent(in) | pset, |
character(len=*), intent(in) | caller, | ||
real, dimension(:,:,:), intent(in) | array | ||
) |
Definition at line 503 of file mpp_pset.F90.
|
private |
Definition at line 517 of file mpp_pset.F90.
subroutine mpp_pset_print_chksum_4d | ( | type(mpp_pset_type), intent(in) | pset, |
character(len=*), intent(in) | caller, | ||
real, dimension(:,:,:,:), intent(in) | array | ||
) |
Definition at line 517 of file mpp_pset.F90.
subroutine, public mpp_pset_print_stack_chksum | ( | type(mpp_pset_type), intent(in) | pset, |
character(len=*), intent(in) | caller | ||
) |
Definition at line 531 of file mpp_pset.F90.
logical function, public mpp_pset_root | ( | type(mpp_pset_type), intent(in) | pset | ) |
Definition at line 542 of file mpp_pset.F90.
subroutine, public mpp_pset_segment_array | ( | type(mpp_pset_type), intent(in) | pset, |
integer, intent(in) | ls, | ||
integer, intent(in) | le, | ||
integer, intent(out) | lsp, | ||
integer, intent(out) | lep | ||
) |
Definition at line 383 of file mpp_pset.F90.
subroutine, public mpp_pset_stack_push | ( | type(mpp_pset_type), intent(inout) | pset, |
integer(pointer_kind), intent(out) | ptr, | ||
integer, intent(in) | len | ||
) |
Definition at line 410 of file mpp_pset.F90.
subroutine, public mpp_pset_stack_reset | ( | type(mpp_pset_type), intent(inout) | pset | ) |
Definition at line 444 of file mpp_pset.F90.
subroutine, public mpp_pset_sync | ( | type(mpp_pset_type), intent(in) | pset | ) |
Definition at line 278 of file mpp_pset.F90.
|
private |
Definition at line 259 of file mpp_pset.F90.
subroutine mpp_recv_ptr_array | ( | integer(pointer_kind), dimension(:), intent(inout) | ptr, |
integer, intent(in) | pe | ||
) |
Definition at line 259 of file mpp_pset.F90.
subroutine mpp_recv_ptr_scalar | ( | integer(pointer_kind), intent(inout) | ptr, |
integer, intent(in) | pe | ||
) |
Definition at line 250 of file mpp_pset.F90.
|
private |
Definition at line 250 of file mpp_pset.F90.
subroutine mpp_send_ptr_array | ( | integer(pointer_kind), dimension(:), intent(in) | ptr, |
integer, intent(in) | pe | ||
) |
Definition at line 241 of file mpp_pset.F90.
|
private |
Definition at line 241 of file mpp_pset.F90.
|
private |
Definition at line 232 of file mpp_pset.F90.
subroutine mpp_send_ptr_scalar | ( | integer(pointer_kind), intent(in) | ptr, |
integer, intent(in) | pe | ||
) |
Definition at line 232 of file mpp_pset.F90.
|
private |
Definition at line 271 of file mpp_pset.F90.
|
private |
Definition at line 44 of file mpp_pset.F90.
integer commid |
Definition at line 83 of file mpp_pset.F90.
integer hiwm |
Definition at line 82 of file mpp_pset.F90.
logical initialized =.FALSE. |
Definition at line 85 of file mpp_pset.F90.
integer lstack |
Definition at line 82 of file mpp_pset.F90.
integer maxstack |
Definition at line 82 of file mpp_pset.F90.
|
private |
Definition at line 46 of file mpp_pset.F90.
character(len=32) name |
Definition at line 84 of file mpp_pset.F90.
integer next_in_pset |
Definition at line 71 of file mpp_pset.F90.
|
private |
Definition at line 70 of file mpp_pset.F90.
integer(pointer_kind) p_stack |
Definition at line 81 of file mpp_pset.F90.
integer, dimension(:), allocatable pelist |
Definition at line 78 of file mpp_pset.F90.
integer pos |
Definition at line 74 of file mpp_pset.F90.
integer prev_in_pset |
Definition at line 71 of file mpp_pset.F90.
integer, dimension(:), allocatable pset |
Definition at line 80 of file mpp_pset.F90.
logical root |
Definition at line 73 of file mpp_pset.F90.
integer root_in_pset |
Definition at line 72 of file mpp_pset.F90.
integer, dimension(:), allocatable root_pelist |
Definition at line 79 of file mpp_pset.F90.
real, dimension(:), allocatable stack |
Definition at line 77 of file mpp_pset.F90.
|
private |
Definition at line 47 of file mpp_pset.F90.
|
private |
Definition at line 45 of file mpp_pset.F90.