SlideShare a Scribd company logo
Dynamic Batch Parallel
Algorithms for Updating
PageRank
Subhajit Sahu†, Kishore Kothapalli† and Dip Sankar Banerjee‡
†International Institute of Information Technology Hyderabad, India.
‡Indian Institute of Technology Jodhpur, India.
subhajit.sahu@research.,kkishore@iiit.ac.in, dipsankarb@iitj.ac.in
This work is partially supported by a grant from the Department of Science and Technology (DST), India, under the
National Supercomputing Mission (NSM) R&D in Exascale initiative vide Ref. No: DST/NSM/R&D Exascale/2021/16.
Facebook is taking a page out
of Google’s playbook to stop
fake news from going viral
Published Apr 2019 by Salvador Rodriguez
Click-Gap: When is Facebook
is driving disproportionate
amounts of traffic to
websites.
Effort to rid fakes news
from Facebook’s services.
Is a website relying on
Facebook to drive
significant traffic, but not
well ranked by the rest of
the web?
Also News Citation Graph.
PAGERANK APPLICATIONS
Ranking of websites.
Measuring scientific impact of researchers.
Finding the best teams and athletes.
Ranking companies by talent concentration.
Predicting road/foot traffic in urban spaces.
Analysing protein networks.
Finding the most authoritative news sources
Identifying parts of brain that change jointly.
Toxic waste management.
PAGERANK APPLICATIONS
Debugging complex software systems(MonitorRank)
Finding the most original writers (BookRank)
Finding topical authorities (TwitterRank)
WHAT IS PAGERANK
PageRank is a link-analysis algorithm.
By Larry Page and Sergey Brin in 1996.
For ordering information on the web.
Represented with a random-surfer model.
Rank of a page is defined recursively.
Calculate iteratively with power-iteration.
PageRank computation approaches
Matrix multiplication.
Power-iteration (push vs pull).
Random walk (approximate).
Challenges & Limitations
Graphs are massive and constantly updated.
Existing dynamic algorithms do not utilize
reducibility of graphs.
Vertices which are dependent upon other vertices to
converge are still processed.
Locality benefits of SCCs are not explored.
Why Dynamic PageRank
Types of Dynamic graph algorithms
Incremental: handles 1 edge/vertex insertion.
Decremental: handles 1 edge/vertex deletion.
Fully dynamic: handles 1 insertion or deletion.
Batched fully dynamic: handles n insertions and/or
deletions.
Benefits of Dynamic graph algorithms
Reduces time needed for performing analytics.
Enables interactivity with dataset.
Batched fully dynamic algorithms accept a batch of
updates to minimize computation needed in contrast
to single-update fully dynamic ones.
Our Approaches: On graph update
Our Approaches: Computation procedure
Our Approaches: GPU-specific optimization
OUR APPROACHES: DynamicMonolithicPR
Full power-iteration, process all vertices.
Group vertices by SCC for better access.
Partition vertices by in-degree on GPU.
Use old ranks, skip unaffected vertices.
Affected vertices found with DFS.
Faster on GPU with CUDA.
OUR APPROACHES: DynamicMonolithicPR
OUR APPROACHES: DynamicLevelwisePR
Contrast to full power-iteration.
Process vertices in levels of SCCs.
Avoid converged/unstable vertices.
No per-iteration sharing of ranks.
Faster on CPU with OpenMP.
Slightly higher error.
Requires graph to be dead-end free.
OUR APPROACHES: DynamicLevelwisePR
Dataset
From the SuiteSparse Matrix
Collection.
Add self-loops to dead ends in
all graphs.
Number of vertices vary from 75k
to 41M.
Number of edges vary from 524k
to 1.1B.
Batch generation
Batch sizes vary from 500 to
10,000 edges.
Edge insertions, deletions in
equal mix.
High degree vertices have higher
chance of selection (mimic
real-world graphs).
No new vertices are added or
removed.
Platform
Intel(R) Xeon(R) Silver 4116 CPU (12 cores) x 2; Cache L1:
768KB, L2: 12MB, L3: 16MB (shared).
NVIDIA Tesla V100 GPU (16GB PCIe); 14 TFLOPs SP (84 SMs x 64
FP/INT cores), 16GB 900GB/s HBM2 DRAM, 32 GB/s PCIe.
CentOS 7.9, OpenMP 5.0, CUDA 11.3, GCC 9.3.
Performance measurement
Damping factor d of 0.15.
Tolerance τ of 10−6.
Maximum of 500 iterations.
32-bit integers for CSR representation.
32-bit floats for rank vector.
L∞-norm for error measurement,
(L2-norm for nvGraph PageRank).
Measured time only rank computation.
Results: Comparison with state-of-the-art
CPU AM time for batches of 500, 1000, 2000, 5000, 10000
6.1×, 8.6× wrt
static plain STIC-D
PR [1].
4.2×, 5.8× wrt Pure
CPU HyPR [2].
Results: Comparison with state-of-the-art
GPU AM time for batches of 500, 1000, 2000, 5000, 10000
9.8×, 9.3× wrt
naive dynamic
nvGraph PR.
1.9×, 1.8× wrt Pure
GPU HyPR.
Results: Batched vs Cumulative update
CPU time for batches of 500, 1000, 5000, 10000
4066×, 2998× of
5000 edges batch
wrt single-edge
cumulative update.
Results: Batched vs Cumulative update
GPU time for batches of 500, 1000, 5000, 10000
1712×, 2324× of
5000 edges batch
wrt cumulative
single-edge
update.
Conclusion
DynamicLevelwisePR is a suitable approach on CPU.
On a GPU, smaller levels should be combined and processed at a time.
On 1 SCC graphs, both algorithms perform ~identically.

More Related Content

Similar to Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES

Big Stream Processing Systems, Big Graphs
Big Stream Processing Systems, Big GraphsBig Stream Processing Systems, Big Graphs
Big Stream Processing Systems, Big Graphs
Petr Novotný
 
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
Cheer Chain Enterprise Co., Ltd.
 
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
MLconf
 
Panel: NRP Science Impacts​
Panel: NRP Science Impacts​Panel: NRP Science Impacts​
Panel: NRP Science Impacts​
Larry Smarr
 
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary pathISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
John Holden
 
Download It
Download ItDownload It
Download It
butest
 
System mldl meetup
System mldl meetupSystem mldl meetup
System mldl meetup
Ganesan Narayanasamy
 
Presentation
PresentationPresentation
Presentation
butest
 
Making Machine Learning Scale: Single Machine and Distributed
Making Machine Learning Scale: Single Machine and DistributedMaking Machine Learning Scale: Single Machine and Distributed
Making Machine Learning Scale: Single Machine and Distributed
Turi, Inc.
 
How Data Volume Affects Spark Based Data Analytics on a Scale-up Server
How Data Volume Affects Spark Based Data Analytics on a Scale-up ServerHow Data Volume Affects Spark Based Data Analytics on a Scale-up Server
How Data Volume Affects Spark Based Data Analytics on a Scale-up Server
Ahsan Javed Awan
 
Rapids: Data Science on GPUs
Rapids: Data Science on GPUsRapids: Data Science on GPUs
Rapids: Data Science on GPUs
inside-BigData.com
 
NVIDIA Rapids presentation
NVIDIA Rapids presentationNVIDIA Rapids presentation
NVIDIA Rapids presentation
testSri1
 
APSys Presentation Final copy2
APSys Presentation Final copy2APSys Presentation Final copy2
APSys Presentation Final copy2
Junli Gu
 
Sigmaplot 13 PPT
Sigmaplot 13 PPTSigmaplot 13 PPT
Sigmaplot 13 PPT
Siriyak Cr
 
Phi Week 2019
Phi Week 2019Phi Week 2019
Phi Week 2019
Alison B. Lowndes
 
GOAI: GPU-Accelerated Data Science DataSciCon 2017
GOAI: GPU-Accelerated Data Science DataSciCon 2017GOAI: GPU-Accelerated Data Science DataSciCon 2017
GOAI: GPU-Accelerated Data Science DataSciCon 2017
Joshua Patterson
 
GPU 101: The Beast In Data Centers
GPU 101: The Beast In Data CentersGPU 101: The Beast In Data Centers
GPU 101: The Beast In Data Centers
Rommel Garcia
 
AI and Deep Learning
AI and Deep Learning AI and Deep Learning
AI and Deep Learning
Subrat Panda, PhD
 
Distributed computing abstractions_data_science_6_june_2016_ver_0.4
Distributed computing abstractions_data_science_6_june_2016_ver_0.4Distributed computing abstractions_data_science_6_june_2016_ver_0.4
Distributed computing abstractions_data_science_6_june_2016_ver_0.4
Vijay Srinivas Agneeswaran, Ph.D
 
RAPIDS – Open GPU-accelerated Data Science
RAPIDS – Open GPU-accelerated Data ScienceRAPIDS – Open GPU-accelerated Data Science
RAPIDS – Open GPU-accelerated Data Science
Data Works MD
 

Similar to Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES (20)

Big Stream Processing Systems, Big Graphs
Big Stream Processing Systems, Big GraphsBig Stream Processing Systems, Big Graphs
Big Stream Processing Systems, Big Graphs
 
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
Nvidia gpu-application-catalog TESLA K80 GPU應用程式型錄
 
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
Venkatesh Ramanathan, Data Scientist, PayPal at MLconf ATL 2017
 
Panel: NRP Science Impacts​
Panel: NRP Science Impacts​Panel: NRP Science Impacts​
Panel: NRP Science Impacts​
 
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary pathISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
ISC Frankfurt 2015: Good, bad and ugly of accelerators and a complementary path
 
Download It
Download ItDownload It
Download It
 
System mldl meetup
System mldl meetupSystem mldl meetup
System mldl meetup
 
Presentation
PresentationPresentation
Presentation
 
Making Machine Learning Scale: Single Machine and Distributed
Making Machine Learning Scale: Single Machine and DistributedMaking Machine Learning Scale: Single Machine and Distributed
Making Machine Learning Scale: Single Machine and Distributed
 
How Data Volume Affects Spark Based Data Analytics on a Scale-up Server
How Data Volume Affects Spark Based Data Analytics on a Scale-up ServerHow Data Volume Affects Spark Based Data Analytics on a Scale-up Server
How Data Volume Affects Spark Based Data Analytics on a Scale-up Server
 
Rapids: Data Science on GPUs
Rapids: Data Science on GPUsRapids: Data Science on GPUs
Rapids: Data Science on GPUs
 
NVIDIA Rapids presentation
NVIDIA Rapids presentationNVIDIA Rapids presentation
NVIDIA Rapids presentation
 
APSys Presentation Final copy2
APSys Presentation Final copy2APSys Presentation Final copy2
APSys Presentation Final copy2
 
Sigmaplot 13 PPT
Sigmaplot 13 PPTSigmaplot 13 PPT
Sigmaplot 13 PPT
 
Phi Week 2019
Phi Week 2019Phi Week 2019
Phi Week 2019
 
GOAI: GPU-Accelerated Data Science DataSciCon 2017
GOAI: GPU-Accelerated Data Science DataSciCon 2017GOAI: GPU-Accelerated Data Science DataSciCon 2017
GOAI: GPU-Accelerated Data Science DataSciCon 2017
 
GPU 101: The Beast In Data Centers
GPU 101: The Beast In Data CentersGPU 101: The Beast In Data Centers
GPU 101: The Beast In Data Centers
 
AI and Deep Learning
AI and Deep Learning AI and Deep Learning
AI and Deep Learning
 
Distributed computing abstractions_data_science_6_june_2016_ver_0.4
Distributed computing abstractions_data_science_6_june_2016_ver_0.4Distributed computing abstractions_data_science_6_june_2016_ver_0.4
Distributed computing abstractions_data_science_6_june_2016_ver_0.4
 
RAPIDS – Open GPU-accelerated Data Science
RAPIDS – Open GPU-accelerated Data ScienceRAPIDS – Open GPU-accelerated Data Science
RAPIDS – Open GPU-accelerated Data Science
 

More from Subhajit Sahu

About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
Subhajit Sahu
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
 
Adjusting Bitset for graph : SHORT REPORT / NOTES
Adjusting Bitset for graph : SHORT REPORT / NOTESAdjusting Bitset for graph : SHORT REPORT / NOTES
Adjusting Bitset for graph : SHORT REPORT / NOTES
Subhajit Sahu
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Subhajit Sahu
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
Subhajit Sahu
 
Experiments with Primitive operations : SHORT REPORT / NOTES
Experiments with Primitive operations : SHORT REPORT / NOTESExperiments with Primitive operations : SHORT REPORT / NOTES
Experiments with Primitive operations : SHORT REPORT / NOTES
Subhajit Sahu
 
PageRank Experiments : SHORT REPORT / NOTES
PageRank Experiments : SHORT REPORT / NOTESPageRank Experiments : SHORT REPORT / NOTES
PageRank Experiments : SHORT REPORT / NOTES
Subhajit Sahu
 
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
Subhajit Sahu
 
Adjusting OpenMP PageRank : SHORT REPORT / NOTES
Adjusting OpenMP PageRank : SHORT REPORT / NOTESAdjusting OpenMP PageRank : SHORT REPORT / NOTES
Adjusting OpenMP PageRank : SHORT REPORT / NOTES
Subhajit Sahu
 
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
Subhajit Sahu
 
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTESDyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
Subhajit Sahu
 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)
Subhajit Sahu
 
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTESA Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
Subhajit Sahu
 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Subhajit Sahu
 
Application Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTESApplication Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTES
Subhajit Sahu
 
Community Detection on the GPU : NOTES
Community Detection on the GPU : NOTESCommunity Detection on the GPU : NOTES
Community Detection on the GPU : NOTES
Subhajit Sahu
 
Survey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTESSurvey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTES
Subhajit Sahu
 
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Subhajit Sahu
 
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTESFast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Subhajit Sahu
 
Can you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTESCan you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTES
Subhajit Sahu
 

More from Subhajit Sahu (20)

About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
About TrueTime, Spanner, Clock synchronization, CAP theorem, Two-phase lockin...
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
 
Adjusting Bitset for graph : SHORT REPORT / NOTES
Adjusting Bitset for graph : SHORT REPORT / NOTESAdjusting Bitset for graph : SHORT REPORT / NOTES
Adjusting Bitset for graph : SHORT REPORT / NOTES
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
 
Experiments with Primitive operations : SHORT REPORT / NOTES
Experiments with Primitive operations : SHORT REPORT / NOTESExperiments with Primitive operations : SHORT REPORT / NOTES
Experiments with Primitive operations : SHORT REPORT / NOTES
 
PageRank Experiments : SHORT REPORT / NOTES
PageRank Experiments : SHORT REPORT / NOTESPageRank Experiments : SHORT REPORT / NOTES
PageRank Experiments : SHORT REPORT / NOTES
 
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
Algorithmic optimizations for Dynamic Monolithic PageRank (from STICD) : SHOR...
 
Adjusting OpenMP PageRank : SHORT REPORT / NOTES
Adjusting OpenMP PageRank : SHORT REPORT / NOTESAdjusting OpenMP PageRank : SHORT REPORT / NOTES
Adjusting OpenMP PageRank : SHORT REPORT / NOTES
 
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
word2vec, node2vec, graph2vec, X2vec: Towards a Theory of Vector Embeddings o...
 
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTESDyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)
 
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTESA Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
 
Application Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTESApplication Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTES
 
Community Detection on the GPU : NOTES
Community Detection on the GPU : NOTESCommunity Detection on the GPU : NOTES
Community Detection on the GPU : NOTES
 
Survey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTESSurvey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTES
 
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
 
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTESFast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTES
 
Can you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTESCan you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTES
 

Recently uploaded

GBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agentsGBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agents
Areesha Ahmad
 
2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf
lucianamillenium
 
Nutaceuticsls herbal drug technology CVS, cancer.pptx
Nutaceuticsls herbal drug technology CVS, cancer.pptxNutaceuticsls herbal drug technology CVS, cancer.pptx
Nutaceuticsls herbal drug technology CVS, cancer.pptx
vimalveerammal
 
Anti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark UniverseAnti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark Universe
Sérgio Sacani
 
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
Creative-Biolabs
 
Mites,Slug,Snail_Infesting agricultural crops.pdf
Mites,Slug,Snail_Infesting agricultural crops.pdfMites,Slug,Snail_Infesting agricultural crops.pdf
Mites,Slug,Snail_Infesting agricultural crops.pdf
PirithiRaju
 
Farming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptxFarming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptx
Frédéric Baudron
 
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Sérgio Sacani
 
Reaching the age of Adolescence- Class 8
Reaching the age of Adolescence- Class 8Reaching the age of Adolescence- Class 8
Reaching the age of Adolescence- Class 8
abhinayakamasamudram
 
LEARNING TO LIVE WITH LAWS OF MOTION .pptx
LEARNING TO LIVE WITH LAWS OF MOTION .pptxLEARNING TO LIVE WITH LAWS OF MOTION .pptx
LEARNING TO LIVE WITH LAWS OF MOTION .pptx
yourprojectpartner05
 
Post translation modification by Suyash Garg
Post translation modification by Suyash GargPost translation modification by Suyash Garg
Post translation modification by Suyash Garg
suyashempire
 
The Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptxThe Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptx
sanjeevkhanal2
 
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed ProfessorFiroozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet
 
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Sérgio Sacani
 
seed production, Nursery & Gardening.pdf
seed production, Nursery & Gardening.pdfseed production, Nursery & Gardening.pdf
seed production, Nursery & Gardening.pdf
Nistarini College, Purulia (W.B) India
 
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
PsychoTech Services
 
Lattice Defects in ionic solid compound.pptx
Lattice Defects in ionic solid compound.pptxLattice Defects in ionic solid compound.pptx
Lattice Defects in ionic solid compound.pptx
DrRajeshDas
 
WEB PROGRAMMING bharathiar university bca unitII
WEB PROGRAMMING  bharathiar university bca unitIIWEB PROGRAMMING  bharathiar university bca unitII
WEB PROGRAMMING bharathiar university bca unitII
VinodhiniRavi2
 
BANANA BUNCHY TOP K R.pptx
BANANA BUNCHY  TOP               K R.pptxBANANA BUNCHY  TOP               K R.pptx
BANANA BUNCHY TOP K R.pptx
KARTHIK REDDY C A
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
frank0071
 

Recently uploaded (20)

GBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agentsGBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agents
 
2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf
 
Nutaceuticsls herbal drug technology CVS, cancer.pptx
Nutaceuticsls herbal drug technology CVS, cancer.pptxNutaceuticsls herbal drug technology CVS, cancer.pptx
Nutaceuticsls herbal drug technology CVS, cancer.pptx
 
Anti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark UniverseAnti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark Universe
 
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
Mechanisms and Applications of Antiviral Neutralizing Antibodies - Creative B...
 
Mites,Slug,Snail_Infesting agricultural crops.pdf
Mites,Slug,Snail_Infesting agricultural crops.pdfMites,Slug,Snail_Infesting agricultural crops.pdf
Mites,Slug,Snail_Infesting agricultural crops.pdf
 
Farming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptxFarming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptx
 
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
 
Reaching the age of Adolescence- Class 8
Reaching the age of Adolescence- Class 8Reaching the age of Adolescence- Class 8
Reaching the age of Adolescence- Class 8
 
LEARNING TO LIVE WITH LAWS OF MOTION .pptx
LEARNING TO LIVE WITH LAWS OF MOTION .pptxLEARNING TO LIVE WITH LAWS OF MOTION .pptx
LEARNING TO LIVE WITH LAWS OF MOTION .pptx
 
Post translation modification by Suyash Garg
Post translation modification by Suyash GargPost translation modification by Suyash Garg
Post translation modification by Suyash Garg
 
The Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptxThe Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptx
 
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed ProfessorFiroozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed Professor
 
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
 
seed production, Nursery & Gardening.pdf
seed production, Nursery & Gardening.pdfseed production, Nursery & Gardening.pdf
seed production, Nursery & Gardening.pdf
 
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
Sexuality - Issues, Attitude and Behaviour - Applied Social Psychology - Psyc...
 
Lattice Defects in ionic solid compound.pptx
Lattice Defects in ionic solid compound.pptxLattice Defects in ionic solid compound.pptx
Lattice Defects in ionic solid compound.pptx
 
WEB PROGRAMMING bharathiar university bca unitII
WEB PROGRAMMING  bharathiar university bca unitIIWEB PROGRAMMING  bharathiar university bca unitII
WEB PROGRAMMING bharathiar university bca unitII
 
BANANA BUNCHY TOP K R.pptx
BANANA BUNCHY  TOP               K R.pptxBANANA BUNCHY  TOP               K R.pptx
BANANA BUNCHY TOP K R.pptx
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
 

Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES

  • 1. Dynamic Batch Parallel Algorithms for Updating PageRank Subhajit Sahu†, Kishore Kothapalli† and Dip Sankar Banerjee‡ †International Institute of Information Technology Hyderabad, India. ‡Indian Institute of Technology Jodhpur, India. subhajit.sahu@research.,kkishore@iiit.ac.in, dipsankarb@iitj.ac.in This work is partially supported by a grant from the Department of Science and Technology (DST), India, under the National Supercomputing Mission (NSM) R&D in Exascale initiative vide Ref. No: DST/NSM/R&D Exascale/2021/16.
  • 2. Facebook is taking a page out of Google’s playbook to stop fake news from going viral Published Apr 2019 by Salvador Rodriguez Click-Gap: When is Facebook is driving disproportionate amounts of traffic to websites. Effort to rid fakes news from Facebook’s services. Is a website relying on Facebook to drive significant traffic, but not well ranked by the rest of the web? Also News Citation Graph.
  • 3. PAGERANK APPLICATIONS Ranking of websites. Measuring scientific impact of researchers. Finding the best teams and athletes. Ranking companies by talent concentration. Predicting road/foot traffic in urban spaces. Analysing protein networks. Finding the most authoritative news sources Identifying parts of brain that change jointly. Toxic waste management.
  • 4. PAGERANK APPLICATIONS Debugging complex software systems(MonitorRank) Finding the most original writers (BookRank) Finding topical authorities (TwitterRank)
  • 5. WHAT IS PAGERANK PageRank is a link-analysis algorithm. By Larry Page and Sergey Brin in 1996. For ordering information on the web. Represented with a random-surfer model. Rank of a page is defined recursively. Calculate iteratively with power-iteration.
  • 6. PageRank computation approaches Matrix multiplication. Power-iteration (push vs pull). Random walk (approximate).
  • 7. Challenges & Limitations Graphs are massive and constantly updated. Existing dynamic algorithms do not utilize reducibility of graphs. Vertices which are dependent upon other vertices to converge are still processed. Locality benefits of SCCs are not explored.
  • 9. Types of Dynamic graph algorithms Incremental: handles 1 edge/vertex insertion. Decremental: handles 1 edge/vertex deletion. Fully dynamic: handles 1 insertion or deletion. Batched fully dynamic: handles n insertions and/or deletions.
  • 10. Benefits of Dynamic graph algorithms Reduces time needed for performing analytics. Enables interactivity with dataset. Batched fully dynamic algorithms accept a batch of updates to minimize computation needed in contrast to single-update fully dynamic ones.
  • 11. Our Approaches: On graph update
  • 14. OUR APPROACHES: DynamicMonolithicPR Full power-iteration, process all vertices. Group vertices by SCC for better access. Partition vertices by in-degree on GPU. Use old ranks, skip unaffected vertices. Affected vertices found with DFS. Faster on GPU with CUDA.
  • 16. OUR APPROACHES: DynamicLevelwisePR Contrast to full power-iteration. Process vertices in levels of SCCs. Avoid converged/unstable vertices. No per-iteration sharing of ranks. Faster on CPU with OpenMP. Slightly higher error. Requires graph to be dead-end free.
  • 18. Dataset From the SuiteSparse Matrix Collection. Add self-loops to dead ends in all graphs. Number of vertices vary from 75k to 41M. Number of edges vary from 524k to 1.1B.
  • 19. Batch generation Batch sizes vary from 500 to 10,000 edges. Edge insertions, deletions in equal mix. High degree vertices have higher chance of selection (mimic real-world graphs). No new vertices are added or removed.
  • 20. Platform Intel(R) Xeon(R) Silver 4116 CPU (12 cores) x 2; Cache L1: 768KB, L2: 12MB, L3: 16MB (shared). NVIDIA Tesla V100 GPU (16GB PCIe); 14 TFLOPs SP (84 SMs x 64 FP/INT cores), 16GB 900GB/s HBM2 DRAM, 32 GB/s PCIe. CentOS 7.9, OpenMP 5.0, CUDA 11.3, GCC 9.3.
  • 21. Performance measurement Damping factor d of 0.15. Tolerance τ of 10−6. Maximum of 500 iterations. 32-bit integers for CSR representation. 32-bit floats for rank vector. L∞-norm for error measurement, (L2-norm for nvGraph PageRank). Measured time only rank computation.
  • 22. Results: Comparison with state-of-the-art CPU AM time for batches of 500, 1000, 2000, 5000, 10000 6.1×, 8.6× wrt static plain STIC-D PR [1]. 4.2×, 5.8× wrt Pure CPU HyPR [2].
  • 23. Results: Comparison with state-of-the-art GPU AM time for batches of 500, 1000, 2000, 5000, 10000 9.8×, 9.3× wrt naive dynamic nvGraph PR. 1.9×, 1.8× wrt Pure GPU HyPR.
  • 24. Results: Batched vs Cumulative update CPU time for batches of 500, 1000, 5000, 10000 4066×, 2998× of 5000 edges batch wrt single-edge cumulative update.
  • 25. Results: Batched vs Cumulative update GPU time for batches of 500, 1000, 5000, 10000 1712×, 2324× of 5000 edges batch wrt cumulative single-edge update.
  • 26. Conclusion DynamicLevelwisePR is a suitable approach on CPU. On a GPU, smaller levels should be combined and processed at a time. On 1 SCC graphs, both algorithms perform ~identically.