• Publications
  • Influence
GraphChi: Large-Scale Graph Computation on Just a PC
This work presents GraphChi, a disk-based system for computing efficiently on graphs with billions of edges, and builds on the basis of Parallel Sliding Windows to propose a new data structure Partitioned Adjacency Lists, which is used to design an online graph database graphChi-DB. Expand
Ligra: a lightweight graph processing framework for shared memory
This paper presents a lightweight graph processing framework that is specific for shared-memory parallel/multicore machines, which makes graph traversal algorithms easy to write and significantly more efficient than previously reported results using graph frameworks on machines with many more cores. Expand
Vector Models for Data-Parallel Computing
A model of parallelism that extends and formalizes the Data-Parallel model on which the Connection Machine and other supercomputers are based is described, and it is argued that data-parallel models are not only practical and can be applied to a surprisingly wide variety of problems, they are also well suited for very-high-level languages and lead to a concise and clear description of algorithms and their complexity. Expand
Prefix sums and their applications
This paper defines the all-prefix-sums operation, shows how to implement it on a P-RAM and illustrates many applications of the operation. Expand
Programming parallel algorithms
This research on parallel algorithms has not only improved the general understanding of par-allelism but in several cases has led to improvements in sequential algorithms. Expand
Implementation of a Portable Nested Data-Parallel Language
Initial benchmark results of NESL show that NESL′s performance is competitive with that of machine-specific codes for regular dense data, and is often superior for irregular data. Expand
NESL: A Nested Data-Parallel Language
NESL is intended to be used as a portable interface for programming a variety of parallel and vector supercomputers, and as a basis for teaching parallel algorithms, and several examples of algorithms coded in the language are described. Expand
Scans as Primitive Parallel Operations
A study of the effects of adding two scan primitives as unit-time primitives to PRAM (parallel random access machine) models is presented. It is shown that the primitives improve the asymptoticExpand
Brief announcement: the problem based benchmark suite
This announcement describes the problem based benchmark suite (PBBS). PBBS is a set of benchmarks designed for comparing parallel algorithmic approaches, parallel programming language styles, andExpand