sgiraz / FloydWarshall

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CUDA Parallel Implementation of Floyd Warshall

This is a Master's degree project related to the Advanced Computer Achitecture course at UNIVR (University of Verona). The project is based on Venkataraman's et al. to solve the All Pair Shortest Path problem: https://www.researchgate.net/publication/2566528_A_Blocked_All-Pairs_Shortest-Paths_Algorithm

How to Build and Execute

You need CUDA 10.0 installed on your machine otherwise you have to modify the CMakeLists setting up the approrpiate CUDA version.

Note: Make sure to set the right gpu architecture for your device in CMakeLists.txt

mkdir build
cd build
cmake ..
make
./floydwarshall <file.mtx> <kernel number>

Possible kernel numbers:

  1. Naive
  2. Coalesced
  3. Shared
  4. Blocked

Datasets

⚠️ Dataset valid format: mtx

Documentation

In docs folder you can find a report (in Italian) of the results achived using different configurations. In the same directory there are some web resources used as support material for this project.

About

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C++ 94.7%Language:Cuda 4.6%Language:CMake 0.6%Language:Shell 0.1%