PROGRESS  master
prg_partition_mod.F90 File Reference

Go to the source code of this file.

Modules

module  prg_partition_mod
 The partition module.
 

Functions/Subroutines

subroutine, public prg_partition_mod::prg_metispartition (gp, ngroups, nnodes, xadj, adjncy, nparts, part, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm)
 Create graph partitions minizing number of cut edges. More...
 
subroutine, public prg_partition_mod::prg_costpartition (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm)
 Compute cost of a partition. More...
 
subroutine, public prg_partition_mod::update_prg_costpartition (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, node, new_part)
 Update cost of partition and the different parameters node is moves into new_part For each neighbor of node, the following cases hold: Case 1: neighbor is in old_part Case 2: neighbor is in new_part Case 3: neighbor is neither in old_ or new_part. More...
 
subroutine prg_partition_mod::prg_accept_prob (it, prg_delta, r)
 Compute acceptance probability for simulated annealing. More...
 
subroutine prg_partition_mod::prg_costindex (cost, sumCubes, maxCH, smooth_maxCH, obj_fun)
 Choose objective function to work with. More...
 
subroutine prg_partition_mod::prg_rand_node (gp, node, seed)
 Pick a random node. More...
 
subroutine, public prg_partition_mod::prg_simannealing (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, niter, seed)
 Graph partitioning based on Simulated Annealing. More...
 
subroutine, public prg_partition_mod::prg_kernlin (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, nconverg, seed)
 Graph partitioning based on inspired by Kernighan-Lin Review METiS manual for description of k-way implementation of KL Pick a core together with its halos Place free vertices on a priority queue with (key, value) =(prg_delta, best_part),with prg_delta = change in obj_value Dequeue and allow hill climbing. More...
 
subroutine, public prg_partition_mod::prg_update_gp (gp, partNumber, core_count)
 
subroutine prg_partition_mod::prg_rand_shuffle (array, seed)
 Randomly shuffle array. More...
 
subroutine, public prg_partition_mod::prg_check_arrays (gp, core_count, CH_count, Halo_count)
 Error checking Checking that core_count, CH_count, Halo_count match. More...
 
subroutine, public prg_partition_mod::prg_kernlin_queue (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm)
 Greedy algorithm. At each step it chooses the (vertex, new_part) pair with highest gain Currently implementation is very slow. More...
 
subroutine prg_partition_mod::prg_find_best_move (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, best_node, best_part)
 For kerlin_queue to find (vertex, new_part) pair with highest gain. More...
 
subroutine, public prg_partition_mod::prg_kernlin2 (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm)
 
subroutine prg_partition_mod::prg_get_largest_hedge_in_part (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, search_part, largest_Hedge)
 
subroutine, public prg_partition_mod::prg_simannealing_old (gp, xadj, adjncy, partNumber, core_count, CH_count, Halo_count, sumCubes, maxCH, smooth_maxCH, pnorm, niter, seed)
 

Variables

integer, parameter prg_partition_mod::dp = kind(1.0d0)
 
integer, parameter prg_partition_mod::metis_index_kind = METIS_INDEX_KIND
 From /usr/include/metis.h. More...
 
integer, parameter prg_partition_mod::metis_real_kind = kind(METIS_REAL_KIND)
 From /usr/include/metis.h. More...