Skip to content

Parallelizing Google's PageRank algorithm in C++ with CUDA framework on GPU. Conducted some experiments, tried new ideas. Final Course Project for CS6023: GPU Programming on 2021 Spring, IIT Madras.

Notifications You must be signed in to change notification settings

princeofpython/PageRank-with-CUDA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PageRank-with-CUDA

Parallelizing Google's PageRank algorithm in C++ with CUDA framework on GPU. Conducted some experiments, tried new ideas. Final Course Project for CS6023: GPU Programming on 2021 Spring, IIT Madras.

We use the Internet to search for information on a daily basis. We use search engines to find out the useful information from the vast Internet. This is possible because the search engines are using a heuristic called PageRank. It is nothing but a value to a web page that is assigned by a PageRanking algorithm. This algorithm scans all possible webpages and then calculates the rank accordingly given by a formula. Search engines show results according these ranks, which stand for the popularity of the page. The lower is the rank, more popular the page is. Traditional approaches use multi-CPU architecture and this is not a very good choice due to the communication overhead and the low processing power of CPU compared to GPU. Hence, designing a PageRanking algorithm efficiently modified for parallel GPU-CPU environment that achieves higher accuracy and consumes lesser time to evaluate the PageRank exact rank vector even for large-scale webgraphs.

No: of nodes C++ CUDA C++ speedup
100 405 593 0.68
200 6556 2152 3.04
400 3462 936 3.69
800 22785 2356 9.67
1000 2972898 104831 28.35
5000 69266776 816446 84.83
10000 68519880 755148 90.73
16000 26509166 626986 42.28
18000 1030231744 18294508 56.31

About

Parallelizing Google's PageRank algorithm in C++ with CUDA framework on GPU. Conducted some experiments, tried new ideas. Final Course Project for CS6023: GPU Programming on 2021 Spring, IIT Madras.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published