Parallel Graph Analysis, Fall 2016
Class Info
  |  
Assignments
  |  
Lecture Notes
  |  
Project Info
Class Info
Syllabus
Meeting times: Monday and Thursday, 16:00-17:50 in 235 Darrin
No Class:
September 5; October 10/11; November 14, 17, 24
Course Instructor:
Prof. George M. Slota
slotag@rpi.edu
Office Hours: Tuesday and Wednesday, 14:00-16:00 in 317 Lally
Class Info
Class Resources:
Texts
Papers
Datasets
Networks, Crowds, and Markets - Easly, Kleinburg
Network Science - Barabasi
Mining of Massive Datasets - Leskovec, Rajaraman, Ullman
Thinking Like a Vertex
Standford Large Network Dataset Collection
UF Sparse Matrix Collection
Koblenz Network Collection
Laboratory for Web Algorithmics
Mark Newman's Collection
DIMACS Challenge Graphs
Assignments
All assignments are due (emailed to slotag@rpi.edu) before class on the scheduled date!
Topic
Due Date
Assignment
Files
Solution
Assignment 1: Introduction to Parallel Graph Analysis
Monday 19 Sept. 2016
Assignment 1
Code
Graph 1
Graph 2
Form 1
Form 2
Solution
Assignment 2: Web Graph Analysis
Thursday 29 Sept. 2016
Assignment 2
Code 1
Code 2
Graph 1
Graph 2
Graph 3
Graph 4
Graph 5
SCC
PR
Assignment 3: Social Graph Analysis
Monday 17 Oct. 2016
Assignment 3
Code
Social Graph
Test Graph
Solution
Assignment 4: Running on CCI Clusters
Thursday 10 Nov. 2016
Assignment 4
Tarball
Solution
Assignment 5: Triangle Counting
Monday 21 Nov. 2016
Assignment 5
Tarball
Solution
Assignment 6: Processing Models and Frameworks
Thursday 8 Dec. 2016
Assignment 6
Solution
Lecture Notes and Readings
Note: Class schedule subject to change.
Week
Class Date
Topic
Readings
Slides and Code
Other resources
1
29 Aug
Lecture 1: Syllabus and Course Overview
Syllabus
Lecture 1
Intro to network analysis
  |  
More intro
  |  
Even more intro
  |  
Network Theory
1 Sept
Lecture 2: Parallel Graph Analytics and OpenMP
2.1-2.4
Lecture 2
  |  
Code
  |  
Final Code
  |  
Test Data
Processing Models
  |  
Graph Representation
  |  
OpenMP Tutorial
  |  
OpenMP Site
2
5 Sept
Labor Day:
No class
8 Sept
Lecture 3: Introduction to MPI
Lecture 3
  |  
Code
  |  
Final Code
  |  
Test Data
MPI Overview
  |  
Livermore MPI Tutorial
  |  
MPI Tutorials
3
12 Sept
Lecture 4: Web Graph - Structure and PageRank
Ch. 13-14
  |  
Paper 1
  |  
Paper 2
Lecture 4
  |  
Code
  |  
Final Code
  |  
Test Data
Pagerank
  |  
More PageRank
  |  
MPI slides
15 Sept
Lecture 5: Parallel SCC and Centrality
Lecture 5
  |  
Code
  |  
Final Code
  |  
Test Data
Centrality
  |  
Alltoallv
4
19 Sept
Lecture 6: Social Networks Topics
Sections 3.1-3.5, Ch. 4
Lecture 6
Triangle Counting
22 Sept
Lecture 7: Community Detection and Clustering
Sections 3.1-3.5, Ch. 4
  |  
Ch. 9
Lecture 7
  |  
Code
  |  
Final Code
  |  
Test Graph
  |  
Data 1
  |  
Data 2
Comm 1
  |  
Comm 2
  |  
Modularity
5
26 Sept
Lecture 8: Graph Partitioning
Lecture 8
  |  
Code
  |  
Final Code
  |  
METIS
  |  
Test Graph
  |  
METIS Graph
  |  
METIS-M Graph
  |  
Part File 1
  |  
Part File 2
  |  
Part File 3
  |  
Part File 4
Partitioning Overview
  |  
Overview 2
  |  
FENNEL
29 Sept
Lecture 9: Bio Network Topics
D-O BFS
Lecture 9
Motifs 1
  |  
Motifs 2
  |  
Alignment 1
  |  
Alignment 2
  |  
Min-weight
  |  
BFS
6
3 Oct
Lecture 10: Random Networks
Lecture 10
  |  
Code
  |  
Final Code
  |  
Data
Random Networks
  |  
Random 2
  |  
R-MAT
6 Oct
Lecture 11: Project Presentations 1
7
11 Oct
No class
13 Oct
Lecture 12: Random Networks 2
Lecture 12
  |  
Code
  |  
Final Code
  |  
More Data
8
17 Oct
Lecture 13: Distributed Graph Processing
Lecture 13
  |  
Code
  |  
Final Code
  |  
Graph 1
  |  
Graph 2
20 Oct
Lecture 14: Distributed Graph Proc 2
Lecture 14
  |  
Code
  |  
Final Code
9
24 Oct
Lecture 15: Distributed Graph Proc 3
Lecture 15
  |  
Code
  |  
Final Code
  |  
Graph 1
  |  
Part 1
  |  
Part 2
  |  
Part 3
  |  
Part 4
  |  
Graph 2
  |  
Part 1
  |  
Part 2
  |  
Part 3
  |  
Part 4
27 Oct
Lecture 16: Graph Vertex Re-ordering
Lecture 16
  |  
Code
  |  
Final Code
10
31 Oct
Lecture 17: Graph Compression
Lecture 17
  |  
Code
  |  
Compression Library
WebGraph Framework
3 Nov
Lecture 18: Proj Pres 2/Graph Compression 2
Lec 17-18 Final Code
  |  
PA-road
11
7 Nov
Lecture 19: Graph Sampling and Sparsification
Lecture 19
  |  
Code
  |  
Final Code
Sampling Social Networks
  |  
Community Detection via Sampling
  |  
Spectral Sparsification
10 Nov
Lecture 20: Sampling 2
Lecture 20
  |  
Code
  |  
Final Code
Random Walks
12
14 Nov
No class
17 Nov
No class
13
21 Nov
Lecture 21: Temporal Networks
Lecture 21
  |  
Code
  |  
Final Code
Dynamic Networks
  |  
Temporal Graphs
24 Nov
Thanksgiving:
No class
14
28 Nov
Lecture 22: Graphs as Matrices
Lecture 22
  |  
Code
  |  
Final Code
GABB 14
  |  
Graph BLAS
  |  
CombBLAS
  |  
Graph Analytics in GraphBLAS
1 Dec
Lecture 23: Graphs on Manycores
Lecture 23
  |  
Code
  |  
Final Code
GPUs
  |  
Xeon Phis
14
5 Dec: Graph Frameworks
Lecture 24
Lecture 24
  |  
Code
  |  
Final Code
Pregel Slides
  |  
Giraph
  |  
Giraph Slides
  |  
GraphLab Slides
  |  
PowerGraph Slides
  |  
2D partitioning slides
8 Dec
Final Presentations
Project Info
Important Dates:
Item
Due Date
Description
Project Proposal
Thursday 22 Sept. 2016, 16:00
See Lecture 3 slides pages 6 and 7
Progress Presentation 1
Thursday 6 Oct. 2016
Progress Presentation 2
Thursday 3 Nov. 2016
Final Presentation
Thursday 8 Dec. 2016
Final Report
Sunday 11 Dec. 2016, 23:59