The repository implemented Parsa from the following paper
Graph Partitioning via Parallel Submodular Approximation Mu Li, Dave Andersen, Alex Smola 2014
Build and Run:
- Build parameter server by following the guide
- Clone this repository in the parameter server directory (or change
PS_PATH
inMakefile
accordingly) - Build parsa by
make -j8
- Download data by
example/download_ctr.sh
- Test 2 servers and 2 workers in local
../script/local.sh ./parsa 2 2 -app_file example/ctr.conf
Some known issues:
- This implementation handles general uint64 keys. A implementation which assume continuous keys can be much faster.
- One need to change the configuration at the head of
parsa.h
to obtain more than 16 partitions. - `partitionU` may be hung if assign too many blocks to one worker.