Skip to content
 
 

Latest commit

 

History

180 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GraphBLAS in Java Benchmarks

Master Thesis project comparing different graph-algorithms written in gds-pregel and ejml against existing once in JGraphT and GDS.

Relies on locally build ejml, gds and graphblas-java-native

Setting up the project

Prerequisites

  • java (tested with openjdk 11.0.8 via sdkman)

  • mvn

  • git

# starting from this directory
cd ..

# ejml (my fork as not everythink is in the main-repo)
git clone [email protected]:FlorentinD/ejml.git
cd ejml/
git checkout mask_rebased
./gradlew autogenerate
./gradlew install

# SuiteSparse:Graphblas (make sure to install under `usr/local` and you might not need setting the LD_LIBRARY_PATH)
# might need to add `/usr/local/lib` to `/etc/ld.so.conf` to avoid an `UnsatisfiedLinkError`
# or add run `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib; ldconfig` before
# Problem: `ld` ignores symbolic links in `usr/local/lib`
# or some other magic like waiting for 1h and it solves the `UnsatisfiedLinkError` itself
# ! AVX2 flag needs to manually set in the CMakeList (false by default)
git clone [email protected]:DrTimothyAldenDavis/GraphBLAS.git
cd GraphBLAS/
make JOBS=32
sudo make install -j32 INSTALL=/usr/local/
cd ..

# graphblas-java-native (my fork, as I added some mappings which are not merged yet?)
[email protected]:fabianmurariu/graphblas-java-native.git
cd graphblas-java-native/
cd graphblas-java/
# this might need a restart to work
mvn clean install
cd ..
mvn clean install -Dgpg.skip
cd ..

# graph-data-science (at some point not depending on a local version anymore  ..)
git clone [email protected]:neo4j/graph-data-science.git
cd graph-data-science/
./gradlew publishToMavenLocal


# run benchmarks (exclude, include benchmarks via build.gradle)
cd GraphBlasInJavaBenchmarks/
./gradlew :jmh --no-daemon

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages