We are a group of people at UCR working on parallel algorithms, data structures, systems and applications. We design parallel algorithms that have strong theoretical guarantee and high performance. We are actively recruiting self-motivated Ph.D. students. You can find more details here. If you are UCR students interested in parallelism and/or algorithms, here are the courses we teach.
Bi-directional Log-Structured Merge Tree.
Xin Zhang, Qizhong Mao, Ahmed Eldawy, Vagelis Hristidis, and Yihan Sun.
International Conference on Scientific and Statistical Database Management (SSDBM), 2022
LSM tree
SPAA
Parallel Cover Trees and Applications.
Yan Gu, Zachary Napier, Yihan Sun, and Letong Wang.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2022
The Processing-in-Memory Model.
Hongbo Kang, Phillip B. Gibbons, Guy E. Blelloch, Laxman Dhulipala, Yan Gu, and Charles McGuffey.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2021
Parallel write-efficient algorithms on interval tree, priority search tree, range tree
PPoPP
PAM: Parallel Augmented Maps.
Yihan Sun, Daniel Ferizovic, and Guy E. Blelloch.
ACM Symposium on Principles and Practice of Parallel Programming (PPoPP), 2018
Just Join for Parallel Ordered Sets.
Guy E. Blelloch, Daniel Ferizovic, and Yihan Sun.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2016
We work on graph algorithms, both sequentially and in parallel. Our work includes (but not limited to) SSSP algorithms, connectivity, bi-connectivity, strong connectivity algorithms, graph streaming, LE-lists, graph/tree embedding, geometric graphs, biology graph matching, social graph mining, etc.
Enable parallel graph processing for geometric data
APOCS
The Read-Only Semi-External Model.
Guy E. Blelloch, Laxman Dhulipala, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM-SIAM Algorithmic Principles of Computer Systems (APOCS), 2021
Parallel Algorithms with Asymmetric Read and Write Costs.
Naama Ben-David, Guy E. Blelloch, Jeremy T. Fineman, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2016
We work on algorithms for computational geometry, most of them parallel. Our work includes (but is not limited to) geometry data structures (e.g., range trees, segment trees, kd-trees, priority search trees), convex hull algorithms, Delaunay Triangulation algorithms, computer graphics, nearest neighbor search, low-dimensional range-based search, etc.
Parallel Cover Trees and Applications.
Yan Gu, Zachary Napier, Yihan Sun, and Letong Wang.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2022
Parallel write-efficient algorithms on Delaunay triangulation, k-d trees, interval tree, priority search tree, range tree
PPoPP
PAM: Parallel Augmented Maps.
Yihan Sun, Daniel Ferizovic, and Guy E. Blelloch.
ACM Symposium on Principles and Practice of Parallel Programming (PPoPP), 2018
We work on algorithms for database and data science, both sequentially and in parallel. Our work includes (but is not limited to) efficient indexes for in-memory databases, social network mining, clustering, nearest neighbor search, HTAP database systems, etc.
Bi-directional Log-Structured Merge Tree.
Xin Zhang, Qizhong Mao, Ahmed Eldawy, Vagelis Hristidis, and Yihan Sun.
International Conference on Scientific and Statistical Database Management (SSDBM), 2022
LSM tree
SPAA
Parallel Cover Trees and Applications.
Yan Gu, Zachary Napier, Yihan Sun, and Letong Wang.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2022
K-nearest neighbor, agglomerative clustering using parallel cover trees
We work on architecture-friendly algorithms. Our work includes (but is not limited to) write-efficient algorithms for NVRAMs, fault-tolerant algorithms for NVRAMs, space-efficient algorithms for in-memory processing, algorithms for near-data-processing (i.e., processing-in-memory, PIM), etc.
SPAA
The Processing-in-Memory Model.
Hongbo Kang, Phillip B. Gibbons, Guy E. Blelloch, Laxman Dhulipala, Yan Gu, and Charles McGuffey.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2021
algorithms for the Processing-in-Memory (PIM) architecture
The Read-Only Semi-External Model.
Guy E. Blelloch, Laxman Dhulipala, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM-SIAM Algorithmic Principles of Computer Systems (APOCS), 2021
Experiments of write-efficient algorithms for NVRAMs
SPAA
The Parallel Persistent Memory Model.
Guy E. Blelloch, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2018
Parallel Algorithms with Asymmetric Read and Write Costs.
Naama Ben-David, Guy E. Blelloch, Jeremy T. Fineman, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2016
Sorting with Asymmetric Read and Write Costs.
Guy E. Blelloch, Jeremy T. Fineman, Phillip B. Gibbons, Yan Gu, Charles McGuffey, and Julian Shun.
ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 2015
We work on efficiently parallelizing sequential iterative algorithms. The goal is to design simple and intuitive algorithms based on their sequential versions, and achieve work-efficiency and high parallelism. Our work includes (but is not limited to) parallel permutaion, list/tree contraction, LIS, Huffman tree, SSSP, MIS, parallel randomized incremental algorithms for convex hull, Delaunay triangulation, 2D LP, closest pair, SCC, LE-list, etc.