module fd4_globaldef_mod module fd4_domain_mod module fd4_mpi_mod module fd4_block_mod module rbtree_fd4_block_mod module stack_modVariables:
integer (kind=i_k), public :: fd4_part_metis_dump = 0Subroutines and functions:
public subroutine fd4_part_metis (domain, all_blocks, all_blocks_len, local_blocks, local_blocks_len, ubvec, itr, wfactor) public subroutine fd4_part_metis_subset (domain, all_blocks, all_blocks_len, local_blocks, local_blocks_len, ubvec, itr, subset)
TODO:
Author: Matthias Lieber
See also: module fd4_domain_mod
public subroutine fd4_part_metis (domain, all_blocks, all_blocks_len, local_blocks, local_blocks_len, ubvec, itr, wfactor) type (fd4_domain), intent(inout) :: domain integer (kind=i_k), intent(in), dimension (3,all_blocks_len) :: all_blocks integer (kind=i_k), intent(in) :: all_blocks_len integer (kind=i_k), intent(inout), dimension (:,:) :: local_blocks integer (kind=i_k), intent(out) :: local_blocks_len real (kind=r4k), intent(in), dimension (1) :: ubvec real (kind=r4k), intent(in) :: itr real (kind=r4k), intent(in) :: wfactor end subroutine fd4_part_metisParameters:
domain | the domain |
all_blocks | array of positions of the blocks in the new partion |
all_blocks_len | length of all_blocks(3,:) |
local_blocks | array of new local partition (differs from rank to rank) |
local_blocks_len | length of local_blocks(3,:) |
ubvec | ParMetis ubvec parameter |
itr | ParMetis itr parameter |
wfactor | multiply this with block's weight before converting to int |
If wfactor is 0, ParMETIS is called without block weights.
public subroutine fd4_part_metis_subset (domain, all_blocks, all_blocks_len, local_blocks, local_blocks_len, ubvec, itr, subset) type (fd4_domain), intent(inout) :: domain integer (kind=i_k), intent(in), dimension (3,all_blocks_len) :: all_blocks integer (kind=i_k), intent(in) :: all_blocks_len integer (kind=i_k), intent(inout), dimension (:,:) :: local_blocks integer (kind=i_k), intent(out) :: local_blocks_len real (kind=r4k), intent(in), dimension (1) :: ubvec real (kind=r4k), intent(in) :: itr integer (kind=i_k), intent(in) :: subset end subroutine fd4_part_metis_subsetParameters:
domain | the domain |
all_blocks | array of positions of the blocks in the new partion |
all_blocks_len | length of all_blocks(3,:) |
local_blocks | array of new local partition (differs from rank to rank) |
local_blocks_len | length of local_blocks(3,:) |
ubvec | ParMetis ubvec parameter |
itr | ParMetis itr parameter |
subset | use only subset processes for calculation (<2...off) |
WORK IN PROGRESS
TODO: