Associate Professor, Computer Science
Field Member, Electrical and Computer Engineering
University of Washington
Ph.D., Computer Science and Engineering
2009–2015
Advisors: Luis Ceze
and Dan Grossman
Dissertation: Hardware and Software for Approximate Computing
Harvey Mudd College
Bachelor of Science with High Distinction, Computer Science
2005–2009
Advisor: Geoff Kuenning
“Modular Hardware Design with Timeline Types.” To appear in PLDI 2023.
“Stepwise Debugging for Hardware Accelerators.” In ASPLOS 2023.
“Verifying Dynamic Trait Objects in Rust.” In ICSE SEIP 2022.
“Compiler-Driven Simulation of Reconfigurable Hardware Accelerators.” In HPCA 2022.
“Software-Defined Vector Processing on Manycore Fabrics.” In MICRO 2021.
“Reticle: A Virtual Machine for Programming Modern FPGAs.” In PLDI 2021.
“Vectorization for Digital Signal Processors via Equality Saturation.” In ASPLOS 2021.
“A Compiler Infrastructure for Accelerator Generators.” In ASPLOS 2021.
“Geometry Types for Graphics Programming.” In OOPSLA 2020.
“A Synthesis-Aided Compiler for DSP Architectures (WiP Paper).” In LCTES 2020.
“Predictable Accelerator Design with Time-Sensitive Affine Types.” In PLDI 2020.
“EVA²: Exploiting Temporal Redundancy in Live Computer Vision.” In ISCA 2018.
“Programming Language Support for Natural Language Interaction.” In SysML 2018.
“Static Stages for Heterogeneous Programming.” In OOPSLA 2017. Artifact evaluated. Distinguished Artifact Award.
“Reconfiguring the Imaging Pipeline for Computer Vision.” In ICCV 2017.
“Let’s Fix OpenGL.” In SNAPL 2017.
“Probability Type Inference for Flexible Approximate Programming.” In OOPSLA 2015.
“Hardware–Software Co-Design: Not Just a Cliché.” In SNAPL 2015.
“SNNAP: Approximate Computing on Programmable SoCs via Neural Acceleration.” In HPCA 2015.
“Monitoring and Debugging the Quality of Results in Approximate Programs.” In ASPLOS 2015.
“Expressing and Verifying Probabilistic Assertions.” In PLDI 2014. Artifact evaluated.
“Approximate Storage in Solid-State Memories.” In MICRO 2013. Expanded version appears in ACM TOCS.
“Neural Acceleration for General-Purpose Approximate Programs.” In MICRO 2012. Versions appear in MICRO Top Picks and CACM Research Highlights.
“Automatic Discovery of Performance and Energy Pitfalls in HTML and CSS.” In IISWC 2012.
“Architecture Support for Disciplined Approximate Programming.” In ASPLOS 2012.
“EnerJ: Approximate Data Types for Safe and General Low-Power Computation.” In PLDI 2011.
“Composable Specifications for Structured Shared-Memory Communication.” In OOPSLA 2010.
“A Toolkit for Designing Hardware DSLs.” In WOSET 2021 (co-located with ICCAD).
“Online Verification of Commutativity.” In TAPAS 2020 (co-located with SPLASH).
“Optimizing JPEG Quantization for Classification Networks.” In ReCoML 2020 (co-located with MLSys).
“LambdaLab: An Interactive λ-Calculus Reducer for Learning.” In SPLASH-E 2018.
“Debugging Probabilistic Programs.” In MAPL 2017 (co-located with PLDI).
“Rethinking the Camera Pipeline for Computer Vision.” In WAX 2017 (co-located with ASPLOS).
“The Case for Compulsory Approximation.” In WAX 2016 (co-located with ASPLOS).
“Approximating to the Last Bit.” In WAX 2016 (co-located with ASPLOS).
“REACT: A Framework for Rapid Exploration of Approximate Computing Techniques.” In WAX 2015 (co-located with PLDI).
“Two Approximate-Programmability Birds, One Statistical-Inference Stone.” In APPROX 2014 (co-located with PLDI).
“Tuning Approximate Computations with Constraint-Based Type Inference.” In WACAS 2014 (co-located with APLOS).
“Approximate Semantics for Wirelessly Networked Applications.” In WACAS 2014 (co-located with ASPLOS).
“Profiling and Autotuning for Energy-Aware Approximate Programming.” In WACAS 2014 (co-located with ASPLOS).
“Design Tradeoffs of Approximate Analog Neural Accelerators.” In NIAC 2013.
“Addressing Dark Silicon Challenges with Disciplined Approximate Computing.” In DaSi 2012 (co-located with ISCA).
“Towards Neural Acceleration for General-Purpose Approximate Computing.” In WEED 2012 (co-located with ISCA).
“Greedy Coherence.” In HPPC 2011 (co-located with MICRO).
“Very Large Scale Disintegration.” In the Wild and Crazy Ideas (WACI) session at ASPLOS 2023.
“Performance Left on the Table: An Evaluation of Compiler Auto-Vectorization for RISC-V.” In IEEE Micro.
“Exploiting Errors for Efficiency: A Survey from Circuits to Applications.” In ACM Computing Surveys 53(3), 2020.
“A Taxonomy of General Purpose Approximate Computing Techniques.” In IEEE Embedded Systems Letters.
“Approximate Computing: Unlocking Efficiency with Hardware–Software Co-Design.” In GetMobile, July 2016.
Hardware and Software for Approximate Computing.
“Approximate Computing: Making Mobile Systems More Efficient.” In IEEE Pervasive Computing, April/June 2015.
“ACCEPT: A Programmer-Guided Compiler Framework for Practical Approximate Computing.” In Technical report UW-CSE-15-01 1..
“Neural Acceleration for General-Purpose Approximate Programs.” In CACM Research Highlights, January 2015. Highlights from the MICRO 2012 paper.
“Approximate Storage in Solid-State Memories.” In ACM Transactions on Computer Systems, September 2014. Expanded version of the MICRO 2013 paper.
“EnerJ, the Language of Good-Enough Computing.” In IEEE Spectrum, October 2013.
“Dense Approximate Storage in Phase-Change Memory.” In the Ideas & Perspectives session at ASPLOS 2011.
US20200410352A1: “System and methods for processing spatial data.” Mark Buckler and Adrian Sampson. Filed September 15, 2020.
US10735675B2: “Configurable image processing system and methods for operating a configurable image processing system for multiple applications.” Mark Buckler, Adrian Sampson, and Suren Jayasuriya. Filed April 13, 2018.
US9021313B2: “Priority-assignment interface to enhance approximate computing.” Karin Strauss, Adrian Sampson, and Luis Ceze. Filed November 28, 2012.
US20160063390A1: “Probabilistic Assertions and Verifying Them.” Todd Mytkowicz, Kathryn S. McKinley, and Adrian Sampson. Filed September 3, 2014.
US9412466B2: “Approximate multi-level cell memory operations.” Karin Strauss, Doug Burger, Luis Ceze, and Adrian Sampson. Filed September 25, 2014.
US8510237B2: “Machine learning method to identify independent tasks for parallel layout in web browsers.” Călin Caşcaval, Adrian Sampson, and Bin Wang. Filed July 13, 2011.
October 1, 2022: “I Survived Tenure, and So Can You!” JOBS workshop at MICRO 2022.
December 9, 2021: “The Next 700 Accelerator Design Languages.” Berkeley Programming Systems Seminar.
October 21, 2021: “Languages & Compilers for Hardware Acceleration.” Sydney System Research Talk Series.
September 27, 2021: “The Next 700 Accelerator Design Languages.” Cornell Computer Science Colloquium.
September 2, 2021: “Toward a Predictable System Stack for Accelerator Design.” Stanford Agile Hardware Center.
July 27, 2021: “Calyx: Your DSL-to-Hardware Compiler Construction Kit.” Schloss Dagstuhl, Seminar 21302: Approximate Systems.
April 13, 2021: “Demystifying Grad School” panel moderator. Young Architect Workshop (YArch) 2021. Video.
December 1, 2020: “Toward a Predictable System Stack for Reconfigurable Computing.” University of California, Santa Cruz Hardware Systems Collective Seminar. Video.
November 18, 2020: “Graphics Programming Needs You.” University of Rochester, CSC 572/292. Slides.
October 26, 2020: “Toward a Predictable System Stack for Reconfigurable Computing.” HLD Reading Group, Intel.
October 2, 2020: “Languages and Compilers for Accelerator Design.” University of Massachusetts Amherst. Video.
June 17, 2020: “Ask Me Anything” with Margaret Martonosi. PLDI 2020. Video.
May 31, 2020: “Predictable Accelerator Design.” CHIPKIT Tutorial on Agile Research Test Chips at ISCA 2020. Video.
May 22, 2020: “Accelerator Design Languages.” University of Wisconsin–Madison, Computer Sciences Department. Video.
February 28, 2020: “Predictable Accelerator Design.” UCLA Center for Domain-Specific Computing.
February 3, 2020: “Reconfigurability Through a Language Lens.” Facebook Boston.
August 9, 2019: Panel: How to Apply to Graduate School. Cornell, Maryland, Max Planck Pre-Doctoral Research School 2019.
August 6, 2019: “Designing Programming Languages for Heterogeneous Hardware.” Cornell, Maryland, Max Planck Pre-Doctoral Research School 2019.
June 23, 2019: Panel: Charting Your Path. Programming Languages Mentoring Workshop at PLDI 2019.
June 23, 2019: “Designing Languages for Designing Hardware.” Programming Languages Mentoring Workshop at PLDI 2019. Slides. Video.
June 22, 2019: “FPGAs Have the Wrong Abstraction.” Open mic night at FCRC 2019. Slides. Notes.
April 5, 2019: “Designing Custom Hardware Accelerators with Types.” Colloquium, Department of Computer Science, Williams College.
February 14, 2019: “Designing Systems with Types.” Colloquium, School of Arts, Media + Engineering, Arizona State University. Video.
October 14, 2017: “Approximate Computing Is Dead; Long Live Approximate Computing.” Workshop on Negative Outcomes, Post-Mortems, and Experiences (NOPE), at MICRO 2017. Notes.
December 1, 2015: “Probabilistic Programming.” Schloss Dagstuhl, Seminar 15491: Approximate and Probabilistic Computing: Design, Coding, Verification. Notes.
Associate Professor
Cornell University — Department of Computer Science
2022–
Assistant Professor
Cornell University — Department of Computer Science
2016–2022
Visiting Researcher
Microsoft Research — Research in Software Engineering (RiSE)
2015–2016
Research Intern
Microsoft Research — Research in Software Engineering (RiSE)
2013
Research Intern
Microsoft Research — Extreme Computing Group (XCG)
2012
Research Intern
Qualcomm, Inc. — Bay Area R&D
2010
Graduate Researcher
University of Washington
2009–2015
Undergraduate Researcher
Harvey Mudd College — NSF REU Program
2007
Distinguished Artifact Award, ASPLOS 2023
Google Research Scholar Program award, 2022
IEEE TCCA Young Computer Architect Award, 2021
NSF CAREER award, 2019
Cornell College of Engineering Ralph S. Watts ’72 Excellence in Teaching Award, 2018
Distinguished Artifact Award, OOPSLA 2017
Google Faculty Research Award, 2016
UW CSE William Chan Memorial Dissertation Award, 2015
Best presentation, first UW Computer Science & Engineering Symposium (CSES 2015)
Paper from MICRO 2013 invited for fast-track inclusion in ACM TOCS
Paper from MICRO 2012 selected for CACM research highlights
Google Ph.D. Fellowship in Computer Architecture (2013–2015)
Qualcomm Innovation Fellowship (2013–2014)
Paper from MICRO 2012 selected for IEEE Micro’s Top Picks from the Computer Architecture Conferences, 2013
Best lightning session presentation, MICRO 2012
Facebook Ph.D. Fellowship (2012–2013)
University of Washington Hacherl Graduate Fellowship in Computer Science and Engineering (2009–2010)
Hertz Foundation Fellowship Finalist (2009)
Harvey Mudd College (2009):
Priya Srikumar, 2023–
Anshuman Mohan, 2022–
Oliver Daids, 2021–
Griffin Berlstein, 2021–
Zhijing Li, 2019–2021
Sachille Atapattu, 2018–2021
Neil Adit, 2018–
Alexa VanHattum, 2018–
Rachit Nigam, 2018–
Dietrich Geisler, 2018–
Edwin Peguero, 2018–2021
Drew Zagieboylo, 2017
Philip Bedoukian, 2017–
Mark Buckler,
2016–2019
Dissertation: Holistic Optimization of Embedded Computer Vision Systems.
Now at Amazon.
David Chen, 2022–
Yunhe Shao, 2021–2022
Michael Xiong, 2021–2022
Alaia Solko-Breslin, 2021–2022
Kenneth Li, 2021
Evan Adler, 2020
Henry Liu, 2019–2020
James Chen, 2019
Eric Mei, 2019
Alex Wong, 2019
Arthur Wang, 2018
Shiyu Wang, 2018
Evan Su, 2018
Daniel Sainati, 2018
Eric Lin, 2017
Mingyang Li, 2017
Taehoon Lee, 2017
Moshe Klebanov, 2017
Richie Henwood, 2017
John Rubio, 2022–
Jonathan Tran, 2020–
Ted Bauer, 2020
Susan Garry, 2022–
Nathaniel Navarro, 2022
Meredith Hu, 2022
Mateo Guynn, 2022–
Caleb Kim, 2022–
Evan Williams, 2022
Jan-Paul Vincent, 2022
Pai Li, 2022–
Crystal Hu, 2022
Mia Daniels, 2022–
Haoxuan Chen, 2021
Boao (Mark) Dong, 2021
Richard Wang, 2021
David Siher, 2021–2022
Jasper Liang, 2021–2022
YoungSeok (Alex) Na, 2021–2022
Andrii Iermolaiev, 2021
Alma Thaler, 2021
Andrei Shpilenok, 2021
Iain Pile, 2021
Karen Zhang, 2020–2021
Chris Gyurgyik, 2020–2021
YooNa Chang, 2020–2021
Akshat Singh, 2020
Paul Joo, 2020–2021
Yuyi He, 2020
Kofi Efah, 2020
Michelle Chao, 2020
Andrew Pareles, 2020
Evan Adler, 2020
Jacob Delgado-López,
2020
University of Puerto Rico
Maya Ifekauche,
2020
Auburn University
Patrick LaFontaine, 2020–2021
Yasmin Sarita, 2020
Katy Voor, 2019–2020
Palini Ramnarayan, 2019–2020
Kimberly Baum, 2019–2020
Edan Mobed, 2019
Yuwei (Vivi) Ye, 2019–2021
Ben Gillott, 2019–2020
Samuel Thomas, 2019–2021
Apurva Koti, 2019–2020
Kenneth Fang, 2019–2020
Horace He,
2018–2020
Honorable mention, 2020 CRA Outstanding Undergraduate Researcher Awards
Yinnon Sanders, 2018–2019
Aditi Kabra, 2018–2019
Jenna Choi, 2018–2019
Ted Bauer, 2018–2019
Euisun (Irene) Yoon,
2018–2019
Honorable mention, 2019 CRA Outstanding Undergraduate Researcher Awards
Joshua Diaz, 2017–2018
Tyler Etzel, 2017–2018
Alex Renda, 2017–2018
Yiteng Guo, 2017–2018
Harry Goldstein, 2017–2018
Omar Abdelaziz, 2016–2017
Chirag Bharadwaj, 2016–2017
I worked with these B.S. students while I was a graduate student at the University of Washington.
Joshua Yip, 2014
Luyi Liu, 2014
Chengfeng Shi, 2014
Brett Boston,
2013–2015
B.S. Honors Thesis
Runner-up, 2015 CRA Outstanding Undergraduate Researcher Awards
Winner, 2015 UW CSE Undergraduate Honors Thesis Award
Wenjie (Marissa) He, 2013–2015
Finn Parnell,
2011–2012
B.S. Honors Thesis
Danushen Gnanapragasam, 2010–2011
Cornell University:
Teaching Assistant, University of Washington:
Tutor, University of Washington, 2009–2014: CSE 303 (Software Development), 311/312 (Foundations of Computing), 322 (Formal Models), 331 (Software Engineering), 332 (Data Structures), 351 (The Hardware/Software Interface)
ASPLOS 2023: Poster Session Chair
NSF panel member (twice in 2022)
ISCA 2022: Social Media Chair
SIGPLAN Information Director and PL Perspectives co-editor, 2021–
ASPLOS 2022: WACI chair
SIGPLAN Long-Term Mentoring Committee (SIGPLAN-M) Operations Team, 2020–2021
Judge, JOBS workshop at MICRO 2020
NSF panel member, CCF division (2020)
ISCA 2021: Publicity & Social Media Chair
PLMW @ PLDI 2020: Co-organizer
ASPLOS 2020: WACI co-chair
August 2019: Facilitator, JUMP e-workshop on domain-specific languages
ISCA 2019: Social Media Chair
PLDI 2018: Publicity Chair
ACM SIGARCH Social Media Editor (2017–)
PLDI 2017: Publicity Co-Chair
ISCA 2017: Registration Chair
CGO 2017: Workshops/Tutorials Chair
NSF panel member, CCF division (2016)
Cornell University, Computing and Information Science:
Cornell University, Computer Science:
University of Washington, Computer Science and Engineering:
ASPLOS 2024: Program committee member
YArch 2023: Program committee member
ASPLOS 2023: Program committee member
YArch 2022: Program committee member
ICCD 2021: Special session reviewer
ASPLOS 2022: Program committee member
HPCA 2022: External review committee member
OOPSLA 2021: External review committee member
LATTE 2021: Organizer
YArch 2021: Program committee member
ISCA 2021: Program committee member
IEEE Micro Top Picks 2021: Selection committee member
ASPLOS 2021: Program committee member
MICRO 2020: External review committee member
YArch 2020: Program committee member
OOPSLA 2020: Review committee member
ISCA 2020: External review committee member
PLDI 2020: Program committee member
ASPLOS 2020: Program committee member
ISCA 2019: Program committee member
YArch 2019: Program committee member
ASPLOS 2019: Program committee member
MICRO 2018: Program committee member
WAX 2018: Organizer
SELSE 2018: Program committee member
ISCA 2018: Program committee member
OOPSLA 2018: Program committee member
HPCA 2018: External review committee member
ASPLOS 2018: External review committee member
WAX 2017: Organizer, program committee member
MICRO 2017: External review committee member
Onward! 2017: Program committee member
ISCA 2017: Program committee member
ASPLOS 2017: Program committee member
CGO 2017: Program committee member
MASS 2016: Program committee member
TinyToCS Vol. 4: Program committee member
WAX 2016: Organizer, program committee member
SELSE 2016: Review committee member
ISCA 2016: External review committee member
PLDI 2016: Program committee member
WAX 2015: Organizer, program committee member
WACAS 2014: Organizer, program committee member
PLDI 2014: Artifact evaluation committee member
OOPSLA 2014: Artifact evaluation committee member
Hongzheng Chen. Advisor: Zhiru Zhang.
Noam Zilberstein. Advisor: Alexandra Silva.
Jiajie Li. Advisor: Zhiru Zhang.
Drew Zagieboylo. Advisor: Andrew Myers. Defended 2023.
Nicolai Oswald, University of Edinburgh. Advisor: Vijay Nagarajan. Defended 2023.
Derin Ozturk. Advisor: Elizabeth Farrell Helbling.
Zachary Susag. Advisor: Justin Hsu.
Karuna Grewal. Advisor: Justin Hsu.
Victor Giannakouris. Advisor: Immanuel Trummer.
Shubham Chaudhary. Advisor: Robbert Van Renesse and Lorenzo Alvisi.
Jiajie Li. Advisor: Zhiru Zhang.
Yueying (Lisa) Li. Advisor: Christina Delimitrou and Ed Suh.
Andrew Butt. Advisor: Zhiru Zhang.
Abhishek Vijaya Kumar. Advisor: Rachit Agarwal.
Ayaka Yorihiro. Advisor: Owolabi Legunsen.
Qizhe Cai. Advisor: Rachit Agarwal.
Nicholas Cebry. Advisor: Chris Batten.
Preslav Ivanov. Advisor: Chris Batten.
Wen-Ding Li. Advisor: Dexter Kozen.
Mark Moeller. Advisor: Nate Foster and Alexandra Silva.
Michael Roberts. Advisor: Dexter Kozen. Defended 2022.
Luis Vega, University of Washington. Advisor: Luis Ceze and Dan Grossman. Defended 2022.
Socrates Wong. Advisor: José Martínez.
Ariel Kellison. Advisor: David Bindel.
Shaojie Xiang. Advisor: Zhiru Zhang.
Yanghui Ou. Advisor: Chris Batten.
A.F. Cooper. Advisor: Chris De Sa.
Kevin Negy. Advisor: Emin Gün Sirer.
Peitian Pan. Advisor: Chris Batten.
Yi Jiang. Advisor: José Martínez.
Yuwei Hu. Advisor: Zhiru Zhang.
Lin Cheng. Advisor: Chris Batten. Defended 2022.
Tuan Ta. Advisor: Chris Batten.
Yuan Zhou. Advisor: Zhiru Zhang. Defended 2021.
Maofan (Ted) Yin. Advisor: Emin Gün Sirer. Defended 2021.
Wil Thomason. Advisor: Hadas Kress-Gazit. Defended 2021.
Yi-Hsiang (Sean) Lai. Advisor: Zhiru Zhang. Defended 2021.
Gai Liu. Advisor: Zhiru Zhang. Defended 2018.
Melanie Kambadur, Columbia University. Advisor: Martha Kim. Defended 2016.