I am an Assistant Professor in the Department of Computer Science at the University of British Columbia. Previously, I was a Postdoctoral Researcher at the MIT Computer Science and Artificial Intelligence Laboratory (CSAIL) working with Julian Shun. My research interests are in developing theoretically and practically efficient algorithms for multicore machines.
I recieved my Ph.D. from Carnegie Mellon University, where I was advised by Guy Blelloch. Before that, I did my undergraduate studies at the University of Toronto, where I was mentored by Faith Ellen and Toniann Pitassi.
I am currently looking for self-motivated MSc/PhD students interested in working on parallel and concurrent algorithms, with a mix of theory and practice.
Teaching
- CPSC 320 2025W2: Intermediate Algorithm Design and Analysis
PhD Thesis
- General Techniques for Efficient Concurrent Data Structures [pdf]
Yuanhao Wei
Carnegie Mellon University, 2023
Principles of Distributed Computing Doctoral Dissertation Award
Publications
- Aggregating Funnels for Faster Fetch&Add and Queues
Younghun Roh, Yuanhao Wei, Eric Ruppert, Panagiota Fatourou, Siddhartha Jayanti, Julian Shun [arXiv]
Symposium on Principles and Practice of Parallel Programming (to appear in PPoPP’25) - VERLIB: Concurrent Versioned Pointers
Guy E. Blelloch, Yuanhao Wei. [paper]
Symposium on Principles and Practice of Parallel Programming (PPoPP’24) - Practically and Theoretically Efficient Garbage Collection for Multiversioning
Yuanhao Wei, Guy E. Blelloch, Panagiota Fatourou, Eric Ruppert. [paper]
Symposium on Principles and Practice of Parallel Programming (PPoPP’23) - Turning Manual Concurrent Memory Reclamation into Automatic Reference Counting
Daniel Anderson, Guy E. Blelloch and Yuanhao Wei. [paper]
International Conference on Programming Language Design and Implementation (PLDI’22) - Lock-free Locks: Revisited
Naama Ben-David, Guy E. Blelloch, Yuanhao Wei. [paper] [video]
Symposium on Principles and Practice of Parallel Programming (PPoPP’22)
Best Paper Award - FliT: A Library for Simple and Efficient Persistent Algorithms
Yuanhao Wei, Naama Ben-David, Michal Friedman, Guy E. Blelloch and Erez Petrank. [paper] [video]
Symposium on Principles and Practice of Parallel Programming (PPoPP’22) - Space and Time Bounded Multiversion Garbage Collection
Naama Ben-David, Guy E. Blelloch, Panagiota Fatourou, Eric Ruppert, Yihan Sun, Yuanhao Wei. [paper] [video]
34th International Symposium on Distributed Computing (DISC’21), pp 12:(1-20). - Concurrent Deferred Reference Counting for Non-garbage-collected Languages
Daniel Anderson, Guy E. Blelloch and Yuanhao Wei. [paper] [video]
42st ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI’21), pp 526-541. - Constant-Time Snapshots with Applications to Concurrent Data Structures
Yuanhao Wei, Naama Ben-David, Guy E. Blelloch, Panagiota Fatourou, Eric Ruppert, Yihan Sun. [paper] [video]
26th Symposium on Principles and Practice of Parallel Programming (PPoPP’21), pp 31-46. - LL/SC and Atomic Copy: Constant Time, Space Efficient Implementations Using Only Pointer-Width CAS
Guy E. Blelloch and Yuanhao Wei. [Paper] [Full Version]
34th International Symposium on Distributed Computing (DISC’20), pp 5:(1-17). - NVTraverse: in NVRAM data structures, the destination is more important than the journey
Michal Friedman, Naama Ben-David, Yuanhao Wei, Guy E. Blelloch and Erez Petrank. [Paper] [Full Version]
41st ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI’20), pp 377–392. - Step-optimal Implementations of Large Single-Writer Registers
Tian Ze Chen and Yuanhao Wei. [Paper]
Theoretical Computer Science Volumes 826–827 (TCS’20), pp 40-50. - Short Proofs Are Hard to Find
Ian Mertz, Toniann Pitassi and Yuanhao Wei. [Paper]
46th International Colloquium on Automata, Languages, and Programming (ICALP’19), 84:(1-16). - Multiversion Concurrency with Bounded Delay and Precise Garbage Collection
Naama Ben-David, Guy E. Blelloch, Yihan Sun and Yuanhao Wei. [Paper] [Full Version]
31st ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’19), pp 241-252. - Delay-Free Concurrency on Faulty Persistent Memory
Naama Ben-David, Guy E. Blelloch, Michal Friedman and Yuanhao Wei [Paper] [Full Version]
31st ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’19), pp 253-264.
Short Papers and Tutorials
- Brief Announcement: Concurrent Fixed-Size Allocation and Free in Constant Time
*Guy E. Blelloch and Yuanhao Wei. [Paper] [Full Version]
34th International Symposium on Distributed Computing (DISC’20), pp 51:(1-3). - Tutorial: Abstractions and Algorithms for Efficiently Programming NVRAMs
Naama Ben-David, Guy Blelloch, Laxman Dhulipala, Michal Friedman, Yuanhao Wei, Yan Gu and Charles McGuffey
25th Symposium on Principles and Practice of Parallel Programming (PPoPP’20). - Making Concurrent Algorithms Detectable: poster
*Naama Ben-David, Guy E. Blelloch, Michal Friedman and Yuanhao Wei [paper]
24th Symposium on Principles and Practice of Parallel Programming (PPoPP’19), pp 419–420.