Skip to content

Cuda Graph Library is a CUDA library that offers a set of parallel graph algorithms.

License

Notifications You must be signed in to change notification settings

hamham240/cudaGraph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is Cuda Graph Library?

Cuda Graph Library is a CUDA library that offers a set of parallel graph algorithms.

Which Algorithms are Currently Supported?

  • Breadth-First Search
  • Cycle Detection
  • Single Source Shortest Path
  • All Pairs Shortest Path

Software Requirements

  • Linux OS
  • CUDA Toolkit v11.2+
  • CMake v3.0+

Hardware Requirements

  • NVIDIA GPU with compute capability of 3 or higher

Installation

Run these set of commands in your CLI in the order that they are presented:

$ git clone https://github.com/hamham240/cudaGraph.git

$ cd cudaGraph

$ cmake .

$ cmake --build .

$ sudo make install

Uninstallation

$ cd cudaGraph

$ sudo make uninstall

Example

	#include "cudaGraph/cudaGraph.h"
	
	namespace cgl = cudaGraph;

	int main()
	{
		cgl::Graph g = cgl::readWeightedCSV("example.csv");

		cgl::cudaGraphInit(g);

		std::vector<int> bfsOutput = cgl::launchBFS(g, 0);

		cgl::cudaGraphTerminate(g);
	}

Sources