Publications
- π° Dynamic Batch Parallel Algorithms for Updating PageRank (2022)
- π° Shared-Memory Parallel Algorithms for Community Detection in Dynamic Graphs (2024)
- π° Lock-free Computation of PageRank in Dynamic Graphs (2024)
- π° Fast Leiden Algorithm for Community Detection in Shared Memory Setting (2024)
- π° DF* PageRank: Incrementally Expanding Approaches for Updating PageRank on Dynamic Graphs (2024)
Technical Reports
- π° A Fast Parallel β¦ Neighborhood-based Link Prediction by Disregarding Large Hubs
- π° DF* PageRank: β¦ Incrementally Expanding Approaches for Updating PageRank on β¦
- π° An Incrementally Expanding Approach for Updating PageRank on Dynamic Graphs
- π° GSL-LPA: Fast Label Propagation Algorithm (LPA) for Community Detection with no β¦
- π° An Approach for Addressing Internally-Disconnected Communities in Louvain Algorithm
- π° GVE-Leiden: Fast Leiden Algorithm for Community Detection in Shared Memory Setting
- π° GVE-LPA: Fast Label Propagation Algorithm (LPA) for Community Detection in Shared β¦
- π° GVE-Louvain: Fast Louvain Algorithm for Community Detection in Shared Memory Setting
- π° GVEL: Fast Graph Loading in Edgelist and Compressed Sparse Row (CSR) formats
- π° Heuristics for Inequality minimization in PageRank values
- π° Enhancing Efficiency in Parallel Louvain Algorithm for Community Detection
- π° Effect of stepwise adjustment of Damping factor upon PageRank
Manuscripts
- π° STIC-D based Algorithmic Optimizations for Monolithic PageRank
- π° Adjusting Datatype of Rank vector and CSR Representation with PageRank
- π° Parallelizing PageRank for a Volta GPU
- π° Dead End handling strategies for PageRank algorithm
- π° Rank adjustment strategies for Dynamic PageRank
- π° Effect of stepwise adjustment of Damping factor upon PageRank
- π° Adjusting PageRank parameters and Comparing results
- π° Understand Problems
Thesis Materials
- π Exploring Parallel Optimizations for Dynamic Graph Algorithms
- π Exploring Optimizations for Dynamic Graph Algorithms on the GPU
- π Design β¦ of a heterogeneous sensor-based embedded system for flood management (2014)
- π List of Research papers: Prof. Kishore Kothapalli, CSTAR, IIIT Hyderabad
- π Submitting the Thesis Evaluation Request by MS/PhD Students (IIIT Hyderabad)
- π The Purpose and Process of PhD Comprehensive VIVA Examination (IIIT Hyderabad)
- π Policy on stipend support for research students (IIIT Hyderabad)
- π Top CSE conferences list (IIIT Hyderabad)
- π Proceedings Scholar Metrics
- π βYou and Your Researchβ by Richard W Hamming
Software
Tool | Description |
---|---|
π¦ nvgraph.sh | CLI for nvGraph, which is a GPU-based graph analytics library written by NVIDIA, using CUDA. |
π¦ snap-data.sh | CLI for SNAP dataset, which is a collection of more than 50 large networks. |
βοΈ graph-properties | List a few graph properties. |
βοΈ graph-generate | Perform certain operations upon a fixed graph. |
𧡠graphs | A few sample graphs in Matrix Market (.mtx) format. |
Others
- 𧡠Kaggle Datasets
Experiments
Link Prediction
Repo | Description |
---|---|
π§ͺ neighborhood-link-prediction-openmp | Design of OpenMP-based Parallel Neighborhood-based Link prediction approaches. |
Community Detection
Repo | Description |
---|---|
π§ͺ leiden-communities-openmp | Design of OpenMP-based Parallel Leiden algorithm for community detection. |
π§ͺ louvain-communities-openmp | Design of OpenMP-based Parallel Louvain algorithm for community detection, that prevents internally disconnected communities. |
π§ͺ louvain-communities | Comparing approaches for community detection using Louvain algorithm. |
π§ͺ rak-communities-openmp | Design of OpenMP-based Parallel Label Propagation Algorithm (LPA) algorithm, aka RAK, for community detection. |
π§ͺ rak-communities | Single-threaded CPU-based Raghavan Albert Kumara (RAK) algorithm, aka Label propagation Algorithm (LPA), for community detection. |
π§ͺ labelrank-communities-dynamic | Performance comparison of static vs dynamic LabelRank algorithm, that is used for community detection in graphs. |
π§ͺ labelrank-communities-openmp | Comparing approaches for community detection using OpenMP-based LabelRank algorithm. |
π§ͺ labelrank-communities | Comparing approaches for community detection using LabelRank algorithm. |
π§ͺ copra-communities-openmp | Multi-threaded OpenMP-based Community OVerlap PRopagation Algorithm (COPRA) for community detection. |
π§ͺ copra-communities | Single-threaded CPU-based Community OVerlap PRopagation Algorithm (COPRA) for community detection. |
π§ͺ slpa-communities | Single-threaded CPU-based Speaker-listener Label Propagation Algorithm (SLPA) for community detection. |
Barrierfree PageRank
Repo | Description |
---|---|
π§ͺ pagerank-barrierfree-openmp-dynamic | Design of OpenMP-based Lock-free Dynamic PageRank algorithm for link analysis. |
π§ͺ pagerank-barrierfrees-openmp-dynamic | Design of OpenMP-based statically scheduled Barrier-free Dynamic PageRank algorithm for link analysis. |
π§ͺ pagerank-barrierfrees-openmp | Design of OpenMP-based statically scheduled Barrier-free PageRank algorithm for link analysis. |
Levelwise PageRank
Repo | Description |
---|---|
π§ͺ pagerank-levelwise-multi-dynamic | Comparision of OpenMP and CUDA-based, Monolithic and Levelwise Dynamic PageRank algorithms. |
π§ͺ pagerank-levelwise-cuda-dynamic | Design of CUDA-based Levelwise Dynamic PageRank algorithm for link analysis. |
π§ͺ pagerank-levelwise-cuda | Design of CUDA-based Levelwise PageRank algorithm for link analysis. |
π§ͺ pagerank-levelwise-dynamic | Design of Levelwise Dynamic PageRank algorithm for link analysis. |
π§ͺ pagerank-levelwise | Design of Levelwise PageRank algorithm for link analysis. |
PageRank
Repo | Description |
---|---|
π§ͺ pagerank-minimize-inequality | Comparison of heuristics for minimization of inequality in ranks of vertices obtained with the PageRank algorithm. |
π§ͺ pagerank-multiple-damping | Comparing performance of single vs block multiple damping factor based ranks for PageRank algorithm. |
π§ͺ pagerank-datatype | Comparison of PageRank algorithm using various datatypes. |
π§ͺ pagerank-dead-ends | Comparing strategies of handling dead ends with PageRank algorithm for link analysis. |
π§ͺ pagerank-cuda-dynamic | Design of CUDA-based Parallel Dynamic PageRank algorithm for measuring importance. |
π§ͺ pagerank-cuda-optimization | Exploration of optimizations to CUDA-based PageRank algorithm for link analysis. |
π§ͺ pagerank-cuda | Design of CUDA-based PageRank algorithm for link analysis. |
π§ͺ pagerank-nvgraph-dynamic | Comparision of Dynamic nvGraph PageRank with Static approach. |
π§ͺ pagerank-nvgraph | Comparision of nvGraph PageRank with CPU-based implementations. |
π§ͺ pagerank-openmp-dynamic | Design of OpenMP-based Parallel Dynamic PageRank algorithm for measuring importance. |
π§ͺ pagerank-openmp | Design of OpenMP-based PageRank algorithm for link analysis. |
π§ͺ pagerank-dynamic | Design of Dynamic PageRank algorithm for link analysis. |
π§ͺ pagerank-optimization | Exploration of optimizations to PageRank algorithm for link analysis. |
π§ͺ pagerank | Design of PageRank algorithm for link analysis. |
π§ͺ pagerank.js | Design of PageRank algorithm for link analysis in JavaScript. |
Parallelization
Repo | Description |
---|---|
π§ͺ mmap-access-pattern-openmp | Design a fast parallel memory access pattern for a memory-mapped file with mmap(). |
π§ͺ core-performance-openmp | Measure the performance of individual cores with OpenMP. |
π§ͺ prefix-scan-cuda | Design of an efficient algorithm for parallel prefix-scan of a large array of values on GPUs. |
π§ͺ pthread-block | Design of pthread-block as a replacement for OpenMP threads. |
π§ͺ hello-mpi | A basic βHello worldβ example to output text to console from nodes over a network using MPI. |
π§ͺ hello-cuda | A basic βHello worldβ or βHello CUDAβ example to perform a number of operations on NVIDIA GPUs using CUDA. |
Graph Operations
Repo | Description |
---|---|
π§ͺ graph-pagerank-distribution | Obtain the PageRank distribution of a static graph (in MTX format). |
π§ͺ graph-degree-distribution | Obtain the degree distribution of a static graph (in MTX format). |
π§ͺ graph-openmp | OpenMP-based Parallel Graph implementation. |
π§ͺ graph-csr-openmp | Design of high-performance OpenMP-based parallel Graph Edgelist and Compressed Sparse Row (CSR) loader, aka GVEL. |
π§ͺ hybrid-csr | Comparing space usage of regular vs hybrid CSR. |
π§ͺ pair-bitset | Design of bitset for storing key-value pairs. |
Vector Operations
Repo | Description |
---|---|
π§ͺ vector-atomic-access | Compare ways to access elements of a vector atomically. |
π§ͺ vector-max-cuda | Performance of sequential vs CUDA-based vector element max. |
π§ͺ vector-multiplication-cuda | Comparing approaches for CUDA-based vector multiplication. |
π§ͺ vector-multiplication-openmp | Comparing performance of sequential vs OpenMP-based element-by-element vector multiplication. |
π§ͺ vector-sum-cuda | Comparing performance of sequential vs CUDA-based vector element sum. |
π§ͺ vector-sum-openmp | Comparing performance of sequential vs OpenMP-based vector element sum. |
π§ͺ vector-sum | Comparison of vector element sum using various data types. |
π§ͺ vector-search | Comparing approaches for searching an element in a vector. |
Research Notes
Community Detection
- π° Delta-Screening: A Fast and Efficient Technique to Update Communities in Dynamic Graphs
- π Delta modularity derivation (Louvain algorithm)
PageRank
- π° An Improved PageRank Algorithm for Multilayer Networks
- π° Scaling PageRank to 100 Billion Pages
- π° I/O-Efficient Techniques for Computing Pagerank
- π° Incremental Page Rank Computation on Evolving Graphs
- π° Incremental Page Rank Computation on Evolving Graphs
- π° Deeper Inside PageRank
- π° Original Google Patent by Lawrence Page
- π° HyPR: Hybrid Page Ranking on Evolving Graphs
- π° STIC-D: Algorithmic Techniques For Efficient Parallel Pagerank Computation on Real-World Graphs
- ποΈ PageRank on an evolving graph - Yanzhao Yang
Other Algorithms
- π° Parallel algorithms for multi-source graph traversal and its applications
- π° A Parallel Algorithm Template for Updating Single-Source Shortest Paths in Large-Scale Dynamic Networks
- π° Practical Parallel Hypergraph Algorithms
- π° Practice of Streaming Processing of Dynamic Graphs: Concepts, Models, and Systems
- π° Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
- π° cuSTINGER: Supporting Dynamic Graph Algorithms for GPUs
- π° Distributed coloring with O(sqrt. log n) bits
Parallelization
- π° Accelerating sparse matrix-vector multiplication in iterative methods using GPU
- π° A Study of BFLOAT16 for Deep Learning Training
- π° Hybrid Multicore Computing
- π NVIDIA Tesla V100 GPU Architecture Whitepaper
- π Checking NVIDIA Tesla V100 machine details
- π Introduction to Level Zero API for Heterogeneous Programming
- π Optimizing Parallel Reduction in CUDA
- π Variadic CRTP
- π CUDA by Example