module fd4_globaldef_mod
module fd4_domain_mod
module fd4_mpi_mod
module fd4_block_mod
module rbtree_fd4_block_mod
module stack_mod
Variables:
integer (kind=i_k), public :: fd4_part_metis_dump = 0
Subroutines 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_metis
Parameters:| 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_subset
Parameters:| 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: