Modeling computations as iterative graph algorithms has gained wide acceptance across recent analytics techniques due to its effectiveness in interacting with complex data relationships. While many parallel graph algorithms have been developed to perform useful analyses, the large sizes of real-world graphs necessitate developing efficient custom solutions that can fully exploit the available compute and memory capacity to process these large graphs.
In this talk, I will first introduce my work that exploits the inherent asynchrony available in various graph algorithms to accelerate large-scale graph processing while simultaneously providing correctness and fault tolerance guarantees. Subsequently, I will give a flavor of the challenges involved and the techniques developed across different graph processing problems by diving deeper into my recent contributions in context of out-of-core graph processing. I will present how dynamic disk partitions can be used to capture the dynamic nature of graph computations, and how out-of-order processing can be leveraged while maintaining synchronous processing guarantees. The talk will conclude with a brief discussion on my recent works on streaming graph processing.Discipline/Coordinating Entity: Computer Science and Engineering