TALK: Julian Shun on Wed, Oct 9 at 10am in Wozniak Lounge/ 430 Soda

10/28/13 10:00 am - 11:00 am

Wed, Oct 9 at 10am in Wozniak Lounge/ 430 Soda

Speaker: Julian Shun, Carnegie Mellon University

Title: Ligra: A Lightweight Graph Processing Framework for Shared Memory

Abstract: There has been significant recent interest in parallel frameworks for processing graphs due to their applicability in studying social networks, the Web graph, networks in biology, and
unstructured meshes in scientific simulation.  Due to the desire to process large graphs, these systems have emphasized the ability to run on distributed memory machines.  Today, however, a single
multicore server can support more than a terabyte of memory, which can fit graphs with tens or even hundreds of billions of edges. Furthermore, for graph algorithms, shared-memory multicores
are generally significantly more efficient on a per core, per dollar, and per joule basis than distributed memory systems, and shared-memory algorithms tend to be simpler than their distributed
counterparts.

In this talk, we present a lightweight graph processing framework that is specific for shared-memory parallel/multicore machines, which makes graph traversal algorithms easy to write.  The framework has two very simple routines, one for mapping over edges and one for mapping over vertices.  Our routines can be applied to any subset of the vertices, which makes the framework useful for many graph traversal algorithms that operate on subsets of the vertices. Based on recent ideas used in a very fast algorithm for breadth-first search (BFS), our routines automatically adapt to the density of vertex sets.  We implement several algorithms in this
framework, including BFS, graph radii estimation, graph connectivity, betweenness centrality, PageRank and single-source shortest paths.  Our algorithms expressed using this framework are very simple and concise, and perform almost as well as highly optimized code. Furthermore, they get good speedups on a 40-core machine and are significantly more efficient than previously reported results using graph frameworks on machines with many more cores.

Bio: Julian is currently a PhD student at Carnegie Mellon University and obtained his undergraduate degree from UC Berkeley. He is interested in developing large-scale parallel algorithms for shared memory and designing methods for writing deterministic parallel programs.

Leave a Reply