Guy Blelloch
#72,764
Most Influential Person Now
American computer scientist
Guy Blelloch's AcademicInfluence.com Rankings
Guy Blellochcomputer-science Degrees
Computer Science
#2637
World Rank
#2757
Historical Rank
#1131
USA Rank
Parallel Computing
#30
World Rank
#30
Historical Rank
#22
USA Rank
Database
#2908
World Rank
#3033
Historical Rank
#576
USA Rank
Download Badge
Computer Science
Why Is Guy Blelloch Influential?
(Suggest an Edit or Addition)According to Wikipedia, Guy Edward Blelloch is a professor of computer science at Carnegie Mellon University. He is known for his work in parallel programming and parallel algorithms. He teaches the 15-853: Algorithms in the Real World course, the 15-492: Parallel Algorithms course, and the 15-210: Parallel and Sequential Data Structure and Algorithms course at the Carnegie Mellon University. In 2011 he was inducted as a Fellow of the Association for Computing Machinery.
Guy Blelloch's Published Works
Published Works
- Introduction to Data Compression * (1525)
- GraphChi: Large-Scale Graph Computation on Just a PC (2012) (1047)
- Ligra: a lightweight graph processing framework for shared memory (2013) (756)
- Vector Models for Data-Parallel Computing (1990) (637)
- Scans as Primitive Parallel Operations (1989) (572)
- Prefix sums and their applications (1990) (504)
- Programming parallel algorithms (1996) (450)
- Implementation of a portable nested data-parallel language (1993) (416)
- A comparison of sorting algorithms for the connection machine CM-2 (1991) (392)
- NESL: A Nested Data-Parallel Language (1992) (309)
- The Data Locality of Work Stealing (2002) (223)
- Adaptive functional programming (2002) (199)
- Brief announcement: the problem based benchmark suite (2012) (191)
- A parallel, real-time garbage collector (2001) (184)
- NESL: A Nested Data-Parallel Language (Version 2.6) (1993) (181)
- Scheduling threads for constructive cache sharing on CMPs (2007) (179)
- Compiling collection-oriented languages onto massively parallel computers (1988) (169)
- A provable time and space efficient implementation of NESL (1996) (152)
- Compact representations of separable graphs (2003) (147)
- Internally deterministic parallel algorithms can be fast (2012) (141)
- Provably efficient scheduling for languages with fine-grained parallelism (1995) (134)
- Index compression through document reordering (2002) (132)
- Provably good multicore cache performance for divide-and-conquer algorithms (2008) (131)
- Radix sort for vector multiprocessors (1991) (130)
- An experimental analysis of self-adjusting computation (2006) (115)
- Scan primitives for vector computers (1990) (112)
- The data locality of work stealing (2000) (112)
- Greedy sequential maximal independent set and matching are parallel on average (2012) (112)
- Selective memoization (2003) (110)
- Low depth cache-oblivious algorithms (2010) (109)
- Collection-oriented languages (1991) (108)
- Smaller and Faster: Parallel Processing of Compressed Graphs with Ligra+ (2015) (107)
- Effectively sharing a cache among threads (2004) (103)
- Design and Implementation of a Practical Parallel Delaunay Algorithm (1999) (101)
- Julienne: A Framework for Parallel Graph Algorithms using Work-efficient Bucketing (2017) (95)
- Theoretically Efficient Parallel Graph Algorithms Can Be Fast and Scalable (2018) (93)
- Algorithmic Techniques for Computer Vision on a Fine-Grained Parallel Machine (1989) (92)
- AD-A 270 601 Segmented Operations for Sparse Matrix Computation on Vector Multiprocessors (1993) (92)
- Parallelism in sequential functional languages (1995) (86)
- Network Learning on the Connection Machine (1987) (82)
- Dynamizing static algorithms, with applications to dynamic trees and history independence (2004) (81)
- Fast set operations using treaps (1998) (79)
- Scheduling irregular parallel computations on hierarchical caches (2011) (78)
- Provably efficient scheduling for languages with fine-grained parallelism (1999) (74)
- Low-latency graph streaming using compressed purely-functional trees (2019) (74)
- Compact representations of simplicial meshes in two and three dimensions (2005) (73)
- Vcode: a data-parallel intermediate language (1990) (72)
- Efficient BVH construction via approximate agglomerative clustering (2013) (69)
- A practical comparison of N-body algorithms (1994) (68)
- Space-efficient scheduling of nested parallelism (1999) (61)
- An Experimental Analysis of Parallel Sorting Algorithms (1998) (61)
- Linear-work greedy parallel approximate set cover and variants (2011) (60)
- Pipelining with Futures (1997) (59)
- Space-efficient scheduling of parallelism with synchronization variables (1997) (58)
- Just Join for Parallel Ordered Sets (2016) (56)
- An Experimental Analysis of a Compact Graph Representation (2004) (56)
- A simple and practical linear-work parallel algorithm for connectivity (2014) (55)
- Beyond nested parallelism: tight bounds on work-stealing overheads for parallel futures (2009) (53)
- On bounding time and space for multiprocessor garbage collection (1999) (53)
- Accounting for memory bank contention and delay in high-bandwidth multiprocessors (1995) (53)
- Space profiling for parallel functional programs (2008) (51)
- Sorting with Asymmetric Read and Write Costs (2015) (51)
- Compact representations of ordered sets (2004) (49)
- Delay-Free Concurrency on Faulty Persistent Memory (2018) (47)
- Parallel Lightweight Wavelet Tree, Suffix Array and FM-Index Construction (2016) (47)
- PAM: parallel augmented maps (2016) (46)
- Reducing contention through priority updates (2013) (46)
- Parallel and I/O efficient set covering algorithms (2012) (46)
- Parallel Algorithms for Asymmetric Read-Write Costs (2016) (44)
- Pthreads for Dynamic and Irregular Parallelism (1998) (43)
- Nearly-Linear Work Parallel SDD Solvers, Low-Diameter Decomposition, and Low-Stretch Subgraphs (2011) (43)
- An implementation of network learning on the Connection Machine (1988) (42)
- Optimal Parallel Algorithms in the Binary-Forking Model (2019) (42)
- Phase-concurrent hash tables for determinism (2014) (41)
- NVTraverse: in NVRAM data structures, the destination is more important than the journey (2020) (41)
- CIS: A Massively Concurrent Rule-Based System (1986) (41)
- Developing a practical projection-based parallel Delaunay algorithm (1996) (41)
- Engineering a compact parallel delaunay algorithm in 3D (2006) (41)
- A Top-Down Parallel Semisort (2015) (39)
- Scan primitives and parallel vector models (1989) (39)
- Strongly History-Independent Hashing with Applications (2007) (38)
- Parallelism in Randomized Incremental Algorithms (2016) (37)
- Size and access inference for data-parallel programs (1991) (37)
- An Experimental Analysis of Change Propagation in Dynamic Trees (2005) (37)
- Sage (2020) (36)
- Parallel Write-Efficient Algorithms and Data Structures for Computational Geometry (2018) (34)
- Sequential Random Permutation, List Contraction and Tree Contraction are Highly Parallel (2015) (34)
- Space-efficient dynamic orthogonal point location, segment intersection, and range reporting (2008) (33)
- Traceable data types for self-adjusting computation (2010) (33)
- Parallel Batch-Dynamic Graph Connectivity (2019) (33)
- A provably time-efficient parallel implementation of full speculation (1999) (33)
- Robust Kinetic Convex Hulls in 3D (2008) (32)
- Efficient Algorithms with Asymmetric Read and Write Costs (2015) (32)
- ParlayLib - A Toolkit for Parallel Algorithms on Shared-Memory Multicore Machines (2020) (32)
- Parallel Solutions to Geometric Problems in the Scan Model of Computation (1994) (30)
- A Library for Self-Adjusting Computation (2006) (30)
- Parallel approximation algorithms for facility-location problems (2010) (29)
- A PARALLEL DYNAMIC-MESH LAGRANGIAN METHOD FOR SIMULATION OF FLOWS WITH DYNAMIC INTERFACES (2000) (28)
- Fixed Parameter Tractability of Binary Near-Perfect Phylogenetic Tree Reconstruction (2006) (28)
- Implicit Decomposition for Write-Efficient Connectivity Algorithms (2017) (28)
- A simple parallel cartesian tree algorithm and its application to parallel suffix tree construction (2014) (27)
- Hierarchical memory management for parallel programs (2016) (27)
- Parallel Shortest Paths Using Radius Stepping (2016) (27)
- Linear Equations Modulo 2 and the L1 Diameter of Convex Bodies (2007) (27)
- Space-efficient finger search on degree-balanced search trees (2003) (26)
- Mixed Integer Linear Programming for Maximum-Parsimony Phylogeny Inference (2008) (26)
- Batch-Parallel Euler Tour Trees (2018) (26)
- Succinct Representations of Separable Graphs (2010) (26)
- Solving linear recurrences with loop raking (1992) (26)
- Algorithms for Efficient Near-Perfect Phylogenetic Tree Reconstruction in Theory and Practice (2007) (25)
- Space-efficient implementation of nested parallelism (1997) (25)
- Efficient algorithms for path problems in weighted graphs (2008) (24)
- Compact dictionaries for variable-length keys and data with applications (2008) (24)
- The Parallel Persistent Memory Model (2018) (23)
- Automatic Generation of Staged Geometric Predicates (2001) (23)
- A New Combinatorial Approach for Sparse Graph Problems (2008) (23)
- Kinetic Algorithms Via Self-adjusting Computation (2006) (22)
- Parallel algorithms (1996) (22)
- Randomized Incremental Convex Hull is Highly Parallel (2020) (22)
- On Supporting Efficient Snapshot Isolation for Hybrid Workloads with Multi-Versioned Indexes (2019) (21)
- The Graph Based Benchmark Suite (GBBS) (2020) (21)
- Parallel thinking (2009) (21)
- Cache and I/O efficent functional algorithms (2013) (20)
- Efficiently Finding the Most Parsimonious Phylogenetic Tree Via Linear Programming (2007) (20)
- Sage: Parallel Semi-Asymmetric Graph Algorithms for NVRAMs (2019) (20)
- Nearly-Linear Work Parallel SDD Solvers, Low-Diameter Decomposition, and Low-Stretch Subgraphs (2011) (19)
- Parallel Range, Segment and Rectangle Queries with Augmented Maps (2018) (17)
- Efficient Construction of Probabilistic Tree Embeddings (2016) (17)
- Experimental Analysis of Space-Bounded Schedulers (2016) (16)
- Compact data structures with fast queries (2006) (16)
- Algorithmic Building Blocks for Asymmetric Memories (2018) (16)
- Optimal imperfect phylogeny reconstruction and haplotyping (IPPH). (2006) (16)
- Scalable real-time parallel garbage collection for symmetric multiprocessors (2001) (16)
- Constant-time snapshots with applications to concurrent data structures (2021) (16)
- Four vector-matrix primitives (1989) (16)
- Scalable Room Synchronizations (2003) (15)
- Scheduling deterministric parallel programs (2009) (15)
- A Separator-Based Framework for Automated Partitioning and Mapping of Parallel Algorithms for Numeri (1992) (15)
- Multiversion Concurrency with Bounded Delay and Precise Garbage Collection (2018) (15)
- Uniquely represented data structures with applications to privacy (2008) (15)
- Parallel probabilistic tree embeddings, k-median, and buy-at-bulk network design (2012) (14)
- Using page residency to balance tradeoffs in tracing garbage collection (2005) (14)
- Hierarchical Diagonal Blocking and Precision Reduction Applied to Combinatorial Multigrid (2010) (14)
- Direct maximum parsimony phylogeny reconstruction from genotype data (2007) (14)
- Combinable memory-block transactions (2008) (13)
- Simple Reconstruction of Binary Near-Perfect Phylogenetic Trees (2006) (13)
- Room synchronizations (2001) (12)
- Semi-Asymmetric Parallel Graph Algorithms for NVRAMs (2019) (12)
- AFL-1: A Programming Language for Massively Concurrent Computers (1986) (12)
- LL/SC and Atomic Copy: Constant Time, Space Efficient Implementations using only pointer-width CAS (2019) (11)
- Programmable self-adjusting computation (2010) (11)
- The hidden cost of low bandwidth communication (1994) (11)
- Non-oblivious Retroactive Data Structures (2007) (10)
- CVL: A C Vector Library Manual: Version 2 (1993) (10)
- Parallel Batch-Dynamic Trees via Change Propagation (2020) (10)
- Analyzing Contention and Backoff in Asynchronous Shared Memory (2017) (10)
- Uniquely Represented Data Structures for Computational Geometry (2008) (10)
- Dictionaries using variable-length keys and data, with applications (2005) (9)
- Beyond Synchronous: New Techniques for External-Memory Graph Connectivity and Minimum Spanning Forest (2014) (9)
- A New Efficient Construction on Probabilistic Tree Embeddings (2016) (9)
- Concurrent deferred reference counting with constant-time overhead (2021) (9)
- Efficient Implementation of a Synchronous Parallel Push-Relabel Algorithm (2015) (9)
- A Simple Parallel Cartesian Tree Algorithm and its Application to Suffix Tree Construction (2011) (9)
- Parallel solutions to geometric problems on the scan model of computation. Memorandum report (1988) (9)
- Optimally Scheduling Jobs with Multiple Tasks (2017) (9)
- VCODE Reference Manual (Version 1.1) (1990) (8)
- Specification of Parallel Algorithms (1994) (8)
- Work-Efficient Batch-Incremental Minimum Spanning Trees with Applications to the Sliding-Window Model (2020) (8)
- Space-efficient scheduling for parallel, multithreaded computations (1999) (8)
- Parallel depth first vs. work stealing schedulers on CMP architectures (2006) (8)
- NAnoscale Molecular Dynamics (NAMD) (2011) (8)
- A Parallel Complexity Model for Functional Languages (1994) (8)
- Cache efficient functional algorithms (2015) (8)
- Generalized Buneman Pruning for Inferring the Most Parsimonious Multi-state Phylogeny (2009) (8)
- Non-monotonic Self-Adjusting Computation (2012) (7)
- The Processing-in-Memory Model (2021) (7)
- Concurrent Reference Counting and Resource Management in Wait-free Constant Time (2020) (6)
- Efficient Single Writer Concurrency (2018) (6)
- Persistent triangulations Journal of Functional Programming (2001) (6)
- Coupling Memory and Computation for Locality Management (2015) (6)
- A Consensus Tree Approach for Reconstructing Human Evolutionary History and Detecting Population Substructure (2010) (6)
- A provably time-efficient parallel implementation of full speculation (1996) (6)
- Theoretically Efficient Parallel Graph Algorithms Can Be Fast and Scalable (2021) (6)
- Parallel Range and Segment Queries with Augmented Maps (2018) (6)
- Space and Time Bounded Multiversion Garbage Collection (2021) (6)
- PaC-trees: supporting parallel and compressed purely-functional collections (2022) (6)
- Efficient parallel approximation algorithms (2011) (6)
- Parallel Ordered Sets Using Join (2016) (5)
- Implementing parallel and concurrent tree structures (2019) (5)
- FliT: a library for simple and efficient persistent algorithms (2021) (5)
- A Framework for Space and Time Efficient Scheduling of Parallelism (1996) (5)
- Future Directions for Parallel and Distributed Computing: SPX 2019 Workshop Report (2019) (5)
- Adaptive Memoization (2003) (5)
- Introduction to Parallel Algorithms 15-853 : Algorithms in the Real World (DRAFT) (2018) (5)
- Brief announcement: low depth cache-oblivious sorting (2009) (5)
- NESL User's Manual (for NESL Version 3.1). (1995) (5)
- Ray Specialized Contraction on Bounding Volume Hierarchies (2015) (5)
- Proceedings of the 2007 workshop on Declarative aspects of multicore programming (2007) (5)
- Class Notes: Programming Parallel Algorithms CS 15-840B (Fall 1992) (1993) (4)
- Program-centric cost models for locality (2013) (4)
- Concurrent Fixed-Size Allocation and Free in Constant Time (2020) (4)
- Experimental analysis of space-bounded schedulers (2014) (3)
- The problem-based benchmark suite (PBBS), V2 (2022) (3)
- Kinetic 3D convex hulls via self-adjusting computation (2007) (3)
- Making Concurrent Algorithms Detectable (2018) (3)
- Some Sequential Algorithms are Almost Always Parallel (2017) (3)
- The Read-Only Semi-External Model (2021) (3)
- Parallel and Sequential Data Structures and Algorithms — Lecture 13 Lecture 13 — Shortest Weighted Paths 1 Weighted Graph Representation (2012) (3)
- Parallel functional arrays (2017) (3)
- Algorithms in the Real World (1998) (3)
- Efficient Algorithms under Asymmetric Read and Write Costs (2015) (3)
- Pthreads for Dynamic Parallelism (1998) (3)
- Functional parallel algorithms (2010) (3)
- A Performance Comparison of Interval Arithmetic and Error Analysis for Geometric Predicates (2000) (2)
- An Optimization-Based Sampling Scheme for Phylogenetic Trees (2011) (2)
- Proceedings of the eighth annual ACM symposium on Parallel algorithms and architectures (1996) (2)
- Improving Performance of Collection-Oriented Operations through Parallel Fusion (2011) (2)
- Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures (2015) (2)
- Scans as Primitive Parallel Operations Acknowledgement of Financial Support (1987) (2)
- Scans as Primitive Parallel Operations Acknowledgement of Financial Support (1987) (2)
- DAMP 2009: Workshop on Declarative Aspects of Multicore Programming (2009) (2)
- Connected components algorithms (1995) (2)
- Parallel Minimum Cuts in O(m log2n) Work and Low Depth (2021) (2)
- Batch-dynamic Algorithms via Parallel Change Propagation and Applications to Dynamic Trees (2020) (2)
- Speeding up Maximum Flow Computations on Shared Memory Platforms (2016) (2)
- Joinable Parallel Balanced Binary Trees (2022) (2)
- Optimal (Randomized) Parallel Algorithms in the Binary-Forking Model (2020) (2)
- FPT Algorithms for Binary Near-Perfect Phylogenetic Trees 1 (2005) (2)
- Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures (2012) (2)
- Fast and Fair Lock-Free Locks (2021) (2)
- Parallel Nearest Neighbors in Low Dimensions with Batch Updates (2021) (2)
- Parallelism in Randomized Incremental Algorithms (2020) (2)
- Introduction to Parallel Algorithms (DRAFT) (2019) (1)
- MASSIVELY CONCURRENT RULE-BASED SYSTEM (1)
- Priority Update as a Parallel Primitive (2013) (1)
- Self-Adjusting Programming (2005) (1)
- Proceedings of the Twelfth Workshop on Algorithm Engineering and Experiments, ALENEX 2010, Austin, Texas, USA, January 16, 2010 (2010) (1)
- Multiscale Scheduling: Integrating Competitive and Cooperative Scheduling in Theory and in Practice (2007) (1)
- Lock-free locks revisited (2022) (1)
- Unfair Scheduling Patterns in NUMA Architectures (2019) (1)
- Reducing contention through priority updates (2013) (1)
- Parallel block-delayed sequences (2022) (1)
- Strongly History Independent Hashing with Deletion (2006) (1)
- Proceedinbgs of the 24th ACM symposium on Parallelism in algorithms and architectures (2012) (1)
- Provably Efficient Scheduling of Dynamically Allocating Programs on Parallel Cache Hierarchies (2017) (1)
- Technical Perspective: Functional compilers (2017) (1)
- Improved Parallel Cache-Oblivious Algorithms for Dynamic Programming [Extend Abstract] (2020) (1)
- Some Sequential Algorithms are Almost Always Parallel (2017) (1)
- Algorithms for analyzing intraspecific sequence variation (2007) (1)
- Proceedings of the twenty-fifth annual ACM symposium on Parallelism in algorithms and architectures (2013) (1)
- A Semantic Framework for Scheduling Parallel Programs (2007) (1)
- Tools for Large Graph Mining by Deepayan Chakrabarti (2005) (1)
- Proceedings of the 25th ACM symposium on Parallelism in algorithms and architectures (2013) (1)
- Heterogeneous decomposition of degree-balanced search trees and its applications (2009) (1)
- Proceedings of the 26th ACM symposium on Parallelism in algorithms and architectures (2014) (1)
- Is Asymptotic Cost Analysis Useful in Developing Practical Parallel Algorithms (2021) (0)
- Simple Reconstruction of Binary Near-Perfect (2006) (0)
- Session details: Keynote Address 2 (2015) (0)
- PIM-tree: A Skew-resistant Index for Processing-in-Memory (2022) (0)
- PIM-Tree (2022) (0)
- Turning manual concurrent memory reclamation into automatic reference counting (2022) (0)
- Class Notes : Programming Parallel Algorithms (2004) (0)
- Algorithmic λ-Calculus for the Design , Analysis , and Implementation of Parallel Algorithms (2016) (0)
- λ-Calculus: The Other Turing Machine (2015) (0)
- Proceedings of the POPL 2007 Workshop on Declarative Aspects of Multicore Programming, DAMP 2007, Nice, France, January 16, 2007 (2007) (0)
- 2010 Proceedings of the Twelfth Workshop on Algorithm Engineering and Experiments (ALENEX) (2010) (0)
- Scheduling and Space Use in Parallel Functional Programs (2007) (0)
- Parallel and Sequential Data Structures and Algorithms — Lecture 20 Lecture 20 — Search Trees I: Bsts — Split, Join, and Union (0)
- SPAA'21 Panel Paper: Architecture-Friendly Algorithms versus Algorithm-Friendly Architectures (2021) (0)
- Practically and Theoretically Efficient Garbage Collection for Multiversioning (2022) (0)
- Reading List on Parallel Programming Languages (1994) (0)
- Problem Based Benchmarks (2012) (0)
- NSF Science and Technology Center for Scalable Algorithms (0)
- Parallel Ordered Sets Using Join Guy Blelloch (2018) (0)
- Artifact for "Concurrent Deferred Reference Counting with Constant-Time Overhead" (2021) (0)
- The Log-Interleave Bound: Towards the Unification of Sorting and the BST Model (2021) (0)
- Topic 12: Theory and Algorithms for Parallel Computation - (Introduction) (2013) (0)
- A Parallel Complexity Model for FunctionalLanguagesGuy (1994) (0)
- Constant-Time Lazy Snapshots Supporting General Queries on Concurrent Data Structures (2020) (0)
- Making concurrent algorithms detectable: poster (2019) (0)
- Four vector-matrix primitives. Memorandum report (1989) (0)
- Parallel and Sequential Data Structures and Algorithms — Lecture 10 Lecture 10 — Bfs 1 Breadth First Search (0)
- Combining Memoization and Dynamic Dependence Graphs (2004) (0)
- Full Experiment Results for Paper : “ Ray Specialized Contraction on Bounding Volume Hierarchies ” (2015) (0)
- Coalescent-Based Method for Learning Parameters of Admixture Events from Large-Scale Genetic Variation Data (2012) (0)
- Models and Algorithms under Asymmetric Read and Write Costs (2016) (0)
- Coalescent-Based Method for Learning Parameters of Admixture Events from Large-Scale Genetic Variation Data (2013) (0)
- D C ] 1 0 A ug 2 02 1 Fast and Fair Lock-Free Locks (2021) (0)
- Introduction to special issue ALENEX'10 (2012) (0)
- Fast and Fair Randomized Wait-Free Locks (2021) (0)
- Efficient Scheduling for Parallel Memory Hierarchies ( Regular Submission ) (2010) (0)
- FliT (2022) (0)
- Traceable Data Structures (2006) (0)
- Parallel and Sequential Data Structures and Algorithms — Lecture 16 Lecture 16 — Graph Contraction and Connectivity 1 Graph Contraction (2012) (0)
- Parallel Minimum Cuts in O(m log2 n) Work and Low Depth (2022) (0)
- Lecture 2 — Algorithmic Cost Models Parallel and Sequential Data Structures and Algorithms (2012) (0)
- Reducing Multicore Bandwidth Requirements for Combinatorial Multigrid (2010) (0)
- Space-E(cid:14)cient Finger Search on Degree-Balanced Search Trees (cid:3) (0)
- Space and Time Bounded Multiversion Garbage Collection: FORTH ICS TR 482 (2022) (0)
- Efficient Parallel Self-Adjusting Computation (2021) (0)
- Algorithms : From Theory to Application (0)
- Algorithms for Multiplying Matrices of Arbitrary Shapes Using Shared Memory Primitives on Boolean Cubes (2021) (0)
- Author Index (2002) (0)
This paper list is powered by the following services:
Other Resources About Guy Blelloch
What Schools Are Affiliated With Guy Blelloch?
Guy Blelloch is affiliated with the following schools: