Skip to content

Implementation of the algorithm described in "Aggregative Coarsening for Multilevel Hypergraph Partitioning" by Shaydulin and Safro SEA 2018

License

Notifications You must be signed in to change notification settings

rsln-s/aggregative-coarsening-for-multilevel-hypergraph-partitioning

Repository files navigation

This repository contains the source code implementing the algorithm described in "Aggregative Coarsening for Multilevel Hypergraph Partitioning" by Shaydulin and Safro SEA 2018

====================

Install

====================

Dependencies:

Tested with:
- gcc 4.8.1
- openmpi 1.8.4
and
- intel 16.0 and newer

Installation:

cd algebraic-distance-on-hypergraphs
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX:FILEPATH="/home/rshaydu/algebraic-distance-on-hypergraphs/build" -D MPI_BASE_DIR="/software/openmpi/1.8.4_gcc" -D MPI_C_COMPILER:FILEPATH="/software/openmpi/1.8.4_gcc/bin/mpicc" -D MPI_CXX_COMPILER:FILEPATH="/software/openmpi/1.8.4_gcc/bin/mpic++" -D Trilinos_ENABLE_ALL_PACKAGES:BOOL=OFF -D Trilinos_ENABLE_Zoltan:BOOL=ON  -D Zoltan_ENABLE_EXAMPLES:BOOL=ON -D TPL_ENABLE_MPI:BOOL=ON -D Trilinos_ENABLE_Fortran:BOOL=OFF -D Zoltan_ENABLE_TESTS:BOOL=ON -D CMAKE_EXPORT_COMPILE_COMMANDS=ON -D COMM=mpi ..
make

==================

Notes on algorithms:

The paper describes two versions, inner-product coarsening and stable matching coarsening. By default, when run with PHG_COARSENING_METHOD=rs_alg_dist, the inner product coarsening is used. The code for stable matching is provided only for reproducibility purposes; stable matching based coarsening doesn't produce better results and is more computationally expensive (especially in this inefficient implementation). To use it, go to `packages/zoltan/src/phg/rs_amg_match.cpp` and uncomment `#define RS_STABLE_MATCHING`. 

Note that both algorithm only work in serial (when run with one process).

===================

In general, the user is advised to refer to Trilinos documentation for troubleshooting any problems during installation: http:https://trilinos.org/about/documentation/

If you have any questions, contanct me at [email protected], I'll be happy to help.

===================

For the full results, refer to http:https://shaydul.in/hypergraph-partitioning-archive/misc/aggregative-coarsening-for-multilevel-hypergraph-partitioning/

About

Implementation of the algorithm described in "Aggregative Coarsening for Multilevel Hypergraph Partitioning" by Shaydulin and Safro SEA 2018

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published