Assistant Professor, Computer Science
Affiliate Faculty in the Goergen Institute for Data Science
3409 Wegmans Hall
Department of Computer Science,
University of Rochester
sree [at] cs rochester edu
585 276 2391
Nullius in verba
I am an experimental computer systems researcher interested in the performance of computer programs. To that end, I work in compilers, computer architecture, and the implementation of programming languages.
If you're a student wanting to work with me, please read this note for prospective students.
My research aims to make it easier to write high-performance programs on increasingly complex machines.
I work on heterogeneous accelerator-based systems consisting of CPUs and GPUs. My most recent work has revolved around optimizing compilers for high-performance irregular/graph algorithms on GPUs. I am also developing performance models for graph algorithms on GPUs. If you are developing hand-written irregular/graph algorithm implementations for GPUs, please consider dropping me a line to get access to our compiler.
For a complete list, please check my publication archive.
Tal Ben-Nun, Michael Sutton, Sreepathi Pai, and Keshav Pingali, Groute: Asynchronous Multi-GPU Programming Model with Applications to Large-Scale Graph Processing, ACM Trans. Par. Comp.(to appear in 2020)
Hongyuan Liu, Sreepathi Pai, and Adwait Jog, Why GPUs are Slow at Executing NFAs and How to Make them Faster, ASPLOS 2020, Lausanne, Switzerland (to appear)
Shanthanu Rai, Rohit M P, and Sreepathi Pai, A Hybrid Graph Coloring Algorithm for GPUs, HiPC Student Research Symposium 2019, Hyderabad, India [arXiv]
Tyler Sorensen, Sreepathi Pai, and Alastair Donaldson, One Size Doesn't Fit All: Quantifying Performance Portability of Graph Applications on GPUs, IISWC 2019, Orlando, FL, USA (Best Paper)
Dong Chen, Fangzhou Liu, Mingyang Jiao, Chen Ding, and Sreepathi Pai, Statistical Caching for Near Memory Management, MEMSYS 2019, Washington, DC, USA
Tyler Sorensen, Sreepathi Pai, Alastair Donaldson, Performance Evaluation of OpenCL Standard Support (and Beyond!), IWOCL 2019, Boston, MA, USA, May 2019 (Best Paper)
Hongyuan Liu, Mohamed Ibrahim, Onur Kayiran, Sreepathi Pai, Adwait Jog, Architectural Support for Efficient Large-Scale Automata Processing, MICRO 2018, Fukuoka, Japan, Oct 2018 [Lightning Talk Video]
Dong Chen, Fangzhou Liu, Chen Ding, Sreepathi Pai, Locality Analysis through Static Parallel Sampling, PLDI 2018, Philadelphia, PA, USA, June 2018 [acm dl version via SIGPLAN OpenTOC]
Ahmet Celik, Sreepathi Pai, Sarfraz Khurshid, Milos Gligoric, Bounded Exhaustive Test-Input Generation on GPUs, OOPSLA 2017, Vancouver, CA, October 2017 [acm dl open access]
Chad Voegele, Yi-Shan Lu, Sreepathi Pai, Keshav Pingali, Parallel Triangle Counting and k-Truss Identification using Graph-centric Methods , IEEE/Amazon/DARPA GraphChallenge 2017@IEEE HPEC, Waltham, MA, September 2017 (GraphChallenge Champion) [pdf]
Sreepathi Pai, M. Amber Hassaan, Keshav Pingali, An Operational Performance Model of Breadth-First Search, AGP@ISCA 2017, Toronto, Canada, June 2017 [pdf]
Tal Ben-Nun, Michael Sutton, Sreepathi Pai, Keshav Pingali, Groute: An Asynchronous Multi-GPU Programming Model for Irregular Computations, PPoPP 2017, Austin, TX, USA, February 2017 (Best Paper Nominee) [pdf] [source]
Xulong Tang, Ashutosh Pattnaik, Huaipan Jiang, Onur Kayiran, Adwait Jog, Sreepathi Pai, Mohamed Ibrahim, Mahmut T. Kandemir, Chita Das, Controlled Kernel Launch for Dynamic Parallelism in GPUs, HPCA 2017, Austin, TX, USA, February 2017
Sreepathi Pai, Keshav Pingali, A Compiler for Throughput Optimization of Graph Algorithms on GPUs, OOPSLA '16, Amsterdam, Netherlands, November 2016 [preprint]
Sreepathi Pai, Keshav Pingali, Modeling Performance of Graph Programs on GPUs in a Compiler, ModSim 2016, Seattle, WA, USA, August 2016 [abstract pdf] [slides]
Rashid Kaleem, Anand Venkat, Sreepathi Pai, Mary Hall, Keshav Pingali, Synchronization Trade-offs in GPU implementations of Graph Algorithms, IPDPS '16, Chicago, IL, USA, May 25, 2016 [pdf]
I'm not teaching in Fall 2020.
Microbenchmarking Unified Memory in CUDA 6.0, looks at CUDA Unified Memory performance on the Kepler K20Xm.
"How the Fermi Thread Block Scheduler Works (Illustrated)", if you've ever wondered.